Sie können das Geoverarbeitungswerkzeug Speicherformat ändern verwenden, um vorhandene binäre Spalten, räumliche Spalten oder Raster-Spalten von einem Speichertyp zu einem anderen zu migrieren. Dazu geben Sie ein Konfigurationsschlüsselwort an, das den Parameter "ATTRBUTE_BINARY", "GEOMETRY_STORAGE" oder "RASTER_STORAGE" enthält. Der Parameter muss auf den neuen Speichertyp festgelegt werden, in den Sie die Daten konvertieren möchten.
Es ist wichtig, das Konfigurationsschlüsselwort so zu erstellen, dass es den richtigen Parameter und Wert enthält. Wenn Sie ein Schlüsselwort mit falschen oder fehlenden Informationen angeben, werden die Informationen aus dem Schlüsselwort "DEFAULTS" gelesen. Esri empfiehlt, speziell für die Migration ein benutzerdefiniertes Schlüsselwort zu erstellen. Achten Sie darauf, dass das Schlüsselwort den Parameter und den Wert für den Speichertyp enthält, in den Sie die Daten migrieren, sowie einen UI_TEXT-Parameter. Der UI_TEXT-Parameter macht das Schlüsselwort für ArcGIS-Clients verfügbar.
Unten sind die Migrationspfade aufgeführt, die von den einzelnen Datenbankmanagementsystemen (DBMS) unterstützt werden:
DBMS | Konfigurationsparameter | Migration von/nach |
---|---|---|
Oracle | ATTRIBUTE_BINARY | LONG RAW nach BLOB |
GEOMETRY_STORAGE | LONG RAW (SDEBINARY) nach BLOB (SDELOB) | |
LONG RAW (SDEBINARY) nach ST_GEOMETRY | ||
BLOB (SDELOB) nach ST_GEOMETRY | ||
SDO_GEOMETRY nach ST_GEOMETRY | ||
RASTER_STORAGE | LONG RAW nach BLOB | |
LONG RAW nach ST_RASTER* | ||
BLOB nach ST_RASTER* | ||
PostgreSQL | RASTER_STORAGE | BYTEA nach ST_RASTER* |
SQL Server | RASTER_STORAGE | IMAGE nach ST_RASTER* |
GEOMETRY_STORAGE | SDEBINARY nach GEOMETRY | |
SDEBINARY nach GEOGRAPHY | ||
OGCWKB nach GEOMETRY | ||
OGCWKB nach GEOGRAPHY |
*ST_Raster muss in der Geodatabase installiert sein. Anleitungen dazu finden Sie unter Installieren von ST_Raster in Oracle, Installieren von ST_Raster in PostgreSQL oder Installieren von ST_Raster in SQL Server.
Welche Gründe gibt es für das Migrieren von Daten?
Es gibt zwei Gründe für die Migration von Daten:
- Sie möchten auf räumliche Daten oder Raster-Daten per Structured Query Language (SQL) zugreifen.
- Sie möchten von einem Datentyp, der möglicherweise bald nicht mehr unterstützt wird, zu einem unterstützten Datentyp wechseln.
Datenzugriff mit SQL
Der Zugriff auf die Informationen in einer Geodatabase per SQL ermöglicht es externen Anwendungen (also nicht in einer ArcObjects-Umgebung entwickelten Anwendungen), die von einer Geodatabase verwalteten Tabellendaten zu verwenden. Falls diese Anwendungen auf räumliche Daten oder Raster-Daten in der Geodatabase zugreifen müssen, müssen Sie die räumlichen oder Raster-Daten in Datentypen speichern, die den SQL-Zugriff zulassen. Wenn Sie z. B. den ST_Raster-Speichertyp verwenden, können Sie per SQL auf die Raster-Daten zugreifen. Dies ist nicht ohne Weiteres möglich, wenn die Raster-Daten in einem Feld mit dem Format BLOB, LONG RAW, IMAGE, BINARY oder BYTEA gespeichert sind.
Wechseln von Typen, die in zukünftigen Versionen möglicherweise nicht mehr unterstützt werden
Oracle empfiehlt in seinen Datenbanken die Verwendung der Datentypen BLOB oder BFILE anstelle von LONG RAW. Obwohl LONG RAW-Spalten noch unterstützt werden, sollten Sie, falls Sie in der aktuellen Geodatabase in Oracle Felder mit LONG RAW-Attributen, -Geometrie oder -Rastern verwenden, diese in andere Formate migrieren. Dies ist die Vorbereitung für den Fall, dass diese Formate nicht mehr unterstützt werden.
Die Speicherung für Attribut-, Geometrie- und Raster-Spalten in einer Geodatabase wird von den DBTUNE-Parametern "ATTRIBUTE_BINARY", "GEOMETRY_STORAGE" und "RASTER_STORAGE" gesteuert. Die Standardwerte für diese Parameter unter dem DBTUNE-Konfigurationsschlüsselwort "DEFAULTS" variieren je nach der Version von ArcGIS, die Sie beim Erstellen der Geodatabase verwendet haben. Die folgende Tabelle zeigt die Standardeinstellung unter dem Schlüsselwort "DEFAULTS" in der DBTUNE-Tabelle von Geodatabases in Oracle.
Parameter | Standardeinstellung unter ArcGIS 9.3 und höheren Versionen | Standardeinstellung unter ArcGIS 9.2 | Standardeinstellung vor ArcGIS 9.2 |
---|---|---|---|
ATTRIBUTE_BINARY | BLOB | BLOB | LONG RAW |
GEOMETRY_STORAGE | ST_GEOMETRY | LONG RAW (SDEBINARY) | LONG RAW (SDEBINARY) |
RASTER_STORAGE | BLOB | LONG RAW | LONG RAW |
Daten, die in Geodatabases der neuen Version 9.3 (ohne Aktualisierungen) oder höherer Versionen mithilfe der standardmäßigen Parametereinstellungen erstellt wurden, verwenden den Speichertyp "LONG RAW" nicht. Alle vorhandenen Daten, für die bestimmte oder alle diese Parameter auf "LONG RAW" festgelegt wurden, sowie alle neuen Daten in aktualisierten Geodatabases, für die diese Parameter auf "LONG RAW" festgelegt sind, enthalten jedoch noch LONG RAW-Spalten. Um die Datentypen für diese Spalten zu ändern, müssen Sie die DBTUNE-Einstellungen ändern und die Daten migrieren.
Ab ArcGIS 10.1 verwenden die in Geodatabases in SQL Server erstellten Feature-Classes standardmäßig den Microsoft-Geometrietyp. Um den Speichertyp der vorhandenen Feature-Classes in den Geometriespeichertyp zu ändern, verwenden Sie das Geoverarbeitungswerkzeug Speicherformat ändern oder ein Python-Skript.
Vor der Migration
Die folgenden Bedingungen müssen vor dem Konvertieren der Daten erfüllt sein:
- Sie müssen vor der Migration eine Sicherungskopie der Daten anlegen.
- Wenn Sie den räumlichen Spaltendatentyp konvertieren, müssen die Daten mit hoher Genauigkeit gespeichert sein. Falls die Daten noch mit normaler Genauigkeit gespeichert sind, müssen Sie diese vor dem Migrieren des Speichertyps zuerst mit hoher Genauigkeit speichern. Führen Sie die Aktualisierung mit dem Geoverarbeitungswerkzeug Raumbezug aktualisieren aus.
- Die Tabelle oder Feature-Class muss bei der Geodatabase registriert sein.
- Das Konfigurationsschlüsselwort, das Sie beim Migrieren des Datentyps angeben, muss den richtigen Wert für den Parameter "GEOMETRY_STORAGE", "ATTRIBUTE_BINARY" bzw. "RASTER_STORAGE" enthalten. Falls Sie z. B. eine LONG RAW-Geometriespalte nach ST_GEOMETRY migrieren möchten, aber ein Schlüsselwort angeben, für das der Parameter "GEOMETRY_STORAGE" auf SDO_GEOMETRY festgelegt ist, schlägt die Migration fehl, weil es sich nicht um einen unterstützten Migrationspfad handelt.
- Sie müssen als Besitzer der Tabelle angemeldet sein, in der die zu migrierenden Spalten enthalten sind.
- Für die Migration einer Feature-Class in den SQL Server-Typ "GEOGRAPHY" ist es erforderlich, dass die Daten in einem der geographischen Koordinatensysteme vorliegen, die vom Typ "GEOGRAPHY" unterstützt werden.
- Wenn die Geodatabase in SQL Server 2008 oder 2008 R2 gespeichert ist, dürfen Feature-Classes, die auf den SQL Server-Typ "GEOGRAPHY" migriert wurden, keine Z- oder M-Koordinatenwerte enthalten.