Quand on crée des vues partitionnées distribuées, il faut
s'assurer que les tables et les vues correspondantes répondent à certains
critères. La plupart des instructions que l'on utilise pour modifier une vue
partitionnée distribuée doivent également répondre à certaines exigences.
Les instructions Delete n'ont aucune restriction :
Modifier des vues partitionnées distribuées
on peut supprimer n’importe
laquelle voire toutes les lignes d’une vue. Mais les instructions d’ajout ou
de mise à jour doivent répondre aux critères suivants pour être utilisables
dans les vues partitionnées distribuées :
- Une instruction d’ajout à une vue doit fournir une valeur à la colonne
de partitionnement. - Si on utilise une version bêta de SQL Server, une instruction de mise à
jour sur une vue peut échouer si une tentative de modification de la clé
primaire est faite. On peut utiliser une instruction d’effacement suivie d’une
instruction d’ajout à la place d’une instruction de mise à jour. Notez
que Microsoft a annoncé que la version finale de SQL Server permettra des
mises à jour de la clé primaire.
Dans notre exemple, nous avons exécuté les modifications
suivantes à partir de la connexion sur Shire\Shiloh (noeud 1), mais on peut
faire de même à partir d’une connexion sur n’importe lequel des serveurs.
Assurez vous que le service MSDTC (Microsoft Distributed Transaction
Coordinator) est actif, car ces modifications vont entraîner une transaction
distribuée. On peut également activer la procédure XACT_ABORT. Normalement,
ceci détermine si la totalité d’une transaction est annulée en cas d’erreur
d’exécution, mais dans ce cas, cela est nécessaire à toute instruction de
modification de données dans le cadre d’une transaction, implicite ou
explicite, avec la plupart des fournisseurs OLE DB, SQL Server inclus. Assurez
vous que vous avez activé la représentation graphique du plan d’exécution
de l’analyseur de requête pour accéder à son détail, ou bien utilisez la
commande SET STATIC PROFILE ON si vous préférez analyser le plan d’exécution
en mode texte.
Nous pouvons maintenant peupler la vue Customers avec toutes
les lignes de la table Customers de la base de données Northwind, comme le
montre le listing 10. On exécute entre autres une instruction d’insertion sur
la vue. La figure 2 montre le plan d’exécution, qui illustre la manière de
laquelle SQL Server a traité l’insertion. Analysons les étapes importantes
du plan d’exécution :
- Etape 1 (Clustered Index Scan) : lecture des lignes de la table
locale Customers dans la base de données Northwind.
- Etape 2 (Computer Scalar) : pour chacune des lignes, définition d’une
nouvelle colonne appelée Ptn1034, qui contiendra une valeur indiquant à
quelle plage d’enregistrements elle appartient (0 pour la plage
AAAAA/FZZZZ., 1 pour la plage GAAAA/PZZZZ et 2 pour la plage QAAAA/ZZZZZ). - Etape 4 : stockage dans une table temporaire des lignes lues à
l’étape 1, y compris la colonne Ptn1034 traitée à l’étape 2. - Etapes 5 et 6 : lecture de la table temporaire et insertion
uniquement des lignes qui répondent au critère Ptn1034 = 0 dans la table
locale CustomerAF. - Etapes 7 et 9 : lecture de la table temporaire et insertion
uniquement des lignes qui répondent au critère Ptn1034 = 1 dans la table
locale Node2.testdb.dbo.CustomerGP. - Etapes 10 et 12 : lecture de la table temporaire et insertion
uniquement des lignes qui répondent au critère Ptn1034 = 2 dans la table
locale Node3.testdb.dbo.CustomerQZ.
On peut émettre des instructions de type insertion, mise à
jour ou suppression sur la vue. Essayez les modifications proposées dans le
listing 11 sur la vue connectée au noeud 1, et comparez le plan d’exécution
de l’instruction qui modifie une table distante. Vous remarquerez que la
routine d’optimisation sépare et redirige les modifications vers les noeuds
appropriés, tout en déterminant à quel moment effectuer une opération locale
ou distante.
Téléchargez cette ressource
Mac en entreprise : le levier d’un poste de travail moderne
Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Gouvernance, cybersécurité et agents IA : trois défis clés à relever pour réussir la transition en 2026
- Top 5 des évolutions technologiques impactant la sécurité 2026
- Tendances 2026 : l’IA devra prouver sa rentabilité
- L’identité numérique : clé de voûte de la résilience et de la performance en 2026
Articles les + lus
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
À la une de la chaîne Tech
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
