Puede utilizar la herramienta de geoprocesamiento Migrar almacenamiento para migrar las columnas binaria, espacial o ráster existentes de un tipo de almacenamiento a otro. Esto se realiza especificando una palabra clave de configuración que contenga el parámetro ATTRBUTE_BINARY, GEOMETRY_STORAGE, o RASTER_STORAGE configurado para el tipo de almacenamiento nuevo al cual desea convertir los datos.
Es importante crear la palabra clave de configuración para incluir el valor y el parámetro correctos. Si especifica una palabra clave con información faltante o incorrecta, la información se lee desde la palabra clave DEFAULTS. Esri recomienda crear una palabra clave personalizada específica de la migración. Asegúrese de que la palabra clave contenga el parámetro y el valor a los cuales vaya a migrar los datos, además de un parámetro UI_TEXT. El parámetro UI_TEXT permite que la palabra clave esté disponible para los clientes ArcGIS.
Las siguientes son las rutas de migración admitidas para cada sistema de administración de base de datos (DBMS):
DBMS | Parámetro de configuración | Migrar desde/hacia |
---|---|---|
Oracle | ATTRIBUTE_BINARY | LONG RAW a BLOB |
GEOMETRY_STORAGE | LONG RAW (SDEBINARY) a BLOB (SDELOB) | |
LONG RAW (SDEBINARY) a ST_GEOMETRY | ||
BLOB (SDELOB) a ST_GEOMETRY | ||
SDO_GEOMETRY a ST_GEOMETRY | ||
RASTER_STORAGE | LONG RAW a BLOB | |
LONG RAW a ST_RASTER* | ||
BLOB a ST_RASTER* | ||
PostgreSQL | RASTER_STORAGE | BYTEA a ST_RASTER* |
SQL Server | RASTER_STORAGE | IMAGE a ST_RASTER* |
GEOMETRY_STORAGE | SDEBINARY a GEOMETRY | |
SDEBINARY a GEOGRAPHY | ||
OGCWKB a GEOMETRY | ||
OGCWKB a GEOGRAPHY |
*ST_Raster debe instalarse en la geodatabase. Consulte las instrucciones en Instalar el tipo ST_Raster en Oracle, Instalar el tipo ST_Raster en PostgreSQL o Instalar el tipo ST_Raster en SQL Server.
¿Por qué debo migrar datos?
Hay dos razones por las que puede migrar los datos:
- Para acceder a los datos espaciales o ráster mediante el lenguaje de consulta estructurado (SQL)
- Para cambiar de un tipo de datos que tal vez no se admite en el futuro a otro que esté admitido
Acceda a los datos con SQL
El acceso a la información en una geodatabase a través de SQL permite que aplicaciones externas (que no se desarrollan en un entorno de ArcObjects) funcionen con los datos tabulares que administra la geodatabase. Si estas aplicaciones deben acceder a datos espaciales o de ráster en la geodatabase, debe almacenar esos datos en un tipo de datos que admita el acceso a través de SQL. Por ejemplo, el uso del tipo de almacenamiento ST_Raster permite acceder a los datos ráster con SQL, algo que no se puede hacer fácilmente si los datos ráster se almacenan en un campo BLOB, LONG RAW, IMAGE, BINARY o BYTEA.
Evite los tipos que tal vez no se admitan en versiones futuras
Oracle recomienda el uso de tipos de datos BLOB o BFILE en vez de tipos de datos LONG RAW en las bases de datos. Si bien las columnas de LONG RAW todavía se admiten, si tiene campos de ráster, de geometría o de atributos de LONG RAW en la geodatabase de ArcSDE actual en Oracle, debe migrarlas a un formato distinto para cuando no se admitan más.
El almacenamiento para las columnas de ráster, de geometría y de atributos en una geodatabase se controla con los parámetros de DBTUNE: ATTRIBUTE_BINARY, GEOMETRY_STORAGE y RASTER_STORAGE, respectivamente. Los valores predeterminados para estos parámetros en la palabra clave de configuración DBTUNE DEFAULTS son distintos según la versión de ArcGIS que utilizó cuando creó la geodatabase. La tabla siguiente muestra la configuración predeterminada en la palabra clave DEFAULTS en la tabla DBTUNE de geodatabases de ArcSDE en Oracle.
Parámetro | Valor predeterminado en ArcGIS 9.3 y versiones posteriores | Valor predeterminado en ArcGIS 9.2 | Valor predeterminado antes de 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 |
Los datos que se crearon en geodatabases 9.3 nuevas (no actualizadas) o en versiones posteriores con la configuración de parámetros predeterminados no utilizan el tipo de almacenamiento LONG RAW. Sin embargo, todo dato existente que se creó con alguno o todos estos parámetros configurados en LONG RAW o cualquier otro dato nuevo en las geodatabases actualizadas que tienen estos parámetros configurados en LONG RAW seguirán manteniendo columnas de LONG RAW. Para cambiar los tipos de datos para estas columnas, deberá modificar la configuración de DBTUNE y migrar los datos.
A partir de ArcGIS 10.1, las clases de entidad creadas en las geodatabases en SQL Server que utilizan la geometría de Microsoft están predeterminadas. Para mover sus clases de entidad existentes al tipo de almacenamiento de geometría, utilice la herramienta de geoprocesamiento Migrar almacenamiento o una secuencia de comandos Python.
Antes de migrar...
Antes de convertir los datos debe cumplir las siguientes condiciones:
- Debe hacer una copia de seguridad de los datos antes de migrarlos.
- Si va a convertir el tipo de datos de la columna espacial, debe almacenar los datos con alta precisión. Si los datos se almacenaron con precisión básica, primero deberá migrarlos a una precisión alta antes de migrarlos al tipo de almacenamiento. Use la herramienta de geoprocesamiento Mejorar referencia espacial para actualizar a alta precisión.
- La tabla o clase de entidad se debe registrar con la geodatabase.
- La palabra clave de configuración que especifique al migrar el tipo de datos debe contener el valor correcto para los parámetros GEOMETRY_STORAGE, ATTRIBUTE_BINARY, o RASTER_STORAGE. Por ejemplo, si desea migrar una columna de geometría de LONG RAW a ST_GEOMETRY, pero especifica una palabra clave que tiene el parámetro GEOMETRY_STORAGE configurado en SDO_GEOMETRY, la migración fallará porque esa no es una ruta de migración compatible.
- Debe haber iniciado sesión como el propietario de la tabla que contiene la columna que se migrará.
- La migración de una clase de entidad al tipo GEOGRAPHY de SQL Server requiere que los datos se encuentren en uno de los sistemas de coordenadas geográficas compatibles con el tipo GEOGRAPHY.
- Si la geodatabase es de SQL Server 2008 o 2008 R2, las clases de entidad migradas al tipo GEOGRAPHY de SQL Server no pueden contener valores de coordenadas z o m.