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.

La réplication de géodatabase est l’un des processus de distribution des données disponibles dans ArcGIS Pro. Vous avez le choix entre deux outils de géotraitement pour créer un réplica de géodatabase :

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 :

  • La géodatabase source (parent) doit être une géodatabase d’entreprise.
  • L’utilisateur de base de données qui se connecte à la géodatabase parent doit disposer de l’accès en écriture aux données.
  • Tous les jeux de données du réplica doivent provenir de la même géodatabase d'entreprise.
  • La connexion à la géodatabase d'entreprise doit être configurée pour le versionnement traditionnel ; il ne doit pas s'agir d'une connexion de version de branche.
  • Si les données sont inscrites pour le versionnement traditionnel, elles ne peuvent pas être versionnées avec l’option d’enregistrement des mises à jour dans la base.

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.
    • Réplication monodirectionnelle avec possibilité d’utiliser l’archivage pour le suivi des modifications de réplica : la version du réplica parent doit correspondre à la version de géodatabase par défaut. Les données doivent être activées pour l’archivage avant la création du réplica.

Tout jeu de données ne remplissant pas ces conditions ne sera pas inclus dans le réplica. Pour des détails supplémentaires, reportez-vous à l'outil de géotraitement Create Replica (Créer un réplica). Si ces conditions ne sont remplies par aucun 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. Pour des informations sur les types de données et les fonctionnalités de géodatabase pour lesquels des règles et comportements supplémentaires sont appliqués lors de la création de réplicas, consultez les rubriques suivantes :

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 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 dans les couches que vous incluez dans le réplica.

Remarque :

Pour les tables non spatiales, le comportement par défaut consiste à répliquer uniquement la structure de la table. Pour répliquer tous les enregistrements d'une table spécifique, 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 comme ensemble de définition dans la table. Pour répliquer tous les enregistrements de toutes les tables dans le réplica de géodatabase enfant, utilisez l’option All records for tables (Tous les enregistrements des tables), qui se trouve dans la section Advanced Setting (Paramètres avancés) de l’outil de géotraitement Create Replica (Créer un réplica). 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.

Les ensembles de définition étant appliqués aux couches de la carte et n'étant pas enregistrés avec le jeu de données dans la géodatabase, vous devez faire glisser la couche de la fenêtre Contents (Contenu) de la carte vers le champ Replica Datasets (Jeux de données de réplicas) de l'outil de géotraitement Create Replica (Créer un réplica) ou sélectionner les couches dans le menu déroulant Replica Datasets (Jeux de données de réplicas) de l'outil de géotraitement Create Replica (Créer un réplica).

Remarque :

N'utilisez pas le bouton de navigation pour ajouter les jeux de données de réplicas. Les ensembles de définition provenant de données sur la carte ne sont pas respectés si le bouton de navigation est utilisé.

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

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

Vous pouvez spécifier une couche qui contient une ou plusieurs entités, ainsi que les données qui intersectent la géométrie, ou agréger les géométries de la couche à inclure dans le réplica. Pour plus d'informations sur la manière dont cela peut être utilisé pour définir la géométrie du réplica, reportez-vous à l'explication du paramètre Replica Geometry Features (Entités de géométrie de réplication) dans la section suivante.

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 un site 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

Les sections ci-après présentent les paramètres avancés de l'outil de géotraitement Create Replica (Créer un réplica).

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. Si, par exemple, une classe d’entités dans le réplica parent est une classe d’entités jonction dans un réseau, la classe d’entités correspondante dans la géodatabase enfant doit également être une classe d’entités jonction.

    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 ateliers parcellaires) sont converties en entités simples dans la géodatabase enfant. 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 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 que vous avez créé le réplica, le fait d’envoyer les modifications de la géodatabase enfant à la géodatabase parent maintient automatiquement les entités de la version parent. Un traitement supplémentaire est effectué sur la version parent afin de mettre à jour les zones à valider de la topologie.

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

Les options de ce paramètre spécifient si le réplica inclut ou non les tables qui font partie d’un type de jeu de données étendu (topologie, classe de relations ou réseau) auquel les classes d’entités ou les tables du réplica participent.

  • Use defaults (Utiliser les valeurs par défaut) : ajoute les tables et classes d’entités qui font partie des types de jeux de données étendus associés. 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 les structures des tables et des classes d’entités dans les jeux de données étendus, mais pas les données.
  • All rows (Toutes les lignes) : ajoute toutes les lignes pour les tables et les classes d’entités dans les jeux de données étendus.
  • Do not add (Ne pas ajouter) : n’ajoute pas les classes d’entités ni les tables des jeux de données étendus associés.

Répliquer les données reliées

Les options de ce paramètre indiquent 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

L’option Replica Geometry Features (Entités de géométrie de réplication) permet de 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 de la géodatabase source vers une géodatabase cible et d'inscrire un réplica dans chaque géodatabase afin de décrire les données 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.

Lors de la création d’un réplica, l'option Register existing data only (Inscrire les données existantes uniquement) est disponible pour les utilisateurs possédant des jeux de données volumineux 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 (Inscrire les données existantes uniquement) est disponible dans l’outil de géotraitement Create Replica (Créer un réplica), 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.
    Remarque :

    Si l'option Register existing data only (Inscrire les données existantes uniquement) est sélectionnée, l'option All records for tables (Tous les enregistrements des tables) n'est pas disponible.

  • 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.

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.

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 :
  • 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

Tenez compte des informations suivantes lorsque vous utilisez 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é.

Tous les enregistrements des tables

Lors de la création du réplica, les données et la structure des jeux de données répliqués sont copiées de la géodatabase source vers une géodatabase cible et un réplica est créé dans chaque géodatabase. Les données sont définies comme les lignes et les colonnes de la table et la structure se compose des champs, domaines, sous-types et autres propriétés décrivant les données répliquées.

Pour les jeux de données, le comportement par défaut consiste à répliquer les données et la structure. Pour les tables, le comportement par défaut consiste à répliquer uniquement la structure de la table.

L'option All records for tables (Tous les enregistrements des tables) permet d'indiquer si tous les enregistrements ou la structure seule sont copiés dans la géodatabase enfant pour les tables auxquelles aucun filtre n'est appliqué (tel que des sélections ou des ensembles de définition).

L'option All records for tables (Tous les enregistrements des tables) est disponible dans l’outil de géotraitement Create Replica (Créer un réplica), sous Advanced Setting (Paramètres avancés).

Option All records for tables (Tous les enregistrements des tables) de l'outil de géotraitement

  • Sélectionnée : si l'option All records for tables (Tous les enregistrements des tables) est sélectionnée, tous les enregistrements sont copiés dans le réplica de géodatabase enfant pour les tables auxquelles aucun filtre n'est appliqué. Cette option écrase la valeur du paramètre Expand Feature Classes and Tables (Développer les classes d’entités et les tables).
    Remarque :

    L'option All records for tables (Tous les enregistrements des tables) n'est pas disponible si l'option Register existing data only (Inscrire les données existantes uniquement) est sélectionnée.

  • Non sélectionnée : si l'option All records for tables (Tous les enregistrements des tables) n'est pas sélectionnée, seule la structure est copiée dans la géodatabase enfant pour les tables auxquelles aucun filtre n'est appliqué. Les tables auxquelles des filtres sont appliqués sont respectées. Il s’agit de l’option par défaut.

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