Comment comparer les schémas de deux géodatabases fichier?

13

Nous avons un modèle de géodatabase, que nous envoyons à nos créateurs de données régionaux. Ils mettent à jour ces géodatabases et numérisent toutes les données de leur région dans les classes de fonction prédéfinies.

Maintenant que nous avons les géodatabases fichier, nous constatons que souvent de nombreuses classes de fonctionnalités ont été modifiées. Peut-être qu'un champ pourrait être ajouté ou supprimé. Dans certains cas, la classe d'entités elle-même est supprimée ou une nouvelle créée.

Je souhaite obtenir un rapport indiquant les classes d'entités et les tables modifiées, ainsi que les champs différents dans les tables et les classes de fonctions communes.

J'ai déjà examiné plusieurs questions telles que:

Mais les réponses données dans ces questions n'ont pas été utiles.

Devdatta Tengshe
la source
Je ne suis pas sûr du protocole ici à SE avec des sujets nécroissants, mais j'avais une question connexe à la vôtre, Devdatta: existe-t-il un outil qui prend votre solution à partir du complément X-ray et résout les différences entre les GeoDBs / XML?
Kyle Shepard
@KyleShepard La procédure habituelle est de poser une nouvelle question, pour un nouveau problème. Vous pouvez créer un lien vers une ancienne question si elle contient des informations connexes. Et pour répondre à votre question, je n'ai rien trouvé de tel. Vous pourriez peut-être poser une nouvelle question, et quelqu'un qui a trouvé quelque chose y répondra.
Devdatta Tengshe

Réponses:

9

Il existe un merveilleux complément appelé X-ray pour ArcCatalog . Il a de nombreuses fonctionnalités, mais celui que nous avons fini par utiliser était l'outil «Analyser la différence» du menu Outils.

Il trouve pour vous la différence entre une géodatabase et un document d'espace de travail XML. Nous venons d'exporter le schéma de notre modèle de géodatabase vers XML, et nous y avons comparé les différentes géodatabases.

Il ne faut guère quelques secondes pour afficher un joli rapport avec toutes les classes d'entités et les champs manquants ou différents dans les deux géodatabase.

Devdatta Tengshe
la source
Ça a l'air génial. Est-ce que cela fonctionne sur 10.1?
Fezter
@Fezter: Cela semble être celui pour 10.1: arcgis.com/home/item.html?id=e1e911d7d7374285b1ef03d06b3ee642
Devdatta Tengshe
7

Je pense que l'écriture d'un script python conviendrait mieux à ce que vous essayez de comprendre. Voici un flux de travail de script général:

Comparez d'abord la géodatabase 1 (geo1) à la géodatabase 2 (geo2)

  1. Recherchez / parcourez geo1 et obtenez le nom de la classe d' entités (fc) 1 et recherchez le même nom fc dans un autre geo2 (si le nom fc1 ne peut pas être trouvé dans geo2, puis écrivez le premier nom fc dans le fichier texte)
  2. Si l'étape 1 fc1 == nom fc2, répertoriez les champs dans fc1 et recherchez les champs dans fc2, si le nom du champ fc1 est introuvable dans fc2, puis écrivez le nom du champ fc1 dans le fichier texte
  3. Ensuite, recherchez ou répertoriez le domaine dans geo1, puis recherchez le même nom de domaine dans geo2, si domaine geo1 == domaine geo2, obtenez d'abord la valeur codée du domaine 1 et voyez s'il existe dans le domaine 2, sinon, écrivez le nom de domaine geo1 ou valeur codée par domaine dans un fichier texte.

Deuxième en sens inverse comparer geo2 à geo1

Suivez les étapes 1 à 3 ci-dessus mais dans l'ordre inverse geo2 à geo1

Une fois le script terminé, inspectez le fichier texte des résultats pour détecter d'éventuelles divergences.

oeuvre21
la source
3

Il semble que vous ayez déjà une bonne réponse. Mais pour tous ceux qui cherchent à comprendre leurs schémas de géodatabase, je peux également recommander ArcGIS Diagrammer , un programme autonome écrit par l'une des équipes d'Esri.

ArcGIS Diagrammer est un outil de productivité permettant aux professionnels SIG de créer, modifier ou analyser un schéma de géodatabase. Le schéma est présenté sous forme de graphiques modifiables dans un environnement familier aux utilisateurs de Microsoft Visual Studio. ArcGIS Diagrammer est essentiellement un éditeur visuel pour les documents d'espace de travail xml d'ESRI qui peuvent être créés dans ArcMap ou ArcCatalog.

Stephen Lead
la source
pour clarifier, il ne nécessite pas Visio - mais il semble un peu "familier aux utilisateurs de Visio" en ce qu'il a utilisé une disposition similaire
Stephen Lead
Oui, tu as raison. On dirait que je me suis trompé.
Devdatta Tengshe