Préparer les données à répliquer

Disponible avec une licence Standard ou Advanced.

Il est possible d’améliorer les performances et la disponibilité des données si ces dernières sont réparties sur plusieurs géodatabases. La répartition des données contribue à réduire la saturation du serveur et permet aux organisations d’équilibrer la charge qui pèse sur leurs géodatabases entre les utilisateurs qui effectuent des mises à jour et ceux qui ont besoin d’un accès pour des opérations de lecture.

Pour créer un réplica, vous avez dorénavant le choix entre deux outils de géotraitement :

La réplication de géodatabase est l’un des processus de distribution des données disponibles dans ArcGIS Pro. Reposant sur l’environnement de versionnement traditionnel, la réplication de géodatabase permet de répartir les données totalement ou partiellement, de façon à ce que les mouvements de données puissent être synchronisés entre deux géodatabases ou plusieurs. Lorsqu'un jeu de données est répliqué, une paire de réplicas est créée. Un réplica réside dans la géodatabase d'origine et un réplica associé est distribué sur une autre géodatabase. Toute modification apportée à ces réplicas dans leurs géodatabases respectives peut être synchronisée afin que les données d'un réplica correspondent à celle du réplica associé.

Avant de passer à l’implémentation, plusieurs aspects sont à prendre en compte pour préparer vos données à répliquer.

Conditions requises pour la réplication de géodatabase

Les jeux de données à répliquer doivent répondre aux conditions requises suivantes :

  • L’utilisateur de la base de données doit disposer de l’accès en écriture aux données.
  • Tous les jeux de données doivent provenir de la même géodatabase d'entreprise.
  • Toutes les données doivent être inscrites selon un versionnement traditionnel. Elles ne peuvent pas être versionnées avec l’option d’enregistrement des mises à jour dans la base.
Remarque :

Les données de branche versionnée et les données inscrites selon un versionnement traditionnel qui utilisent l’option d’enregistrement des mises à jour dans la base ne sont pas prises en charge avec la réplication de géodatabase dans ArcGIS Pro.

Des conditions supplémentaires s’appliquent pour la réplication en fonction du type de réplication :

  • Réplication d’extraction/insertion
    • Vous avez la possibilité d’extraire des données non versionnées ou des données ayant été inscrites avec le versionnement traditionnel.
  • Réplicas monodirectionnels et bidirectionnels
    • Chaque jeu de données doit comporter une colonne GlobalID. Cette colonne permet de conserver l’unicité des lignes à travers plusieurs géodatabases.
  • Réplication monodirectionnelle
    • Réplication monodirectionnelle, parent vers enfant : le réplica enfant peut être une géodatabase d’entreprise ou une géodatabase fichier.
    • Réplication monodirectionnelle, enfant vers parent : les réplicas enfant et parent doivent être hébergés dans une géodatabase d’entreprise.

Tout jeu de données ne remplissant pas ces conditions ne sera pas inclus dans le réplica ; pour plus de détails, reportez-vous à l’outil de géotraitement Créer un réplica. Si ces conditions ne sont pas remplies par la totalité des jeux de données, la création du réplica échoue.

La liste des données à répliquer est étendue automatiquement pour inclure les jeux de données dépendants. Par exemple, toutes les classes d’entités d’une topologie ou d’un jeu de classes d’entités sont incluses si une des classes d’entités de cette topologie ou de ce jeu de classes d’entités est sélectionnée pour la réplication. Reportez-vous aux rubriques Réplication avec des jeux de données de géodatabase avancés et Réplication et compatibilité des géodatabases pour plus d’informations.

La section suivante répertorie les types de données auxquels des règles et des comportements supplémentaires sont appliqués lors de la création de réplicas. Consultez les rubriques correspondant à vos données:

Déterminer les jeux de données à répliquer

L’un des aspects les plus importants de la création d’un réplica consiste à déterminer quelles sont les données à répliquer. Lors de la création d’un réplica, vous pouvez choisir de répliquer toutes les données de vos jeux de données ou uniquement un sous-ensemble de données. Évaluez la quantité de données à répliquer selon vos besoins. Tenez compte de la durée de vie du réplica et assurez-vous qu'elle couvre tous vos besoins.

Les métadonnées des données que vous décidez de répliquer sont copiées au cours du processus de création de réplica. Cependant, les modifications apportées aux métadonnées ne sont pas appliquées au cours de la synchronisation des réplicas.

Répliquer toutes les données

L’outil de géotraitement Créer un réplica permet de répliquer toutes les données en accédant aux couches à répliquer.

Remarque :

Pour les tables, le comportement par défaut consiste à répliquer uniquement la structure de la table. Si vous souhaitez répliquer tous les enregistrements, procédez comme indiqué dans la rubrique Créer un sous-ensemble des données à répliquer pour spécifier l’expression SQL 1=1 en tant qu’ensemble de définition dans la table. Pour répliquer un sous-ensemble des enregistrements, définissez l’expression SQL appropriée.

Créer un sous-ensemble des données à répliquer

Il se peut que vous vouliez uniquement répliquer un sous-ensemble des entités du jeu de données. Il existe plusieurs moyens de spécifier les sous-ensembles de données à répliquer :

  • Utiliser des ensembles de définition.
  • Utiliser un ensemble de sélection.
  • Spécifier une étendue.
  • Utiliser des entités de géométrie.

Une fois que les données ont été définies d’après les éventuels filtres utilisés, la logique des classes de relations (s’il y en a) est appliquée. Pour chaque jeu de données impliqué dans une classe de relations, des lignes supplémentaires sont ajoutées si elles sont liées aux données déjà présentes dans le réplica. Pour plus d’informations, reportez-vous à la rubrique Réplication et données reliées.

Utiliser des ensembles de définition

Les ensembles de définition sont rédigés en langage SQL. Ils permettent de définir un sous-ensemble des entités d’une couche avec lesquelles travailler en filtrant les entités à extraire du jeu de données et à afficher dans la table attributaire de la couche. Pour répliquer un sous-ensemble d’entités, commencez par créer un ensemble de définition pour une couche dans ArcGIS Pro.

Après avoir créé des ensembles de définition sur vos jeux de données, ajoutez-les à l’outil de géotraitement Create Replica (Créer un réplica) à l’aide du menu déroulant Replica Datasets (Jeux de données de réplicas).

Outil de géotraitement Créer un réplica et son option de menu déroulant qui permet de sélectionner les entités d’une carte auxquelles des ensembles de définition sont appliqués

Remarque :

Vous devez utiliser le menu déroulant Replica Datasets (Jeux de données de réplicas) de l’outil de géotraitement Créer un réplica pour vérifier que les ensembles de définition sont bien appliqués dans le réplica. Les ensembles de définition provenant de données sur la carte ne sont pas respectés si le bouton de navigation est utilisé.

Utiliser un ensemble de sélection

La sélection d’entités vous permet de mettre en surbrillance un sous-ensemble d’entités sur votre carte que vous pourrez utiliser ultérieurement dans le cadre de l’exploration ou de l’analyse de vos données. Une fois que vous avez sélectionné des entités, il est possible de répliquer les ensembles de sélection des classes d’entités et des tales individuelles. Dans l’outil de géotraitement Créer un réplica, utilisez le menu déroulant Replica Datasets (Jeux de données de réplicas) pour vérifier que les jeux de données sélectionnés dans la carte sont utilisés dans le réplica.

Spécifier une étendue

Vous pouvez utiliser le paramètre d’environnement Étendue pour définir l’étendue spatiale des données à répliquer. Avec ce paramètre, seules les entités qui passent par l’étendue spécifiée seront traitées et incluses.

L'étendue définie est supposée être dans le système de coordonnées de stockage des données en entrée, même si l'environnement Système de coordonnées en sortie est défini. Si l'outil accepte plusieurs jeux de données en entrée, le premier jeu de données définit le système de coordonnées de l'étendue.

Utiliser des entités de géométrie

Examinez le paramètre Replica Geometry Features (Entités de géométrie de réplication), dans l’aide de l’outil de géotraitement Créer un réplica, pour savoir comment l’utiliser pour définir la géométrie de réplication.

Paramètres de l’outil de géotraitement Créer un réplica

Cette section décrit les paramètres en entrée de l’outil Créer un réplica.

Outil de géotraitement Créer un réplica

  • Replica Datasets (Jeux de données de réplicas) : pour répliquer un sous-ensemble des données, appliquez les ensembles de définition et utilisez le menu déroulant pour les ajouter au réplica. Vous pouvez parcourir les jeux de données pour en sélectionner d’autres ou utiliser le menu déroulant si les couches sont présentes dans votre carte.
  • Replica Type (Type de réplica) : sélectionnez un réplica de type extraction, monodirectionnel, monodirectionnel enfant vers parent ou bidirectionnel.
  • Output Type (Type en sortie) : désigne le type de données en sortie des données à répliquer.
    • Geodatabase (Géodatabase) : réplique les données sur une géodatabase. Il s’agit de l’option par défaut.
    • Xml file (Fichier Xml) : réplique les données sur un document d’espace de travail XML.
  • Geodatabase to replicate data to (Géodatabase pour la création du réplica) : ce paramètre est obligatoire si Output Type (Type en sortie) est défini sur Geodatabase (Géodatabase) et réplique les données vers une géodatabase de destination locale ou distante. Les géodatabases distantes sont accessibles via les services de géodonnées exécutés sur ArcGIS Server. Parcourez les géodatabases ou les services de géodonnées pour sélectionner celle ou celui qui recevra les données. Si votre réplica est de type extraction ou monodirectionnel, la destination peut être une géodatabase fichier. Dans les autres cas, une géodatabase d’entreprise est obligatoire. Utiliser cette option pour répliquer des données sur une géodatabase permet de créer un réplica dans un environnement connecté. Consultez la section relative à la création d’un réplica d’extraction, d’un réplica monodirectionnel ou d’un réplica bidirectionnel pour connaître la procédure détaillée du workflow.
  • XML file to replicate data to (Fichier XML dans lequel répliquer les données) : ce paramètre est obligatoire si Output Type (Type en sortie) est défini sur Xml file (Fichier Xml) et produit en sortie un document d’espace de travail XML sous forme d’un fichier XML. L’option de fichier XML prend en charge les environnements déconnectés dans lesquels vous pouvez envoyer le document d’espace de travail XML vers la destination et l’importer afin de terminer la création de réplica. Consultez la section relative à la création d’un réplica dans un environnement déconnecté pour en savoir plus sur la procédure détaillée du workflow.

    Lorsque vous utilisez l’outil de géotraitement Créer un réplica, le type en sortie peut être une géodatabase ou un fichier XML, qui convient bien aux environnements déconnectés.

  • Replica Name (Nom du réplica) : saisissez le nom du réplica à créer.

Paramètres avancés

Type d’accès au réplica

Lors de la création d’un réplica, vous devez choisir l’une des deux options suivantes de modèle d’informations sur les entités:

  • Modèle complet : dans le cas du modèle complet, tous les types de données (simples et complexes), comme les topologies, les annotations, et les classes d’entités de cotations, sont répliqués vers la géodatabase enfant et versionnés. Il s’agit de l’option par défaut.

    Le modèle complet part du principe que les entités sont stockées avec le même type d’entité dans la géodatabase du réplica associé parent et dans celle du réplica associé enfant. Cette option est à utiliser avec les applications de mise à jour basées sur les logiciels clients ArcGIS.

  • Modèle simple : dans le cas du modèle simple, la géodatabase enfant contient uniquement des entités simples. Le modèle simple ne réplique pas les topologies, les jeux de données réseau, les annotations et les classes d’entités de cotations. De plus, il ne versionne pas les données de la géodatabase enfant. Si nécessaire, vous pouvez versionner les données de la géodatabase enfant une fois le réplica créé.

    Au cours de la réplication, les entités complexes de la géodatabase parent (par exemple, les topologies et les jeux de données réseau) sont converties en entités simples dans la géodatabase enfant, et inversement. Un traitement supplémentaire est appliqué pendant la synchronisation afin de prendre en compte les différents types et caractéristiques des entités dans les deux géodatabases.

    Cette option est à utiliser si la géodatabase enfant est conçue pour être mise à jour avec des éditeurs d’entités simples, notamment des éditeurs tiers non basés sur des logiciels clients ArcGIS. Elle peut aussi servir à simplifier le modèle de données de la géodatabase enfant pour une utilisation dans une réplication monodirectionnelle ou avec des éditeurs basés sur ArcGIS ou sur des logiciels clients ArcGIS.

    Le modèle simple présente les avantages suivants :

    • Il permet de mettre à jour la géodatabase enfant dans des éditeurs d’entités simples qui ne reposent pas sur un logiciel Esri.
    • Pour les réplicas monodirectionnels, les données de la géodatabase enfant ne sont pas versionnées, ce qui facilite l’intégration avec des applications non basées sur Esri.
Remarque :

Dans le cas d’une topologie, lorsqu’un modèle simple est utilisé, l’objet de topologie est exclu de la géodatabase enfant ; toutefois, toutes les classes d’entités qui en font partie sont incluses. Une fois le réplica créé, le fait d’envoyer les modifications de la géodatabase enfant vers la géodatabase parent conserve automatiquement les entités du parent. Un traitement supplémentaire est effectué sur le parent afin de mettre à jour les zones à valider de la topologie.

Développer les classes d’entités et les tables

Ce paramètre spécifie si vous incluez les classes d’entités et les tables développées — comme celles que l’on trouve dans les topologies ou les classes de relations — qui ne sont pas répertoriées dans les jeux de données de réplicas.

  • Use defaults (Par défaut) : ajoute les tables et les classes d’entités développées associées aux tables et aux classes d’entités dans le réplica. L’option par défaut pour les classes d’entités est de répliquer toutes les entités qui intersectent le filtre spatial. Si aucun filtre spatial n’a été fourni, toutes les entités sont incluses. L’option par défaut pour les tables est de répliquer uniquement la structure.
  • Add with schema only (Ajouter avec la structure uniquement) : ajoute uniquement la structure pour les tables et les classes d’entités développées.
  • All rows (Toutes les lignes) : ajoute toutes les lignes pour les tables et les classes d’entités développées.
  • Do not add (Ne pas ajouter) : n’ajoute pas les tables ni les classes d’entités développées.

Répliquer les données reliées

Ce paramètre indique de répliquer ou non les lignes reliées à celles se trouvant déjà dans le réplica. Par exemple, prenez une entité (f1) à l'intérieur du filtre de réplication et une entité reliée (f2) issue d'une autre classe extérieure au filtre. L'entité f2 est comprise dans le réplica si vous choisissez d'extraire les données reliées.

  • Do not get related (Ne pas répliquer les données reliées) : les lignes reliées ne sont pas répliquées.
  • Get related (Données reliées) : les données reliées sont répliquées. Il s’agit de l’option par défaut.

Entités de géométrie de réplication

Vous pouvez utiliser Replica Geometry Features (Entités de géométrie de réplication) pour définir la géométrie de réplication.

  • Les entités de géométrie de réplication peuvent être des polygones, des lignes ou des points.
  • Une couche d'entités utilisée pour les entités de la géométrie de réplication peut contenir une ou plusieurs entités. En présence de plusieurs entités, les géométries sont combinées et seules les données qui intersectent les géométries combinées sont répliquées.
  • Si des filtres (par exemple, ensemble de définition) ont été définis sur les entités de géométrie de réplication, seules les entités qui correspondent à ces filtres permettent de définir la géométrie de réplication.
  • Vous pouvez également utiliser le paramètre d’environnement  Étendue pour définir la géométrie de réplication.
    • Si le paramètre Replica Geometry Features (Entités de géométrie de réplication) est défini, il sera utilisé comme géométrie de réplication.
    • Si le paramètre Replica Geometry Features (Entités de géométrie de réplication) n’est pas défini, l’environnement Extent (Étendue) sera utilisé comme géométrie de réplication.
    • Si le paramètre Replica Geometry Features (Entités de géométrie de réplication) et l’environnement Étendue sont définis, le paramètre Replica Geometry Features (Entités de géométrie de réplication) est utilisé.
    • Si ni Replica Geometry Features (Entités de géométrie de réplication)  ni l’environnement Étendue ne sont spécifiés, l’étendue complète des données est utilisée.

Inscrire les données existantes uniquement

La création d’un réplica implique de copier des données depuis la géodatabase source vers une géodatabase cible et inscrit un réplica dans chaque géodatabase afin de décrire les données ayant été répliquées. Lors de la création d’un réplica, la copie des données vers une autre géodatabase et l’inscription du réplica peuvent prendre beaucoup de temps sur des jeux de données volumineux.

L’option Register existing data only (Inscrire les données existantes uniquement) à la création d’un réplica est disponible pour les utilisateurs possédant d’importants jeux de données ou des données identiques dans deux géodatabases différentes. Cette option permet de créer les versions de réplica nécessaires à la synchronisation des modifications entre les géodatabases, mais n’effectue pas la totalité du traitement de copie des données puisqu’elles existent déjà dans les deux emplacements.

L’option Register existing data only (Enregistrer les données existantes uniquement) est une option de l’outil de géotraitement Créer un réplica, située sous Advanced Setting (Paramètres avancés).

Option Register existing data only (Enregistrer les données existantes uniquement) de l’outil de géotraitement
  • Activé : si l’option Register existing data only (Inscrire les données existantes uniquement) est activée, le système suppose que les données existent déjà dans la géodatabase enfant et qu’elles seront utilisées pour inscrire le réplica.
  • Désactivé : si l’option Register existing data only (Inscrire les données existantes uniquement) n’est pas sélectionnée (par défaut), les données de la géodatabase parent sont copiées vers la géodatabase enfant.

Conditions requises

Pour que vous puissiez utiliser l’outil de géotraitement Créer un réplica avec l’option Register existing data only (Enregistrer les données existantes uniquement), les jeux de données de la géodatabase enfant (cible) doivent remplir les conditions suivantes :

Remarque :

Toutes les conditions suivantes doivent être satisfaites pour que vous puissiez utiliser l’outil de géotraitement Créer un réplica avec l’option Register existing data only (Inscrire les données existantes uniquement). Les conditions requises pour la réplication de géodatabase, ainsi que les conditions requises stipulant que les noms des jeux de données doivent correspondre et que l’utilisateur connecté à la géodatabase enfant doit posséder les jeux de données, sont les seules vérifications effectuées lors de la création du réplica. Une fois le réplica créé, si d’autres conditions requises n’ont pas été respectées, des erreurs sont générées lors des tentatives de synchronisation du réplica.

  • Il convient de respecter les conditions requises pour la réplication de géodatabase, notamment les conditions requises supplémentaires pour la réplication qui s’appliquent en fonction du type de réplication sélectionné.
  • Dans le cas de réplicas monodirectionnels, enfant vers parent, et de réplicas bidirectionnels, les données du réplica enfant doivent être inscrites comme versionnées ;
  • être possédées par l’utilisateur connecté à la géodatabase enfant.
  • avoir les mêmes noms que les jeux de données de la base de données parent ;
  • avoir la même structure, ainsi que les mêmes règles, relations et propriétés que les jeux de données de la base de données parent ;
  • avoir les mêmes types de géométrie que les jeux de données de la base de données parent.

Astuces

Voici quelques astuces concernant l’utilisation de l’option Register existing data only (Inscrire les données existantes uniquement) :

  • Si les ID globaux sont requis pour le type de réplication, vous devez veiller à ajouter les ID globaux aux données avant de copier ces dernières vers l’autre géodatabase. Si vous faites appel aux fonctions d’ArcGIS pour copier les données, veillez à utiliser le copier-coller ou les fonctions d’exportation et d’importation de l’espace de travail XML.
  • Vous devez être connecté en tant que propriétaire des données sur la géodatabase cible à la création du réplica.
  • Quels que soient les filtres appliqués lors de la création du réplica, ils sont également appliqués aux données dans la géodatabase relative.

Limitations

Il est important de garder à l’esprit les limitations suivantes lorsque vous utilisez l’option Register existing data only (Inscrire les données existantes uniquement) :

  • Si l’option Register existing data only (Enregistrer les données existantes uniquement) est activée dans l’outil de géotraitement Créer un réplica, aucune option ne permet de sélectionner le jeu de données correspondant dans la géodatabase enfant ; avant d’activer cette option, il convient donc de vérifier manuellement que les jeux de données de la géodatabase enfant ont été correctement configurés et qu’ils remplissent toutes les conditions requises pour la réplication de géodatabase.
  • Lorsque vous utilisez l’option Register existing data only (Inscrire les données existantes uniquement), les données sont supposées être identiques dans les deux géodatabases ; toute différence entre les jeux de données dans les réplicas parent et enfant lors de la création du réplica n’est pas synchronisée. Si des couches sont manquantes dans la géodatabase cible, l’exécution de l’outil de géotraitement Créer un réplica échoue et un message d’erreur est renvoyé.

Exemple de réplication de données

Les exemples suivants de bons de travail de maintenance illustre en partie le comportement par défaut lors de la réplication de données.

Une équipe de maintenance s’apprête à inspecter une zone résidentielle. En vue d’effectuer des mises à jour sur le terrain, cette équipe a besoin de répliquer la partie de l’infrastructure couvrant cette zone résidentielle. Pour lancer le processus de réplication, l’étendue spatiale de la zone d’inspection est identifiée à l’aide d’un filtre spatial (dans ce cas, l’étendue est définie par le paramètre d’environnement).

Étendue de la zone de travail

L’équipe doit se concentrer sur les câbles isolés à l’aide d’un matériau particulier. Pour identifier ces câbles, une requête est appliquée au jeu de données correspondant.

Ensemble de définition appliqué aux entités dans l’étendue de la zone de travail

Enfin, dans la mesure où chaque équipe de maintenance ne pourra visiter qu’un certain nombre de propriétés en une journée, les maisons d’une zone résidentielle restreinte sont identifiées par un ensemble de définition basé sur les numéros des propriétés. Cette opération de sélection est illustrée ci-dessous.

Ensemble de sélection de maisons impactées par l’ensemble de définition dans la zone de travail

Les entités sélectionnées, les entités identifiées par un ensemble de définition et les entités se trouvant à l’intersection de l’étendue spatiale sont répliquées. Certaines entités supplémentaires sont également incluses.

Données à répliquer incluses dans l’étendue et dans l’ensemble de définition

Rubriques connexes