Synchronisation déconnectée

Cette rubrique s'applique uniquement à ArcGIS for Desktop Standard et ArcGIS for Desktop Advanced.

Pour synchroniser des réplicas dans un environnement déconnecté, vous devez échanger manuellement les messages. Cette opération consiste à exporter un message d'un réplica vers un fichier, puis à importer le message depuis ce fichier vers le réplica associé. Dans les systèmes déconnectés, les fichiers peuvent être transférés sur des supports, tels que des CD ou des DVD, et envoyés par la poste, via un transporteur privé, etc.

Un réplica peut être à tout moment expéditeur ou destinataire des données. Un expéditeur de données exporte des messages de mouvements de données vers des fichiers de deltas contenant des mouvements à appliquer au réplica associé. Un destinataire de données exporte des messages d'accusé de réception vers les fichiers d'accusé de réception pour confirmer les informations qu'il a reçues. Vous pouvez savoir si un réplica est expéditeur ou destinataire des données en consultant son état dans le gestionnaire de réplicas d'ArcMap. Pour en savoir plus sur le gestionnaire de réplicas, consultez la rubrique Présentation rapide de la gestion des réplicas.

Il est important que le destinataire des données exporte des messages d'accusé de réception aussi souvent que possible. Si aucun message d'accusé de réception n'est reçu, l'expéditeur des données renvoie les mouvements par défaut et conserve les informations requises pour les renvoyer jusqu'à ce que la réception de ces mouvements soit confirmée. De ce fait, la taille de la géodatabase de l'expéditeur des données peut augmenter et les messages de mouvements de données suivants peuvent également devenir volumineux.

Bien que déconseillée, la meilleure méthode consiste à ce que le destinataire des données envoie un message d'accusé de réception après avoir reçu chaque message de mouvement de données. Il est également important de noter qu'un message d'accusé de réception peut confirmer la réception de tous les messages de mouvement de données. Par exemple, si un réplica reçoit trois messages de mouvements de données et importe chacun d'entre eux, il peut envoyer un seul message d'accusé de réception pour confirmer la réception des trois messages.

Dans l'exemple suivant, le réplica parent envoie des mouvements au réplica enfant, puis reçoit un message d'accusé de réception de l'enfant. Ici, le parent est l'expéditeur des données et l'enfant le destinataire de ces données.

Le réplica parent est l'expéditeur des mouvements de données. Le réplica enfant est le destinataire des données et renvoie un accusé de réception des mouvements au parent.

Dans les réplicas bidirectionnels, l'expéditeur et le destinataire des données peuvent également changer de rôle. Le changement est effectué par l'expéditeur des données lorsqu'il envoie un dernier message de mouvement de données contenant les instructions requises. Lorsque le message a été importé par le destinataire des données, les rôles sont inversés et le système est prêt à envoyer des données dans l'autre direction.

Dans le diagramme suivant, le réplica parent envoie un message de mouvement de données contenant les instructions permettant d'inverser les rôles. Lorsque le réplica parent exporte le message, il devient le destinataire des données. Quand l'enfant reçoit le message, il devient l'expéditeur des données. Le réplica enfant envoie alors un message de mouvement de données au parent.

Les mouvements de données envoyés par le réplica parent contient des instructions permettant d'inverser les rôles, ce qui fait du réplica enfant l'expéditeur des données.

Comme indiqué précédemment, les réplicas bidirectionnels utilisent des messages de mouvements de données et d'accusé de réception et permettent d'inverser les rôles. Avec les réplicas monodirectionnels toutefois, vous ne pouvez pas inverser les rôles. Pour les réplicas monodirectionnels parent vers enfant, le parent est toujours l'expéditeur des données. Pour les réplicas monodirectionnels enfant vers parent, l'enfant est toujours l'expéditeur des données. Dans les deux cas, il est toujours important que le destinataire des données envoie des messages d'accusé de réception. Pour les réplicas d'extraction, l'enfant est toujours l'expéditeur des données et aucun message d'accusé de réception n'est nécessaire. Pour en savoir plus sur les types de réplicas, reportez-vous à la rubrique Types de réplication.

Jusqu'ici, cette rubrique a décrit un modèle élémentaire d'échange de messages dans lequel les messages sont échangés entre le réplica parent et le réplica enfant. Si vous conservez ce modèle, le système fonctionnera correctement et se corrigera lui-même si des messages sont perdus. Cependant, vous pouvez également être amené à utiliser les scénarios d'échange de messages spécifiques suivants.

Renvoi de messages sans accusé de réception

Le système permet aux réplicas de renvoyer des mouvements de données sans accusé de réception. Vous pouvez effectuer cette opération si, en tant qu'expéditeur des données, vous savez ou pensez qu'un message de mouvement de données précédent a été perdu et doit être renvoyé. Vous pouvez également attendre le prochain envoi de mouvements de données, car ceux-ci comprennent par défaut les nouveaux mouvements et les mouvements sans accusé de réception, le cas échéant.

Dans le diagramme suivant, vous devez renvoyer des mouvements de données sans accusé de réception. Ici, le parent envoie un message de mouvement de données et passe du rôle d'expéditeur à celui de destinataire. Cependant, le message se perd et le parent et l'enfant demeurent destinataires des données. Pour résoudre ce problème, le destinataire des données qui vient de changer de rôle dispose d'une option de réexportation des messages sans accusé de réception. Dans ce cas, elle permet au parent de renvoyer le message afin de passer du rôle de parent à celui d'enfant.

Si aucun accusé de réception n'a été envoyé suite aux mouvements, l'expéditeur de données peut renvoyer le message de mouvement de données.

Accusé de réception des mouvements après inversion des rôles

Lorsque les rôles ont été inversés dans un réplica bidirectionnel, l'option d'exportation d'un message d'accusé de réception est disponible pour que l'expéditeur des données puisse confirmer la réception du message de changement de rôle. Il est également possible d'envoyer un message de mouvement de données car la réception du message de changement de rôle est alors implicitement confirmée. Toutefois, si vous n'envisagez pas d'envoyer un message de mouvement de données dans un futur proche, vous devez envoyer un message d'accusé de réception.

Dans le diagramme suivant, le parent envoie un message de mouvement de données permettant d'inverser les rôles. Lorsque l'enfant reçoit le message, il devient un expéditeur de données mais son rôle venant juste d'être inversé, le système lui permet encore d'envoyer un message d'accusé de réception.

Accusé de réception des mouvements après inversion des rôles

Inversement des rôles sans envoi de mouvements de données

Il est possible d'envoyer un message de mouvement de données contenant les instructions permettant d'inverser les rôles sans mouvement de données. Vous pouvez effectuer cette opération si, en tant qu'expéditeur des données, vous devez recevoir des changements de la part du destinataire, mais que vous n'êtes pas prêt à envoyer des mouvements de données. Reportez-vous à la rubrique Exportation d'un message de mouvement de données pour plus d'informations sur l'envoi d'un message pour inverser les rôles sans envoyer de données.

Eviter le fichier de message d'accusé de réception

Lors de l'envoi de mouvements de données, tous les nouveaux mouvements de données et mouvements de données sans accusé de réception sont envoyés par défaut. Les nouveaux mouvements de données comprennent toutes les insertions, mises à jour et suppressions effectuées dans la version du réplica depuis que le dernier message de mouvement de données a été export. Les mouvements de données sans accusé de réception incluent les mouvements exportés précédemment pour lesquels vous n'avez pas reçu d'accusé de réception. Si vous avez envoyé plusieurs messages de mouvements de données pour lesquels vous n'avez pas reçu d'accusé de réception, la taille des fichiers des mouvements de données peut devenir importante.

La meilleure solution nécessite que le destinataire des données envoie un fichier de message d'accusé de réception. Cependant, cette méthode n'est pas toujours possible en fonction du système de communication. Par exemple, si les réplicas sont déconnectés et que l'envoi d'un fichier d'accusé de réception nécessite l'expédition d'un support pour échanger des fichiers, vous pouvez préférer l'envoi d'un message électronique à la personne chargé de la gestion du réplica de l'expéditeur de données, indiquant que vous avez reçu et importé les mouvements de données.

N'oubliez cependant pas que le fait d'éviter le fichier de message d'accusé de réception complique la gestion de la synchronisation.

Thèmes connexes

5/10/2014