A system and method for constraint management in a database middleware
system that responds to queries for data from requesting user applications
by accessing diverse data sources. A constraint manager receives
notifications of updates from sources that support notification, and the
constraint manager monitors other sources that support monitoring, to
undertake constraint management. Repairs of inconsistencies are made when
possible, and when repairs are not possible, the inconsistencies are
nulled out if the inconsistencies are totally useless to the requesting
user application. In contrast, if the requesting application has some use
for otherwise inconsistent, unrepairable data, the data is sent to the
application along with an alert of the inconsistencies. Also, for those
sources that do not support either notification or monitoring, the
constraint manager executes just-in-time checking, i.e., when a query is
received, the constraint manager checks data that is to be accessed
pursuant to the query, and if inconsistencies are found, the
inconsistencies are virtually repaired, i.e., data received from the
source is repaired at the constraint manager. The query is then executed
against the repaired data.
Un système et une méthode pour la gestion de contrainte dans un système de logiciel personnalisé de base de données qui répond aux questions pour des données de demander des applications d'utilisateur par des points d'émission de données divers d'accès. Un directeur de contrainte reçoit des avis des mises à jour des sources qui soutiennent l'avis, et le directeur de contrainte surveille d'autres sources qui soutiennent la surveillance, pour entreprendre la gestion de contrainte. Des contradictions sont dépannés si possible, et quand les réparations ne sont pas possibles, les contradictions sont annulées dehors si les contradictions sont totalement inutiles à l'application de demande d'utilisateur. En revanche, si l'application de demande a une certaine utilisation pour des données autrement contradictoires et unrepairable, les données sont envoyées à l'application avec une alerte des contradictions. En outre, pour ces sources qui ne soutiennent pas l'avis ou la surveillance, le directeur de contrainte exécute la vérification "juste à temps", c.-à-d., quand une question est reçue, le directeur de contrainte vérifie les données qui doivent être consultées conformément à la question, et si des contradictions sont trouvées, les contradictions sont pratiquement réparées, c.-à-d., des données reçues de la source sont réparées au directeur de contrainte. La question est alors exécutée contre les données réparées.