Über eine Verbindung von ArcGIS-Clients können Sie mit den Daten arbeiten, die in den Datenbankmanagementsystemen oder Datenbankdateien enthalten oder den hier aufgeführten Data Warehouse Appliances aufgeführt sind. Eine Beschreibung der für die Arbeit mit Datenbanken aus ArcGIS verfügbaren Funktionen finden Sie unter Datenbanken und ArcGIS.
Datenbankmanagementsysteme unterscheiden sich voneinander sowohl in Bezug auf ihre Implementierung als auch ihre bereitgestellten Funktionen. Daher sind bei der Arbeit mit dem jeweiligen Datenbanktyp in ArcGIS bestimmte Einschränkungen oder Regeln zu beachten. Diese werden in den folgenden Abschnitten aufgeführt.
Dameng
Räumliche Daten werden im Dameng-Geometrietyp gespeichert. Eine typische Installation von Dameng umfasst einen räumlichen Typ, der jedoch vor seiner Verwendung initialisiert werden muss.
Informieren Sie sich, welche Versionen von Dameng von ArcGIS unterstützt werden.
IBM Db2
Mit Db2 werden Verbindungen zur Datenbank unter Verwendung von Betriebssystemanmeldungen authentifiziert. Wenn Sie jedoch eine Verbindung zu Db2 über das Dialogfeld Datenbankverbindungen oder das Geoverarbeitungswerkzeug Datenbankverbindung erstellen herstellen, können Sie die Option Datenbankauthentifizierung angeben. Auf diese Weise können Sie den spezifischen Benutzernamen und das Kennwort für die Anmeldung speichern, was für die Registrierung der Datenbankverbindung in ArcGIS Server unabdingbar ist.
Informieren Sie sich, welche Versionen von Db2 von ArcGIS unterstützt werden.
Microsoft SQL Server
Auch wenn Microsoft den SQL Server-Benutzerkonten die beliebige Benennung von Schemas, in die Daten geschrieben werden, erlaubt, erfordert ArcGIS, dass die Benutzernamen und Schemanamen von Benutzerkonten, mit denen Tabellen, Sichten oder sonstige Objekte in der Datenbank erstellt werden, identisch sein müssen. Beispielsweise können Sie nicht als "elmer" eine Verbindung über ArcGIS herstellen und in ein Schema namens "dataowner" schreiben.
Informieren Sie sich, welche Versionen von SQL Server von ArcGIS unterstützt werden.
Oracle
ArcGIS unterstützt folgende räumlichen Typen in Oracle-Datenbanken: "SDO_Geometry" von Oracle und "ST_Geometry" von Esri. Bei SDO_Geometry handelt es sich um die separate Installation eines Drittanbieters. Um den Datentyp "ST_Geometry" von Esri für die Speicherung räumlicher Daten zu verwenden, kopieren Sie die ST_Geometry-Shape-Bibliothek auf Ihren Oracle-Computer und führen Sie das Geoverarbeitungswerkzeug Räumlichen Typ erstellen aus, um den Typ "ST_Geometry", Subtypes und Funktionen zu erstellen.
Informieren Sie sich, welche Versionen von Oracle von ArcGIS unterstützt werden.
PostgreSQL
ArcGIS unterstützt die räumlichen PostGIS-Typen "geometry" und "geography" und den räumlichen Typ "ST_Geometry" von Esri in PostgreSQL-Datenbanken. Bei PostGIS handelt es sich um die separate Installation eines Drittanbieters. Um den Datentyp "ST_Geometry" von Esri für die Speicherung räumlicher Daten zu verwenden, kopieren Sie die Bibliothek "ST_Geometry" in Ihre PostgreSQL-Installation, und führen Sie das Geoverarbeitungswerkzeug Räumlichen Typ erstellen aus, um den Typ "ST_Geometry", Subtypes, Sichten und Funktionen zu erstellen.
Auch wenn PostgreSQL den Benutzerkonten die beliebige Benennung von Schemas, in die Daten geschrieben werden, erlaubt, erfordert ArcGIS, dass die Benutzernamen und Schemanamen von Benutzerkonten, mit denen Tabellen, Sichten oder sonstige Objekte in der Datenbank erstellt werden, identisch sein müssen. Beispielsweise können Sie nicht über ArcGIS eine Verbindung als "vlad" herstellen und in ein öffentliches Schema schreiben.
Informieren Sie sich, welche Versionen von PostgreSQL und PostGIS von ArcGIS unterstützt werden.
SAP HANA
Beachten Sie bei der Verwendung von SAP HANA die folgenden Informationen:
- SAP HANA verwendet Datenspeicherung in Spaltenform, die sich als eigenständiger Index verhält. Daher ist für räumliche Spalten in SAP HANA-Tabellen kein räumlicher Index für Abfragen erforderlich.
- SAP HANA verwendet keine benutzerdefinierten Indizes, sodass keine Indizes für Tabellen in SAP HANA verwaltet oder neu erstellt werden müssen.
- Wenn Sie Daten nach SAP HANA laden, muss der von den Daten verwendete Raumbezug in der SAP HANA-Systemtabelle vorhanden sein.
- SAP HANA hat sein Raumbezugssystem EPSG ID 4326 von einer planaren Darstellung von WGS84 in eine Erdkugel-Darstellung geändert. Tabellen, die räumliche Daten in SAP HANA mit dem Raumbezugssystem 4326 speichern, funktionieren möglicherweise in ArcGIS nicht wie erwartet.
Die Erdkugel-Implementierung von WGS84 (EPSG ID: 4326) in SAP HANA enthält wichtige Beschränkungen, die sich auf die Verarbeitung bestimmter Datentypen hinderlich auswirken. So liefern beispielsweise globale Datasets, die die Grenzen von Hemisphären überschreiten, oder Linien über beide Hemisphären hinweg keine einheitlichen Ergebnisse. Mit ArcGIS erstellte oder geladene Daten werden weiterhin mithilfe einer planaren Version des WGS84-Koordinatensystems (EPSG ID 1000004326) gespeichert, um sicherzustellen, dass ArcGIS alle Datentypen verarbeiten kann. Dennoch kann ArcGIS WGS-Daten im Erdkugel-Format lesen, die Sie in SAP HANA mit SQL oder dem Produkt eines Drittanbieters erstellt haben.
- SAP HANA speichert Informationen zu Raumbezugssystemen in der Systemansicht "ST_SPATIAL_REFERENCE_SYSTEMS". In SAP HANA geladene räumliche Daten müssen entweder einen Raumbezug von NULL aufweisen oder einen Raumbezug verwenden, der in der Systemansicht "ST_SPATIAL_REFERENCE_SYSTEMS" enthalten ist. Sollte das Raumbezugssystem für die zu ladenden Daten in der Sicht nicht vorhanden sein, verwenden Sie die SAP HANA-Anweisung CREATE SPATIAL REFERENCE SYSTEM, um die Sicht mit dem benötigten Raumbezugssystem zu aktualisieren.
Tipp:
Weitere Informationen können Sie der Seite CREATE SPATIAL REFERENCE SYSTEM der Dokumentation Raumbezüge in SAP HANA entnehmen.
Wenn für räumliche Daten, die Sie in Ihre SAP HANA-Datenbank importieren oder kopieren, kein Raumbezug definiert ist, weist SAP HANA einen Standard-SRID von 0 zu, was einem kartesischen Raumbezugssystem entspricht, das Daten auf einer 2D-Ebene verarbeitet.
Informieren Sie sich, welche Versionen von SAP HANA von ArcGIS unterstützt werden.
SQLite und OGC GeoPackage
SQLite ist ein in sich abgeschlossenes Format für Datenbankdateien, mit dem auf Simple Features zugegriffen werden kann. Das Format unterstützt einen einzelnen Editor. Eine OGC GeoPackage-Datei wird aus einer SQLite-Datenbankdatei erstellt.
Da es sich bei SQLite- und GeoPackage-Dateien um in sich abgeschlossene Formate handelt, sind sie für den Datenaustausch zwischen Softwarepaketen sowie zum Einbetten von Daten in Softwarepakete geeignet.
Beide Dateitypen unterscheiden sich wesentlich von den anderen in ArcGIS unterstützten Datenbanken.
- Bei den Datenbanken handelt sich um Dateien, weshalb der Zugriff über den als Speicherort gewählten Ordner gesteuert wird. Legen Sie Berechtigungen auf Ebene des Ordners fest, um den Zugriff auf dessen Inhalte einzuschränken.
- Für den Zugriff auf eine SQLite-Datenbank ist es in ArcGIS erforderlich, dass die Datenbankdatei die Erweiterung .sqlite aufweist. Sie können den Speichertyp "ST_Geometry" von Esri oder SpatiaLite verwenden, um räumliche Daten in einer Datenbankdatei mit der Erweiterung .sqlite zu speichern und darauf zuzugreifen.
- Für den Zugriff auf ein GeoPackage ist es in ArcGIS erforderlich, dass die Datei die Erweiterung .gpkg aufweist.
- Sie können nur einen räumlichen Speichertyp pro SQLite-Datenbank verwenden. Weitere Informationen zum Hinzufügen eines räumlichen Speichertyps zu einer vorhandenen Datenbank finden Sie unter Räumliches Aktivieren einer SQLite-Datenbank.
- Die Datentypdefinitionen der Felder werden von SQLite bzw. dem OGC GeoPackage nicht durchgesetzt.
- Es ist nicht möglich, Feature-Layer aus Daten in SQLite- oder GeoPackage-Dateien zu veröffentlichen, jedoch können Kartenbild-Layer veröffentlicht werden.
Ein SQLite oder eine SpatiaLite-Datenbank, die den Speichertyp "ST_Geometry" oder GeoPackage verwendet, erstellen Sie mit dem Geoverarbeitungswerkzeug SQLite-Datenbank erstellen.
Datenzugriff
Sie steuern den Zugriff auf eine SQLite-Datenbank oder auf GeoPackage, indem Sie die Berechtigungen für den Ordner steuern, in dem diese gespeichert werden. Im Gegensatz zu anderen Datenbanken erstellen Sie keine Benutzer, die durch die Datenbank authentifiziert werden, oder erteilen anderen Benutzern keine Berechtigungen für bestimmte Datasets.
Bei der Herstellung einer Verbindung zwischen ArcGIS und SQLite bzw. einem GeoPackage wird dem Ordner eine Verbindung hinzugefügt. Damit ArcGIS Server Zugriff auf die Daten hat, müssen Sie den Ordner bei Ihrer ArcGIS Server-Site registrieren.
SQLite und GeoPackage-Dateien können von mehreren Benutzern gelesen werden. Nehmen Sie jedoch nur dann eine Aktualisierung der Datenbank und ihrer Inhalte vor, wenn niemand anders gerade Daten bearbeitet oder die Datenbank aktualisiert. Hängen Sie beispielsweise keine Daten an vorhandene Tabellen an bzw. erstellen Sie keine Tabelle in der Datenbank, während ein anderer Benutzer Daten lädt oder eine Tabelle in der Datenbank erstellt.
Datentypen
SQLite unterscheidet sich außerdem insofern von anderen Datenbanken, dass Felder keinen bestimmten Datentypen zugewiesen und Datentypdefinitionen nicht streng erzwungen werden. Stattdessen verwendet SQLite Speicherklassen, in denen Werte unterschiedlicher Datentypen gespeichert werden können.
ArcGIS kann jedoch nur mit einem Datentyp pro Feld arbeiten und sorgt dafür, dass Datentypen streng erzwungen werden. Sie sollten diesen Unterschied bei der Erzwingung von Datentypen beachten, wenn Sie SQLite-Daten in ArcGIS anzeigen.
Im folgenden Beispiel wird eine Tabelle mit ganzzahligen und Textfeldern erstellt:
CREATE TABLE mytable (
id INTEGER PRIMARY KEY NOT NULL,
item TEXT,
weight INTEGER,
store TEXT;
Obgleich das Feld "weight" als ganzzahliges Feld definiert ist, lässt SQLite die Speicherung von Zahlen mit Dezimalstellen in diesem Feld zu. Sie können sogar Text darin speichern. Sie können beispielsweise die folgenden Datensätze einfügen:
INSERT INTO mytable (id, item, weight, store) VALUES( 1, "magnetic dual elliptical trainer with seat", 75, "CardioPlus Equipment"
);
INSERT INTO mytable (id, item, weight, store) VALUES( 2, "superfit treadmill4000", 81.2, "Sports Pit"
);
INSERT INTO mytable (id, item, weight, store) VALUES( 3, "serenity yoga mat", .4588, "Aerobic Angels Sporting Goods"
);
INSERT INTO mytable (id, item, weight, store) VALUES( 4, "swim fins", "two", "The Plunge"
);
Die Werte werden allerdings folgendermaßen in ArcGIS angezeigt, da das Feld "weight" als ganzzahliges Feld definiert ist:
id | item | weight | store |
---|---|---|---|
1 | magnetic dual elliptical trainer with seat | 75 | CardioPlus-Ausrüstung |
2 | superfit treadmill4000 | 81 | Sports Pit |
3 | serenity yoga mat | 0 | Aerobic Angels Sporting Goods |
4 | swim fins | 0 | The Plunge |
Unter In ArcGIS unterstützte DBMS-Datentypen wird aufgelistet, welche SQLite-Datentypen welchen ArcGIS-Datentypen zugeordnet sind.
Informieren Sie sich, welche Versionen von SQLite von ArcGIS unterstützt werden.
Teradata Data Warehouse Appliance
Um eine direkte Verbindung von ArcGIS mit einer Teradata Data Warehouse Appliance herzustellen, müssen Sie den Teradata GSS-Client, die ICU-Bibliothek und den ODBC-Treiber in einer bestimmten Reihenfolge auf den ArcGIS-Client-Computern installieren. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit Teradata.
Nachfolgend finden Sie eine Liste der Richtlinien für die Verwendung einer Teradata Data Warehouse Appliance mit ArcGIS:
- Den räumlichen Spalten in den Tabellen muss der Name shape bzw. der Alias shape in einer Sicht zugewiesen werden.
Der zugrunde liegende Speicher für den Teradata-Typ "ST_Geometry" ist CLOB. Daher kann ArcGIS nur anhand des Namens oder Alias der Spalte (shape) feststellen, dass in der Spalte räumliche Daten gespeichert sind.
- Beim Hinzufügen von Tabellen in Teradata über einen ArcGIS-Client werden die Tabellen von ArcGIS grundsätzlich in der benutzereigenen Datenbank erstellt. Das Erstellen von Tabellen in anderen Datenbanken als der eigenen Datenbank des Benutzers wird von ArcGIS nicht unterstützt. (Benutzer- und Datenbankname müssen identisch sein.) Für außerhalb von ArcGIS hinzugefügte Tabellen gilt diese Regel nicht. Benutzer, die über ArcGIS mit Teradata verbunden sind, können die Daten dennoch anzeigen und veröffentlichen. Wenn Sie einen editierbaren Feature-Service veröffentlichen, können Benutzer die Daten bearbeiten.
- Sie müssen die von Teradata bereitgestellten Mosaik-Funktionen verwenden, um einen räumlichen Index in der Teradata-Spalte "ST_Geometry" zu erstellen und zu verwalten.
Teradata verwendet den bereitgestellten räumlichen Mosaik-Index mit einem vordefinierten Interessenbereich. Daher können räumliche ArcGIS-Vorgänge, wie Verkleinern, Vergrößern und Schwenken, die auf dynamischen Eingaben basieren, den Mosaik-Index nicht verwenden. Der Mosaik-Index kann jedoch in einem Abfrage-Layer verwendet werden, wenn die zum Definieren des Abfrage-Layers verwendete SQL-Anweisung den Mosaik-Index explizit verwendet, um eine Teilmenge von Daten auf Grundlage eines Interessenbereichs abzufragen.
- ArcGIS erfordert ein eindeutiges Kennungsfeld zum Rendern von Features in einer Karte und zum Veröffentlichen von Web-Services. ArcGIS Pro fordert Sie auf, dieses eindeutige ID-Feld anzugeben, wenn Sie der Karte eine räumliche Tabelle hinzufügen.
ArcGIS-Werkzeuge fügen keine neuen Werte in die eindeutigen ID-Felder einer Datenbank ein, sie sind vielmehr darauf angewiesen, dass die Werte von der Datenbank in das Feld eingefügt werden. Da Teradata über keinen Datentyp oder integrierten Mechanismus verfügt, um ID-Felder mit Werten zu füllen, können ArcGIS-Werkzeuge, die Zeilen in einer Datenbanktabelle erstellen, nicht mit Teradata verwendet werden.
- Als Teradata-Benutzer ist Ihnen bekannt, dass der Teradata 14.x-Typ "ST_Geometry" nur zweidimensionale räumliche Daten unterstützt. Aus diesem Grund können räumliche Daten, die Z- oder M-Koordinaten enthalten, nicht in Teradata 14.x eingefügt werden. Da der Teradata 15.0-Typ "ST_Geometry" nur Z-Koordinaten, aber keine M-Koordinaten unterstützt, können Sie in Teradata 15.0 keine räumlichen Daten einfügen, die M-Koordinaten enthalten.
- In den meisten Fällen werden in einer Teradata Data Warehouse Appliance sehr große Datenmengen gespeichert. Zum Visualisieren, Durchführen von Analysen oder Veröffentlichen von Daten aus einem ArcGIS-Client, sollten Sie eine Teilmenge an Daten verwenden. Die jeweilige Vorgehensweise hängt davon ab, was Sie mit den Daten vorhaben.
- Wenn Sie Daten zu ArcGIS Pro hinzufügen, um sie in der Karte anzuzeigen und zu analysieren, fügen Sie einen Abfrage-Layer hinzu, und definieren Sie den Abfrage-Layer-Ausdruck so, dass nur eine Teilmenge der Daten zurückgegeben wird.
- Wenn Sie zur Veröffentlichung eines Kartenbild-Layers, der auf registrierte Daten verweist, Daten zu ArcGIS Pro hinzufügen, müssen Sie eine Datenbanksicht definieren, die nur eine Teilmenge der Daten enthält. Datenbanksichten werden in der Datenbank gespeichert. Zum Definieren von Sichten können Sie das Geoverarbeitungswerkzeug Datenbanksicht erstellen oder einen SQL-Client verwenden.
- Wenn Sie Daten zu ArcGIS Pro hinzufügen, um einen Feature-Layer zu veröffentlichen, deaktivieren Sie zuvor die Option, mit der neu hinzugefügte Layer standardmäßig sichtbar gemacht werden. Erstellen Sie als Nächstes eine Definitionsabfrage für den Layer, bei der mit SQL eine Teilmenge an Daten definiert wird. Nachdem Sie die in der Karte angezeigte Datenmenge eingeschränkt haben, machen Sie den Layer sichtbar, und bereiten Sie Ihre Karte für die Veröffentlichung vor.
Vorsicht:
Nur wenn Ihre Karte so konfiguriert ist, dass Daten beim Hinzufügen nicht automatisch angezeigt werden, können Sie Daten direkt über die Datenbankverbindung auf die Karte ziehen, auch wenn Sie noch keine Teilmenge von Daten definiert haben. Es würde extrem lange dauern, die riesigen Datenmengen, die normalerweise in einer Data Warehouse-Anwendung gespeichert sind, auf der Karte anzuzeigen.
- Wenn Sie ArcGIS verwenden, um der Teradata-Datenbank eine Feature-Class hinzuzufügen, und der von Ihnen angegebene Raumbezug für die Feature-Class nicht in der Teradata-Systemtabelle enthalten ist, fügt ArcGIS der Teradata-Tabelle "SPATIAL_REF_SYS" einen Datensatz und damit die "GEOMETRY_COLUMNS"-Tabelle hinzu.
Dadurch können Sie mehr Raumbezüge verwenden als standardmäßig von Teradata bereitgestellt werden. Aktualisierungen auf Hauptversionen von Teradata können diese Tabellen jedoch löschen und neu erstellen, wobei sie jedoch lediglich Standardwerte enthalten.
Bevor Sie Teradata aktualisieren, sollten Sie stets eine Sicherungskopie der Datenbank anlegen. Stellen Sie sicher, dass sie die Daten in diesen Tabellen enthält, damit sie nach einer Teradata-Aktualisierung bei Bedarf wiederhergestellt werden können. Sie können die folgenden allgemeinen Schritte ausführen, um die Datensätze "SPATIAL_REF_SYS" und "GEOMETRY_COLUMNS" während einer Datenbankaktualisierung zu sichern und wiederherzustellen:
- Erstellen Sie eine Sicherungskopie der Datenbank.
- Stellen Sie eine Verbindung mit einer Datenbank her, in der Sie Kopien der Tabellen "SPATIAL_REF_SYS" und "GEOMETRY_COLUMNS" ablegen.
In diesem Beispiel lautet der Name der Datenbank mybackupdb.
database mybackupdb;
- Erstellen Sie Sicherungskopien der Tabellen.
In diesem Beispiel befinden sich die Quelltabellen in der Datenbank sysspatial.
CREATE TABLE mybackupdb.spatial_ref_sys AS sysspatial.spatial_ref_sys WITH DATA; CREATE TABLE mybackupdb.geometry_columns AS sysspatial.geometry_columns WITH DATA;
- Aktualisieren Sie die Teradata-Quelldatenbank.
- Stellen Sie eine Verbindung mit der Datenbank her, in die Sie die Tabellen kopiert haben.
- Stellen Sie die Tabellen in der aktualisierten Datenbank wieder her.
--Restore the geometry columns table. INSERT INTO sysspatial.geometry_columns SELECT * FROM mybackupdb.geometry_columns; --Restore the spatial_ref_sys table. INSERT INTO sysspatial.spatial_ref_sys SELECT * FROM mybackupdb.spatial_ref_sys MINUS SELECT * FROM sysspatial.spatial_ref_sys;
- Nachdem Sie den Inhalt der Tabellen wiederhergestellt haben, können Sie die Sicherungskopien der Tabellen löschen.
DROP TABLE mybackupdb.spatial_ref_sys; DROP TABLE mybackupdb.geometry_columns;
- Weisen Sie den Benutzern, die Daten in der Datenbank erstellen, Berechtigungen für diese Tabellen ggf. erneut zu.
Informieren Sie sich, welche Versionen der Teradata Data Warehouse Appliance und der Client-Bibliotheken von ArcGIS unterstützt werden.
Cloudbasierte Datenbanken als Service
ArcGIS unterstützt verschiedene cloudbasierte Database-as-a-Service-Angebote. Eine Liste der derzeit unterstützten Services finden Sie in den Anforderungen für die Verwendung von ArcGIS mit Datenbanken in der Cloud.
Die ArcGIS-Clients sollten sich grundsätzlich in derselben Cloud und am selben Ort (in derselben Region) wie die Cloud-Datenbanken befinden.
Tipp:
Esri bietet Images für Microsoft Azure und Amazon Web Services (AWS), in denen ArcGIS Enterprise und ArcGIS Pro enthalten sind. Weitere Informationen hierzu finden Sie unter ArcGIS Enterprise unter Microsoft Azure und ArcGIS Enterprise unter AWS.