Opmerking: Deze blogpost is de eerste in een serie van drie geplande berichten over egdbhealth. Het tweede deel in de serie zal behandelen hoe je de tool kunt gebruiken om de gezondheid van een Enterprise Geodatabase te evalueren. Het derde deel in de serie zal het gebruik van egdbhealth in een systeemontwerpcontext behandelen.
Introductie
Egdbhealth is een tool voor het rapporteren over verschillende kenmerken van Enterprise Geodatabases (eGDBes). Het biedt beschrijvende informatie over de inhoud van de eGDB en het levert evaluatieve informatie over de eGDB. De evaluatieve informatie is het primaire doel van de tool; om bestaande of latente problemen / uitdagingen met de eGDB aan het licht te brengen. De tool werkt met eGDBes die worden ondersteund door Oracle, PostgreSQL en SQL Server.
Installatie en Uitvoering
Hoewel het geen extensie is voor ArcGIS Monitor, is egdbhealth beschikbaar voor download vanuit de ArcGIS Monitor Gallery: https://arcgismonitor.maps.arcgis.com/home/item.html?id=f343f6b2bbcf434386f6dde1e468e7ab.
Installatie en Vereisten
Om te installeren, download eenvoudig het .zip archief en pak de bestanden uit naar een map naar keuze.
Er zijn enkele vereisten voor het uitvoeren van egdbhealth. Die overwegingen worden besproken in de documentatie in het .zip archief (egdbhealth_README.docx). Maar op hoofdlijnen zijn de vereisten:
- Je hebt een databaseclient nodig voor het type database (Oracle, PostgreSQL of SQL Server) waarmee je verbinding maakt (http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/database-clients.htm).
- Als je "Operating System Authentication" gebruikt met SQL Server, en je eGDB is eigendom van "dbo" (in plaats van "sde"), moet je egdbhealth uitvoeren als een Windows-gebruiker die dbo is. Met andere woorden, je moet verbinden als de "Geodatabase Administrator" (http://desktop.arcgis.com/en/arcmap/latest/manage-data/gdbs-in-sql-server/geodatabase-administrator-sqlserver.htm). Je moet als Geodatabase Administrator verbinden met Oracle of PostgreSQL, maar dat betekent meestal verbinden als de gebruiker genaamd "sde".
- Als je verbinding maakt met Oracle of PostgreSQL, moet je de ST_Geometry typebibliotheek hebben ingeschakeld (http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/add-the-st-geometry-type-to-an-oracle-database.htm of http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/add-the-st-geometry-type-to-a-postgresql-database.htm).
Uitvoering
Door te dubbelklikken op egdbhealth.exe wordt een opdrachtvenster en een Windows-formulier geopend.
Volg de aanwijzingen op het formulier om de verbindingsinformatie voor je database in te vullen. Tooltips geven hints over de aard van de benodigde informatie. Maar in principe is de informatie hetzelfde als wat je zou opgeven aan ArcGIS om verbinding te maken met de database als de "Geodatabase Administrator."

De knop "Test" zal proberen te bevestigen dat je kunt verbinden, met de vereiste privileges, met de eGDB. Als de test succesvol is, wordt de knop "Test" een knop "Run." Door daarop te klikken wordt het formulier gesloten en begint het uitvoeren van de tool in het opdrachtvenster.
Wanneer de tool klaar is, opent deze de subdirectory "output" die vijf uitvoerbestanden bevat:
- Een HTML-bestand met metadata over de bevraagde eGDB en RDBMS-doel en hoe de verbinding tot stand wordt gebracht.
- Een "Context" Excel-bestand dat beschrijvende informatie bevat over het eGDB en RDBMS-doel.
- Een "Expert" Excel-bestand dat evaluatieve informatie bevat, geclassificeerd als "Critical", "Warning", en "Information."
- Een png-bestand dat de versieboom afbeeldt.
- Een png-bestand dat de statusboom afbeeldt.
Introductie van de Output
Een voorbeeld van de uitvoerbestanden wordt hieronder getoond:

De bestanden zullen de "GDB Friendly Name" dragen die je hebt opgegeven in het formulier (in dit voorbeeld, "SQL_GIS").
Het Expert Excel-bestand
Het Expert Excel-bestand is het belangrijkste informatie-artifact. Het biedt evaluatieve informatie over het doel-eGDB-systeem. Bijvoorbeeld, als het eGDB recent niet is gecomprimeerd, zal er een evaluatie zijn die dit als een zorg meldt.
Het bestand heeft een samenvattingsblad dat een overzicht geeft van de evaluaties. De evaluaties zijn gecategoriseerd per algemeen onderwerp (eerste kolom, "Category") en geclassificeerd (Critical, Warning en Informational kolommen) zodat je je beoordeling van de informatie kunt prioriteren.
De kolom Beschrijving legt kort uit wat het doel is van de evaluatie. Waar er een rood markering staat in de Beschrijving-cel, is er een hover-tip die nog meer informatie geeft over wat geëvalueerd wordt.

Sommige bevindingen hebben geen records om te rapporteren. Bijvoorbeeld, als er geen probleem is met een bepaald soort Geodatabase Consistency, zullen er geen records zijn. Echter, veel bevindingen zullen wel een aantal records hebben met verschillende classificaties. In die gevallen heeft de Naam (tweede kolom) een hyperlink naar het blad in het werkboek dat gedetailleerde bevindingen bevat.
Het Context Excel-bestand
Het Context Excel-bestand lijkt qua structuur maar mist de expert (Critical-Warning-Informational) classificatiekolommen. De informatie is meer beschrijvend en minder evaluatief. Bijvoorbeeld, in dit bestand kun je een lijst vinden van alle Geodatabase Domains en ObjectClasses waaraan ze gerelateerd zijn. Die informatie is noch goed noch slecht (dus niet evaluatief). Maar het kan nuttig zijn om te weten.

Records die groen gemarkeerd zijn bevatten SQL-instructies die je kunt uitvoeren voor aanvullende informatie, indien passend. Meestal zijn deze SQL-instructies te kostbaar om uit te voeren op alle inhoud in het eGDB.
Maar iemand die bekend is met de eGDB en de problemen die het heeft, kan toch ideeën hebben over welke queries nuttig zouden zijn om uit te voeren. Bijvoorbeeld, het 1SqlGeomTypeSizeSql7 blad bevat een SQL-query voor elke FeatureClass in de eGDB. Als je een van deze queries uitvoert, rapporteert het de groottes van de geometrieën in een FeatureClass. Dit is een dure operatie die niet geschikt zou zijn om standaard op alle FeatureClasses uit te voeren. Maar als er een FeatureClass is die een prestatieprobleem heeft, kan het nuttig zijn om de query voor die FeatureClass uit te voeren om de groottes van zijn geometrieën te onderzoeken.<\/P>
<\/P>
De PNGes<\/H3>De PNG-bestanden (een versieboomdiagram en een staatboomdiagram) zijn meestal interessant als je eGDB gegevens bevat die als versioned geregistreerd zijn.<\/P> <\/P>De versieboomgrafiek illustreert de hiebrarchie van de versieboom. Kleuren (rood-geel-groen) geven de relatieve mate van 1veroudering7 aan, of hoe lang het geleden is sinds de versie is bewerkt of verzoend.<\/P> <\/P>
<\/P> <\/P>Het staatboomschema illustreert de diepte en structuur van de staatboom (de gedetailleerde structuur waarop de versieboom steunt). De Default-versie wordt in rood weergegeven en 1State Zero7 wordt in groen weergegeven. Hoe verder deze knooppunten uit elkaar liggen, hoe duurder het is voor de database om informatie over de Default-versie terug te geven (de meest gebruikte versie in de meeste systemen).<\/P> <\/P>
<\/P> <\/P>De HTML<\/H3>De HTML geeft wat algemene informatie over de eGDB, RDBMS en machine die het doelwit is van de evaluatie. Het kan in veel gevallen slechts van voorbijgaande interesse zijn.<\/P> <\/P>
<\/P> <\/P>Samenvatting<\/H2>Dit artikel heeft het doel van egdbhealth beschreven, hoe je het kunt uitvoeren en wat de outputs zijn. Omdat de outputs van het hulpmiddel behoorlijk wat technische informatie bevatten, zullen andere artikelen behandelen hoe je de outputs kunt gebruiken voor (a) het begrijpen en verbeteren van eGDB-gezondheid (b) het ontwerpen van GIS-systemen.<\/SPAN><\/P> <\/P>Ik hoop dat je dit nuttig vindt, aarzel niet om je vragen hier te plaatsen: https:\/\/community.esri.com\/thread\/231451-arcgis-architecture-series-tools-of-an-architect<\/SPAN><\/A><\/SPAN><\/P> <\/SPAN><\/P>Opmerking:<\/EM><\/STRONG> De hierboven gepresenteerde inhoud zijn aanbevelingen die doorgaans de prestaties voor veel scenario's zullen verbeteren. In sommige gevallen kunnen deze aanbevelingen echter geen betere prestatie opleveren, in welk geval aanvullende prestatietests en systeemconfiguratie-aanpassingen nodig kunnen zijn.<\/EM><\/SPAN><\/P>