> Tech > Utilisation de la réplication forcée pour synchroniser des tables volumineuses

Utilisation de la réplication forcée pour synchroniser des tables volumineuses

Tech - Par iTPro - Publié le 24 juin 2010
email

Pour mettre en oeuvre la réplication forcée, deux nouvelles procédures stockées seulement suffisent : une pour les tables de petite taille (ou de recherche) et une autre pour les tables volumineuses. En fonction de la taille de votre table, vous pouvez décider d’exécuter la commande UDPATE soit sur des lignes

sélectionnées (au moyen d’une clause WHERE), soit sur toute la table (en laissant la clause WHERE de côté). Si votre table est volumineuse (plusieurs milliers de lignes), vous devez exécuter UPDATE sur un nombre limité d’enregistrements, afin d’éviter les transactions de longue durée et de réduire les risques de blocage d’autres utilisateurs. Si votre table comporte des colonnes qui autorisent le partitionnement des données, vous pouvez employer ces colonnes afin de répliquer (et de synchroniser) une partie seulement de la table. Dans la majorité des cas, il est possible d’employer une colonne datetime pour filtrer les données. Vous pouvez créer une procédure stockée, telle que la procédure sp_ForceRepl illustrée sur le listing 5, afin de filtrer les enregistrements à répliquer. Cette procédure stockée accepte quatre paramètres : TableName, BatchSize, StartDate et EndDate. Examinons le fonctionnement de cette procédure stockée. Premièrement, vous indiquez au code de sélectionner dans la table temporaire #Table1 toutes les clés primaires pour les enregistrements qui répondent aux critères que vous spécifiez dans la clause WHERE sur la colonne f3. Dans le listing 5, le code sélectionne les enregistrements avec des valeurs dans la colonne f3 entre @sStartDate et @sEndDate. Vous sélectionnez ensuite dans la table temporaire #Table1_Temp un certain nombre de clés primaires de #Table1, que vous spécifiez dans le paramètre @iBatchSize, et vous mettez à jour les enregistrements de Table1 qui ont les clés spécifiées. A la fin de la boucle du listing 5, le code supprime les clés primaires traitées de #Table1 et tronque la table #Table1_Temp en vue du prochain cycle. Il est possible de créer un processus de filtrage similaire pour n’importe quelle autre table volumineuse.

Téléchargez gratuitement cette ressource

Guide de facturation électronique, voie royale pour le DAF et la digitalisation de la fonction finance

Guide de facturation électronique, voie royale pour le DAF et la digitalisation de la fonction finance

Ce livre blanc expose les problématiques auxquelles sont confrontés les DAF modernes et souligne les bénéfices de la facturation électronique pour la trésorerie. Il dévoile également le processus de déploiement de ce projet de transformation digitale que la réglementation rendra bientôt obligatoire.

Tech - Par iTPro - Publié le 24 juin 2010