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

Les 10 tendances clés de l’Expérience Client (CX) pour 2025
Dans le contexte actuel, l'expérience client est un levier clé de réussite. Pour rester compétitives, les entreprises doivent adopter des stratégies CX audacieuses, en s'appuyant sur le cloud, le digital et l'IA. Alors quelles stratégies mettre en place pour garder une longueur d’avance ?
Les articles les plus consultés
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Cybersécurité Active Directory et les attaques de nouvelle génération
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Et si les clients n’avaient plus le choix ?
- Chiffrements symétrique vs asymétrique
Les plus consultés sur iTPro.fr
- En route vers l’inconnu : comment préparer les équipes à l’ère de l’IA
- L’Europe, un leader mondial de l’IA
- L’Intelligence Artificielle, le nouveau copilote du CRM : une révolution incontournable
- Optimiser la gestion de la relation client dans le secteur des sciences de la vie
- 2025, un « âge de raison » pour l’écosystème de la technologie ?
