> Tech > Dépendance de cache SQL

Dépendance de cache SQL

Tech - Par iTPro - Publié le 18 mai 2011
email


La majeure partie du temps, les données conservées au sein de la grille figurent également dans une base de données principale. Néanmoins, certaines applications tierces peuvent directement les mettre à jour dans la base de données principale sans procéder à l’actualisation au sein de la grille de

données. Si votre application actualise la base de données, vous devez probablement la concevoir afin qu’elle actualise aussi la grille de données, afin que les deux aient des copies à jour.

Les applications tierces peuvent aussi nécessiter une optimisation pour fonctionner avec une grille de données. C’est la raison pour laquelle Microsoft a introduit le concept de dépendance de cache SQL, lequel a été étendu par certains fournisseurs de grilles de données d’entreprise basées sur .NET. La dépendance de cache SQL permet aux applications, lorsqu’elles ajoutent des données à la grille, de spécifier que l’élément ajouté est dépendant d’une ligne spécifique dans une table particulière de la base de données. Ainsi, vous indiquez au serveur de base de données d’envoyer une notification d’événement .NET à la grille en question chaque fois qu’une ligne spécifique est actualisée et vous faites en sorte que la grille assure un suivi des situations en cas de et au moment de changements des données dans la base de données. Au minimum, il s’agit de supprimer l’ancienne copie de la grille, de sorte que la prochaine fois que l’application en a besoin, elle ne trouve pas la copie obsolète et accède à la base de données.

Il en va de même pour l’expiration avec durée absolue. Si vous employez cette approche pour l’expiration des données, cela indique que vous craignez une modification dans la base de données. A ce stade, vous pouvez effectuer une lecture pour recharger les mêmes données de la base de données au lieu de passer par la simple expiration. La dépendance de cache SQL vous permet de synchroniser votre grille de données d’entreprise vis-à-vis de votre base de données SQL Server. Les événements .NET déclenchés par la base de données sont possibles car SQL Server 2005 et 2008 intègrent désormais à celle-ci le CLR (Common Language Runtime) .NET, ce qui signifie essentiellement qu’il existe un environnement .NET au sein de la base de données. En fait, Oracle 9i R2 ou les versions ultérieures sur la plate-forme Windows intègrent également le CLR .NET et peuvent déclencher les mêmes événements. Vous avez alors la possibilité d’effectuer les synchronisations sur la base de données à partir d’événements .NET.

Si votre base de données ne figure pas parmi les deux citées ci-avant, la grille de données d’entreprise doit malgré tout permettre d’atteindre le même objectif, mais au moyen d’un mécanisme d’interrogation. La grille doit disposer d’un intervalle d’interrogation configurable lui permettant d’interroger des données spécifiques dans la base de données. Dans notre cas, vous souhaitez savoir si les données ont été modifiées ou non. Si elles l’ont été, la procédure reste la même: l’élément est supprimé de la grille ou une nouvelle copie est chargée à partir de la base de données. L’interrogation doit aussi pouvoir effectuer un mappage au niveau ligne et non au niveau table.

Ces fonctionnalités, ainsi que la fonction de dépendance de cache d’ASP.NET, sont importantes pour maintenir les données à jour. Via la dépendance de cache, il est possible de gérer les relations entre différents éléments de données. La majorité des données de la base de données sont de type relationnel, de sorte que différents éléments sont liés les uns aux autres. Le changement de l’un d’eux en affecte un autre. Par exemple, si vous êtes sur le point de supprimer une commande dans une base de données, cela supprimera automatiquement les autres postes de commande associés. Cela tient au fait que les postes de commande dans la base de données sont sans signification s’ils ne résident pas dans une commande. De même, une commande doit être rattachée à un client et n’a aucun sens sans cette relation. Par conséquent, si vous avez ces différents éléments de données au sein de la grille de données d’entreprise, il est judicieux de les relier entre eux. Si un objet de commande spécifique est supprimé ou mis à jour, les postes de commande correspondants sont automatiquement supprimés. Pour l’essentiel, si un élément au sein de la grille de données dépend d’un autre élément et si ce dernier est mis à jour ou supprimé, l’élément dépendant sera aussi supprimé. L’application n’a ainsi pas à effectuer le suivi des différents éléments de données interconnectés et à les supprimer de la grille afin de maintenir les données à jour.

Téléchargez gratuitement cette ressource

IBMi et Cloud : Table ronde Digitale

IBMi et Cloud : Table ronde Digitale

Comment faire évoluer son patrimoine IBMi en le rendant Cloud compatible ? Comment capitaliser sur des bases saines pour un avenir serein ? Faites le point et partagez l'expertise Hardis Group et IBM aux côtés de Florence Devambez, DSI d'Albingia.

Tech - Par iTPro - Publié le 18 mai 2011