Note : Ce billet de blog est le premier d'une série de trois articles prévus sur egdbhealth. Le deuxième de la série expliquera comment utiliser l'outil pour évaluer la santé d'un Enterprise Geodatabase. Le troisième de la série traitera de l'utilisation d'egdbhealth dans un contexte de conception système.
Introduction
Egdbhealth est un outil pour générer des rapports sur diverses caractéristiques des Enterprise Geodatabases (eGDBes). Il fournit des informations descriptives sur le contenu de l'eGDB et il fournit des informations évaluatives sur l'eGDB. L'information évaluative est le but principal de l'outil ; mettre en lumière les problèmes/défis existants ou latents avec l'eGDB. L'outil fonctionne avec des eGDBes supportés par Oracle, PostgreSQL, et SQL Server.
Installation et exécution
Bien qu'il ne s'agisse pas d'une extension pour ArcGIS Monitor, egdbhealth est disponible en téléchargement depuis la Galerie ArcGIS Monitor : https://arcgismonitor.maps.arcgis.com/home/item.html?id=f343f6b2bbcf434386f6dde1e468e7ab.
Installation et prérequis
Pour installer, téléchargez simplement l'archive .zip et extrayez les fichiers dans un répertoire de votre choix.
Il y a quelques prérequis pour exécuter egdbhealth. Ces considérations sont discutées dans la documentation contenue dans l'archive .zip (egdbhealth_README.docx). Mais, à un niveau général, les prérequis sont :
- Vous avez besoin d'un client de base de données pour le type de base de données (Oracle, PostgreSQL, ou SQL Server) auquel vous vous connectez (http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/database-clients.htm).
- Si vous utilisez « Operating System Authentication » avec SQL Server, et que votre eGDB est possédé par « dbo » (au lieu de « sde »), vous devez exécuter egdbhealth en tant qu'utilisateur Windows qui est dbo. En d'autres termes, vous devez vous connecter en tant que « Geodatabase Administrator » (http://desktop.arcgis.com/en/arcmap/latest/manage-data/gdbs-in-sql-server/geodatabase-administrator-sqlserver.htm). Vous devez vous connecter en tant que Geodatabase Administrator avec Oracle ou PostgreSQL, mais cela signifie généralement se connecter en tant qu'utilisateur appelé « sde ».
- Si vous vous connectez à Oracle ou PostgreSQL, vous devez avoir activé la bibliothèque de type ST_Geometry (http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/add-the-st-geometry-type-to-an-oracle-database.htm ou http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/add-the-st-geometry-type-to-a-postgresql-database.htm).
Exécution
Un double-clic sur egdbhealth.exe lancera une fenêtre de commande et un formulaire Windows.
Suivez les instructions sur le formulaire pour remplir les informations de connexion à votre base de données. Les info-bulles fournissent des indices sur la nature des informations requises. Mais, en principe, les informations sont les mêmes que celles que vous fourniriez à ArcGIS pour vous connecter à la base de données en tant que « Geodatabase Administrator ».

Le bouton « Test » tentera de confirmer que vous pouvez vous connecter, avec les privilèges requis, à l'eGDB. Si le test réussit, le bouton « Test » deviendra un bouton « Run ». Cliquer dessus fermera le formulaire et commencera l'exécution de l'outil dans la fenêtre de commande.
Lorsque l'outil termine, il ouvrira le sous-répertoire « output » qui contiendra cinq fichiers de sortie :
- Un fichier HTML contenant des métadonnées sur l'eGDB interrogée et la cible RDBMS ainsi que sur la manière dont la connexion est établie.
- Un fichier Excel « Context » qui contient des informations descriptives sur l'eGDB et la cible RDBMS
- Un fichier Excel « Expert » qui contient des informations évaluatives, classées comme « Critical », « Warning », et « Information ».
- Un fichier png qui représente l'arbre des versions.
- Un fichier png qui représente l'arbre d'état.
Présentation des résultats
Un exemple des fichiers de sortie est montré ci-dessous :

Les fichiers porteront le « GDB Friendly Name » que vous avez spécifié dans le formulaire (dans cet exemple, « SQL_GIS »).
Le fichier Expert Excel
Le fichier Expert Excel est le principal artefact d'information. Il fournit les informations évaluatives sur le système eGDB cible. Par exemple, si l'eGDB n'a pas été compressée récemment, une évaluation signalera cela comme une préoccupation.
Le fichier possède une feuille récapitulative qui donne un aperçu des évaluations. Les évaluations sont catégorisées par sujet général (première colonne, « Category ») et classifiées (colonnes Critical, Warning, et Informational) afin que vous puissiez prioriser votre revue des informations.
La colonne Description explique brièvement le but de l'évaluation. Lorsqu'il y a un marqueur rouge dans la cellule Description, il y a une info-bulle qui fournit encore plus d'informations sur ce qui est évalué.

Certaines constatations n'ont aucun enregistrement à rapporter. Par exemple, s'il n'y a pas de problème avec un certain type de cohérence Geodatabase, il n'y aura aucun enregistrement. Cependant, beaucoup de constatations auront un certain nombre d'enregistrements avec diverses classifications. Dans ces cas-là, le Nom (deuxième colonne) aura un lien hypertexte vers la feuille du classeur contenant les enregistrements détaillés des constatations.
Le fichier Context Excel
Le fichier Context Excel est similaire en structure mais ne possède pas les colonnes de classification expert (Critical-Warning-Informational). L'information est plus descriptive et moins évaluative. Par exemple, dans ce fichier, vous pouvez trouver une liste de tous les Domaines Geodatabase et des ObjectClasses auxquels ils sont liés. Cette information n'est ni bonne ni mauvaise (c'est-à-dire non évaluative). Mais elle peut être utile à connaître.

Les enregistrements mis en évidence en vert ont des instructions SQL que vous pouvez exécuter pour obtenir des informations supplémentaires, selon le cas. Habituellement, ces instructions SQL sont trop coûteuses à exécuter sur tout le contenu dans l'eGDB. Mais, quelqu'un familier avec l'eGDB et les problèmes qu'il présente pourrait avoir des idées sur les requêtes qui seraient néanmoins utiles à exécuter. Par exemple, la feuille « SqlGeomTypeSizeSql » contient une requête SQL pour chaque FeatureClass dans l'eGDB. Si vous exécutez l'une de ces requêtes, elle rapportera les tailles des géométries dans un FeatureClass. C'est une opération suffisamment coûteuse pour qu'il ne soit pas approprié de l'exécuter sur tous les FeatureClasses par défaut. Mais, s'il y a un FeatureClass qui a un problème de performance, il peut être utile pour vous d'exécuter la requête pour ce FeatureClass afin d'examiner les tailles de ses géométries.<\/P>
<\/P>
Les PNGes<\/H3>Les fichiers PNG (un diagramme d'arbre de versions et un diagramme d'arbre d'état) sont généralement intéressants si votre eGDB contient des données qui ont été enregistrées comme versionnées.<\/P> <\/P>Le graphique de l'arbre de versions illustre la hiérarchie de l'arbre de versions. Le codage couleur (rouge-jaune-vert) indique le degré relatif de « vieillissement », ou depuis combien de temps la version a été modifiée ou réconciliée.<\/P> <\/P>
<\/P> <\/P>Le schéma de l'arbre d'état illustre la profondeur et la structure de l'arbre d'état (qui est la structure détaillée sur laquelle repose l'arbre de versions). La version Default est montrée en rouge et « State Zero » est montrée en vert. Plus ces nœuds sont éloignés, plus il est coûteux pour la base de données de retourner des informations sur la version Default (la version la plus couramment utilisée dans la plupart des systèmes).<\/P> <\/P>
<\/P> <\/P>Le HTML<\/H3>Le HTML fournit quelques informations générales sur l'eGDB, le RDBMS et la machine qui sont la cible de l'évaluation. Il peut n'être que d'un intérêt passager dans de nombreux cas.<\/P> <\/P>
<\/P> <\/P>Résumé<\/H2>Cet article a décrit le but d'egdbhealth, comment l'exécuter et quels sont ses résultats. Comme les résultats de l'outil contiennent beaucoup d'informations techniques, d'autres articles aborderont comment utiliser ces résultats pour (a) comprendre et améliorer la santé de l'eGDB (b) concevoir des systèmes GIS.<\/SPAN><\/P> <\/P>J'espère que vous trouverez cela utile, n'hésitez pas à poser vos questions ici : https:\/\/community.esri.com\/thread\/231451-arcgis-architecture-series-tools-of-an-architect<\/SPAN><\/A><\/SPAN><\/P> <\/SPAN><\/P>Note :<\/EM><\/STRONG> Les contenus présentés ci-dessus sont des recommandations qui amélioreront généralement les performances dans de nombreux scénarios. Cependant, dans certains cas, ces recommandations peuvent ne pas produire de meilleurs résultats en termes de performance, auquel cas des tests supplémentaires et des modifications de configuration du système peuvent être nécessaires.<\/EM><\/SPAN><\/P>