Cuando se conecta a una geodatabase corporativa desde un cliente de ArcGIS o mediante un servicio web de ArcGIS Server, interactúa con los datasets que usted u otros usuarios de bases de datos hayan agregado a la geodatabase. Para hacer un seguimiento de los datos e implementar el comportamiento de la geodatabase, las geodatabases corporativas usan tablas de sistema.
No debe alterar las tablas de sistema ni su contenido con un software diferente al de ArcGIS o SDK. Sin embargo, puede ver el contenido de las tablas de sistema con SQL.
Tablas de sistema principales
No debe alterar las tablas de sistema ni su contenido con un software diferente al de ArcGIS o SDK. Sin embargo, puede ver el contenido de las tablas de sistema con SQL.
Cuando consulta una base de datos de PostgreSQL que contiene una geodatabase corporativa, verá las siguientes tablas de sistema principales en el esquema sde:
- gdb_conflicts
- gdb_itemrelationships
- gdb_itemrelationshiptypes
- gdb_items
- gdb_itemtypes
- gdb_locks
- gdb_replicalog
- gdb_tables_last_modified
- sde_archives
- sde_branch_tables_modified
- sde_branches
- sde_column_registry
- sde_compress_log: Creada la primera vez que comprimió la geodatabase.
- sde_coordinate_systems
- sde_dbtune
- sde_geometry_columns
- sde_layer_locks
- sde_layers
- sde_lineages_modified
- sde_multibranch_tables
- sde_mvtables_modified
- sde_object_ids
- sde_object_locks
- sde_process_information
- sde_raster_columns
- sde_server_config
- sde_spatial_references: almacenada en el esquema público, no el esquema sde.
- sde_state_lineages
- sde_state_locks
- sde_states
- sde_table_locks
- sde_table_registry
- sde_tables_last_edit_time
- sde_tables_modified
- sde_version
- sde_versions
Las siguientes tablas se encuentran en la geodatabase, pero ya no se usan. Es posible que se eliminen en una versión futura.
- sde_locators
- sde_metadata
- sde_layer_stats
- sde_logfile_pool
- sde_xml_columns
- sde_xml_index_tags
- sde_xml_indexes
Tablas que implementan la funcionalidad de geodatabase corporativa
La información de algunas funcionalidades de geodatabase se almacena solo en las tablas de sistema principales. Por ejemplo, la información de la siguiente funcionalidad se almacena en las tablas de sistema principales y no se crea ninguna otra tabla en la base de datos cuando define o habilita esta funcionalidad en los datos del usuario:
- Reglas de atributos: almacenadas en la tabla de sistema de gdb_items.
- Versiones en rama: se agregan seis campos a la tabla o a la tabla de negocios de la clase de entidad cuando se registra para que participe en el versionado en rama a fin de hacer un seguimiento de las ediciones.
- Dominios: almacenados en la tabla de sistema gdb_items. Un campo de la tabla de sistema gdb_itemtypes identifica al objeto como dominio.
- Clases de relación: almacenadas en las tablas de sistema de gdb_items y gdb_itemrelationships.
Sin embargo, la funcionalidad de geodatabase que se describe en las siguientes secciones crea tablas internas adicionales cuando habilita la funcionalidad o la usa.
Archivos de geodatabase
Es posible realizar el seguimiento del historial del tiempo de transacción de sus datos mediante el archivado de geodatabase. El tiempo de transacción representa el momento en el tiempo en que se la entidad se agregó, eliminó o actualizó en la base de datos.
Cuando habilita el archivado de geodatabase en un atabla o una clase de entidad, se crea una clase de archivo. Una clase de archivo es una copia de la tabla de negocios y contiene los mismos campos más tres campos nuevos: gdb_from_date, gdb_to_date y gdb_archive_oid. Al habilitar el archivado en una tabla o clase de entidad que toma parte en una versión tradicional, también se agrega un registro a la tabla de sistema sde_archives. Este registro almacena los Id. de registro de la tabla habilitada para el archivado y su tabla de clases de archivos asociada.
El nombre de la tabla de clases de archivos es el mismo que el de la tabla de negocios original con un guion bajo y la H incorporada. Por ejemplo, si se habilita una clase de entidad con el nombre buildings para el archivado, también se crea una clase de archivo llamada buildings_H. Esta tabla de clase de archivo se almacena en el mismo esquema que la tabla de negocios.
Cuando se cortan registros de archivo innecesarios de clases de archivo no registradas versionadas, la transacción se registra en la tabla de sistema sde_metadata.
Versiones tradicionales
Cuando registra una tabla o clase de entidad para que tome parte en versiones tradicionales, se crean dos tablas para hacer un seguimiento de las ediciones de los datos: la tabla de adiciones y la tabla de borrados. En conjunto, se conocen como las tablas delta.
La tabla de adiciones (a_<registration_id>) mantiene información sobre cada registro (entidad) insertado o actualizado en una tabla de negocios versionada y se consulta para identificar los registros que se han agregado o modificado en un estado determinado de la geodatabase.
La tabla de borrados (d_<registration_id>) mantiene la información de todas las filas que se eliminaron o se actualizaron en una tabla versionada y se consulta para identificar las filas que se han eliminado o modificado en un estado determinado. Cuando se elimina una fila, el registro no se elimina físicamente; se marca como eliminado y nunca aparece en las consultas posteriores de la base de datos.
El registration_id que aparece en los nombres de la tabla de adiciones y la tabla de borrados es el valor de la tabla versionada de la tabla de sistema sde_table_registry.
Estas tablas se crean en el mismo esquema de usuario que la tabla o clase de entidad registrada como versionada.
Además de las tablas delta, las tablas de sistema principales que hicieron un seguimiento de las tablas y ediciones versionadas son las siguientes: sde_states, sde_state_lineages, sde_mvtables_modified y sde_versions.
Tablas keyset
Los clientes de ArcGIS utilizan tablas keyset para mejorar el rendimiento de las consultas. Las tablas keyset almacenan una lista de filas seleccionadas cuando un cliente de ArcGIS ejecuta una consulta de relación de geodatabase que une tablas mediante atributos que son del tipo entero, número, fecha o cadena de caracteres. Acomodan uniones mediante atributos distintos del campo Id. de objeto.
La geodatabase no contiene ninguna tabla keyset hasta que no realice una de las siguientes operaciones:
- Seleccionar más de 99 registros desde una clase de entidad en un mapa de ArcGIS Pro o ArcMap, y la clase de entidad participa en una clase de relación.
- En ArcGIS Pro o ArcMap, abrir la tabla de atributos de una clase de entidad que participe en una clase de relación y recuperar la tabla relacionada.
Se crea una tabla keyset como tabla temporal global por cada conexión de cada sesión. Como es una tabla temporal, la tabla keyset se elimina cuando el usuario se desconecta de la geodatabase. Sin embargo, puede que observe que los esquemas temporales creados por PostgreSQL para almacenar esta tabla permanecen. Tienen nombres como pg_temp_3.
Los nombres de las tablas keyset tienen este formato:
keyset_<process_id>, donde <process_id> es el número de identificación de proceso de la sesión que provocó la creación de la tabla keyset.
Tablas de archivo de registro
Los clientes de ArcGIS utilizan tablas de archivo de registro para mejorar el rendimiento de las consultas al almacenar listas de filas seleccionadas. Las tablas de archivo de registro utilizan uniones basadas en atributos de Id. de objeto.
Las geodatabases de PostgreSQL utilizan tablas temporales en la base de datos para tabla sde archivos de registro. Estas tablas se crean para cada usuario y su nombre es pg_temp<#>.sde_logfiles.