Migración de datos desde un tipo de almacenamiento hacia otro
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 que las palabras clave se creen de manera adecuada 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. Por este motivo, Esri recomienda que cree una palabra clave personalizada específica para la migración para asegurarse de que la palabra clave contenga el parámetro y el valor al cual migrará los datos, como también un parámetro UI_TEXT. El parámetro UI_TEXT permite que la palabra clave esté disponible para los clientes ArcGIS.
Para añadir una palabra clave a la tabla DBTUNE se requiere del comando sdedbtune. Las herramientas del comando de administración de ArcSDE se pueden instalar con el servidor de aplicación de ArcSDE.
Para obtener información sobre los parámetros y las palabras clave de configuración, consulte ¿Qué son los parámetros y las palabras clave de configuración de DBTUNE? y los temas relacionados.
Las siguientes son las rutas de migración admitidas por el 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 los apartados Instalar el tipo ST_Raster en Oracle, Instalar el tipo ST_Raster en PostgreSQL o Instalar el tipo ST_Raster en SQL Server para acceder a las instrucciones.
Si la tabla que está migrando se registró como versionada, al migrarla a un tipo de almacenamiento distinto se actualizan también las columnas correspondientes en la tabla de inserciones. Si la clase de entidad tiene habilitado el archivado, las columnas de la tabla de archivo también se actualizan.
¿Por qué debo migrar los datos?
Hay dos razones por las que puede migrar los datos: 1) para poder acceder a los datos espaciales o de ráster con un lenguaje estructurado de consultas (SQL); 2) para cambiarlos de un tipo de datos que tal vez no sea compatible en el futuro a uno que sí lo sea.
Acceso a través de 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.
Evitar 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 siguiente tabla muestra la configuración predeterminada en la palabra clave DEFAULTS en la tabla DBTUNE de las 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.
Para modificar la configuración de DBTUNE, utilice el comando sdedbtune para agregar un parámetro a una palabra clave existente o exportar, alterar, y después importar el contenido de la tabla DBTUNE. Consulte la Referencia sobre el comando de administración de ArcSDE para obtener información sobre el uso del comando sdedbtune. Como se mencionó anteriormente, el comando y la referencia están instaladas de forma separada y se pueden descargar desde el Portal de atención al cliente de Esri.
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 convierte el tipo de columna espacial, debe almacenar los datos con una 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. Podrá realizarlo tanto con la herramienta de geoprocesamiento Mejorar referencia espacial o con el comando sdelayer y la operación de modificación. Consulte Migrar a alta precisión para obtener información sobre la migración de la precisión de un dataset.
- Si convierte la columna espacial, la tabla debe contener una columna Id. de objeto. Registrar una capa con la geodatabase agrega automáticamente esta columna.
- 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.
- Cuando se migran datos de un tipo de datos a otro, se crea un segmento nuevo en la base de datos a la cual se copian los datos. Después de realizar la migración, los metadatos se reasignan al segmento nuevo y el anterior se elimina. Esto significa que durante la migración hay dos copias de los datos, por lo tanto, asegúrese de tener suficiente espacio en la base de datos para dos copias de los datos.
- Como el almacenamiento de geometría, de ráster y de atributos se puede migrar a un tipo de datos BLOB en Oracle, es recomendable que lea el tema Almacenamiento de datos BLOB en geodatabases en Oracle antes de continuar con la migración.
- 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 hacia el 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 y que la clase de entidad no contenga valores de coordinadas z o m.Sugerencia:
La lista de sistemas de coordenadas compatibles que se pueden utilizar con el tipo GEOGRAPHY de SQL Server se encuentra en la vista del sistema SQL Server sys.spatial_reference_systems.