Nota: Esta publicación del blog es la primera de una serie de tres publicaciones planificadas sobre egdbhealth. La segunda en la serie abordará cómo usar la herramienta para evaluar la salud de un Enterprise Geodatabase. La tercera en la serie tratará sobre el uso de egdbhealth en un contexto de diseño de sistemas.
Introducción
Egdbhealth es una herramienta para reportar sobre varias características de Enterprise Geodatabases (eGDBes). Proporciona información descriptiva sobre el contenido del eGDB y proporciona información evaluativa sobre el eGDB. La información evaluativa es el propósito principal de la herramienta; para revelar problemas/desafíos existentes o latentes con el eGDB. La herramienta funciona con eGDBes respaldados por Oracle, PostgreSQL y SQL Server.
Instalación y Ejecución
Aunque no es una extensión de ArcGIS Monitor, egdbhealth está disponible para descargar desde la Galería de ArcGIS Monitor: https://arcgismonitor.maps.arcgis.com/home/item.html?id=f343f6b2bbcf434386f6dde1e468e7ab.
Instalación y Requisitos Previos
Para instalar, simplemente descargue el archivo .zip y extraiga los archivos a un directorio de su elección.
Hay algunos requisitos previos para ejecutar egdbhealth. Esas consideraciones se discuten en la documentación en el archivo .zip (egdbhealth_README.docx). Pero, a un nivel alto, los requisitos previos son:
- Necesita un cliente de base de datos para el tipo de base de datos (Oracle, PostgreSQL o SQL Server) al que se está conectando (http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/database-clients.htm).
- Si está utilizando "Operating System Authentication" con SQL Server, y su eGDB es propiedad de "dbo" (en lugar de "sde"), debe ejecutar egdbhealth como un usuario de Windows que sea dbo. En otras palabras, debe conectarse como el "Geodatabase Administrator" (http://desktop.arcgis.com/en/arcmap/latest/manage-data/gdbs-in-sql-server/geodatabase-administrator-sqlserver.htm). Debe conectarse como el Geodatabase Administrator con Oracle o PostgreSQL, pero eso generalmente significa conectarse como el usuario llamado "sde".
- Si se conecta a Oracle o PostgreSQL, debe haber habilitado la biblioteca de tipos ST_Geometry (http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/add-the-st-geometry-type-to-an-oracle-database.htm o http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/add-the-st-geometry-type-to-a-postgresql-database.htm).
Ejecución
Doble clic en egdbhealth.exe abrirá una ventana de comandos y un formulario de Windows.
Siga las indicaciones en el formulario para completar la información de conexión para su base de datos. Las sugerencias emergentes proporcionan pistas sobre la naturaleza de la información requerida. Pero, en principio, la información es la misma que proporcionaría a ArcGIS para conectarse a la base de datos como el "Geodatabase Administrator."

El botón "Test" intentará confirmar que puede conectarse, con los privilegios requeridos, al eGDB. Si la prueba es exitosa, el botón "Test" se convertirá en un botón "Run". Hacer clic en ese cerrará el formulario y comenzará a ejecutar la herramienta en la ventana de comandos.
Cuando la herramienta termine, abrirá el subdirectorio "output" que contendrá cinco archivos de salida:
- Un archivo HTML que contiene metadatos sobre el eGDB consultado y el objetivo RDBMS y cómo se realiza la conexión.
- Un archivo Excel "Context" que contiene información descriptiva sobre el eGDB y el objetivo RDBMS.
- Un archivo Excel "Expert" que contiene información evaluativa, clasificada como "Critical", "Warning", e "Information".
- Un archivo png que representa el árbol de versiones.
- Un archivo png que representa el árbol de estados.
Presentando la Salida
Un ejemplo de los archivos de salida se muestra a continuación:

Los archivos llevarán el "GDB Friendly Name" que especificó en el formulario (en este ejemplo, "SQL_GIS").
El Archivo Expert Excel
El archivo Expert Excel es el principal artefacto informativo. Proporciona la información evaluativa sobre el sistema eGDB objetivo. Por ejemplo, si el eGDB no ha sido comprimido recientemente, habrá una evaluación que reportará esto como una preocupación.
El archivo tiene una hoja resumen que proporciona una visión general de las evaluaciones. Las evaluaciones están categorizadas por tema general (primera columna, "Category") y clasificadas (columnas Critical, Warning e Informational) para que pueda priorizar su revisión de la información.
La columna Description explica brevemente el propósito de la evaluación. Donde hay un marcador rojo en la celda Description, hay una sugerencia emergente que proporciona aún más información sobre lo que se está evaluando.

Algunos hallazgos no tienen registros para reportar. Por ejemplo, si no hay problema con un tipo dado de Consistencia del Geodatabase, no habrá registros. Sin embargo, muchos hallazgos tendrán algún número de registros con varias clasificaciones. En esos casos, el Nombre (segunda columna) tendrá un hipervínculo a la hoja en el libro que tiene los registros detallados del hallazgo.
El Archivo Context Excel
El archivo Context Excel es similar en estructura pero carece de las columnas clasificatorias expertas (Critical-Warning-Informational). La información es más descriptiva y menos evaluativa. Por ejemplo, en este archivo puede encontrar una lista de todos los Dominios del Geodatabase y las ObjectClasses a las que están relacionados. Esa información no es ni buena ni mala (es decir, no evaluativa). Pero puede ser útil saberlo.

Los registros resaltados en verde tienen sentencias SQL que puede ejecutar para obtener información adicional, según corresponda. Usualmente, estas sentencias SQL son demasiado costosas para ejecutarse sobre todo el contenido del eGDB.
Pero, alguien familiarizado con el eGDB y los problemas que tiene puede tener ideas sobre qué consultas serían útiles ejecutar de todos modos. Por ejemplo, la hoja "SqlGeomTypeSizeSql" tiene una consulta SQL para cada FeatureClass en el eGDB. Si ejecutas una de estas consultas, reportará los tamaños de las geometrías en un FeatureClass. Esta es una operación lo suficientemente costosa como para que no sea apropiado ejecutarla en todos los FeatureClasses por defecto. Pero, si hay un FeatureClass que tiene un problema de rendimiento, puede ser útil que ejecutes la consulta para ese FeatureClass para examinar los tamaños de sus geometrías.<\/P>
<\/P>
Los PNGes<\/H3>Los archivos PNG (un diagrama de árbol de versiones y un diagrama de árbol de estados) suelen ser de interés si tu eGDB tiene datos que han sido registrados como versionados.<\/P> <\/P>El gráfico del árbol de versiones ilustra la jerarquía del árbol de versiones. La codificación por colores (rojo-amarillo-verde) indica el grado relativo de "obsolescencia", o cuánto tiempo ha pasado desde que la versión fue editada o reconciliada.<\/P> <\/P>
<\/P> <\/P>El esquema del árbol de estados ilustra la profundidad y estructura del árbol de estados (que es la estructura detallada sobre la cual se basa el árbol de versiones). La versión Default se muestra en rojo y "State Zero" se muestra en verde. Cuanto más separados estén estos nodos, más costoso es para la base de datos devolver información sobre la versión Default (la versión más comúnmente usada en la mayoría de los sistemas).<\/P> <\/P>
<\/P> <\/P>El HTML<\/H3>El HTML proporciona información general sobre el eGDB, RDBMS y la máquina que es el objetivo de la evaluación. Puede ser solo de interés pasajero en muchos casos.<\/P> <\/P>
<\/P> <\/P>Resumen<\/H2>Este artículo ha descrito el propósito de egdbhealth, cómo ejecutarlo y cuáles son sus salidas. Como las salidas de la herramienta contienen bastante información técnica, otros artículos abordarán cómo usar las salidas para (a) entender y mejorar la salud del eGDB (b) diseñar sistemas GIS.<\/SPAN><\/P> <\/P>Espero que esto te sea útil, no dudes en publicar tus preguntas aquí: https:\/\/community.esri.com\/thread\/231451-arcgis-architecture-series-tools-of-an-architect<\/SPAN><\/A><\/SPAN><\/P> <\/SPAN><\/P>Nota:<\/EM><\/STRONG> Los contenidos presentados arriba son recomendaciones que típicamente mejorarán el rendimiento en muchos escenarios. Sin embargo, en algunos casos, estas recomendaciones pueden no producir mejores resultados de rendimiento, en cuyo caso, puede ser necesario realizar pruebas adicionales de rendimiento y modificaciones en la configuración del sistema.<\/EM><\/SPAN><\/P>