Opciones de tablas de archivos de registro para geodatabases en Db2

Las geodatabases corporativas utilizan tablas de archivo de registro para mantener listas de registros seleccionados. Los registros se introducen en las tablas de archivos de registro para que la aplicación los utilice posteriormente en las situaciones siguientes:

  • Cree (o una herramienta u otro proceso que ejecute) un conjunto de selección de un tamaño concreto (más de 100 registros en ArcMap; más de 1000 registros en ArcGIS Pro; más de 1000 registros cuando se solicitan ObjectID de un servicio de entidades).
  • Puede conciliarlos o publicarlos en una geodatabase versionada.

Las tablas de archivos de registro almacenan los Id. de las entidades seleccionadas para que se puedan volver a visualizar. Esto permite un análisis y un procesamiento de datos más rápido.

Cuando solicita registros directamente de la base de datos en ArcGIS Pro 2.8, los archivos de registro se escriben en tablas temporales globales.

Cuando solicita registros por medio de un servicio de entidades o desde ArcMap, existen tres opciones de archivos de registro: compartidos, basados en sesión y grupos de archivos de registro basados en sesión. Cada opción se describe en una sección individual dentro de este tema.

Las geodatabases de IBM Db2 usan tablas de archivos de registro compartidos de forma predeterminada, pero puede cambiar la configuración de las tablas de archivos de registro con la herramienta de geoprocesamiento Configurar tablas de archivos de registro de geodatabase.

Archivos de registro compartidos

Todas las sesiones que se conectan como el mismo usuario comparten los archivos de registro compartidos. Si tiene varios usuarios conectados con la misma cuenta, todas esas sesiones insertan y eliminan registros en y de la misma tabla de datos de archivo de registro.

Cuándo utilizar archivos de registro compartidos

Utilice archivos de registro compartidos cuando cada cliente y usuario se conecte con una cuenta de usuario de base de datos diferente.

Cuándo no es aconsejable utilizar archivos de registro compartidos

Puede que no desee utilizar archivos de registro compartidos si dispone de numerosas conexiones con el mismo nombre de usuario, como cuando publica servicios de entidades, lo que genera varias conexiones con el mismo nombre de usuario. Si varios de los usuarios van a realizar consultas de atributos en el mismo servicio de entidades, se pueden producir retenciones y tiempos de espera más largos en la tabla SDE_LOGFILE_DATA. En estos casos, es recomendable utilizar archivos de registro basados en la sesión

Tablas creadas para archivos de registro compartidos

Las tablas de archivo de registro utilizadas para esta opción son SDE_LOGFILES y SDE_LOGFILE_DATA. Se crean en el esquema del usuario que se conecta la primera vez que este realiza una selección que sobrepasa el umbral de selección.

SDE_LOGFILES almacena información sobre cada conjunto de selección (archivo de registro) que se crea. Las columnas logfile_name y logfile_id de esta tabla identifican de manera exclusiva el nombre del archivo de registro, y la columna logfile_id vincula el registro del archivo de registro a la tabla SDE_LOGFILE_DATA. La tabla SDE_LOGFILE_DATA contiene logfile_data_id y el identificador de entidad para los registros seleccionados.

Todos los registros se eliminan en cuanto se borra el conjunto de selección para evitar que la tabla SDE_LOGFILE_DATA crezca demasiado. La tabla SDE_LOGFILES se trunca cuando termina la sesión. SDE_LOGFILE_DATA y SDE_LOGFILES permanecen en el esquema del usuario.

Permisos necesarios para archivos de registro compartidos

Para crear los objetos de datos requeridos, como las tablas, los usuarios deben contar con privilegios que se lo permitan, ya que las tablas de archivos de registro son propiedad del usuario que se conecta. Esto es necesario aunque el usuario tenga acceso de solo lectura a la geodatabase. Si estos privilegios no se conceden, los usuarios recibirán un mensaje de error la primera vez que creen un conjunto de selección que supere el tamaño de umbral de esa aplicación cliente particular. Sin embargo, una vez creadas las tablas SDE_LOGFILES y SDE_LOGFILE_DATA para un usuario, el administrador de base de datos puede revocar los privilegios.

Por ejemplo, Ian es un urbanista que solo selecciona datos de la geodatabase para realizar análisis relacionados con su trabajo. Por esto, se lo consideraría un usuario de sólo lectura. Sin embargo, para crear las tablas SDE_LOGFILES y SDE_LOGFILE_DATA en la geodatabase corporativa de la ciudad, Ian necesita estar habilitado para crear tablas en la geodatabase.

En lugar de concederle el permiso para crear tablas de manera indefinida, el administrador de base de datos otorga los privilegios de forma temporal, pide a Ian que inicie sesión en la geodatabase y que realice una selección que supere el umbral de selección. A continuación, el administrador de base de datos revoca los privilegios de Ian para crear tablas.

Para utilizar tablas de archivos de registro compartidos en Db2, se necesitan los siguientes permisos:

  • CONNECT
  • CREATETAB
  • IMPLICIT_SCHEMA
Nota:

El privilegio CONNECT se otorga por defecto a todos los usuarios; por lo tanto, sólo debe otorgar este permiso de forma explícita si lo revocó de PUBLIC.

Control de almacenamiento opcional de índices y tablas de archivos de registro compartidos

Hay varios parámetros bajo la palabra clave LOGFILE_DEFAULTS de la tabla DBTUNE que controlan cómo y dónde se almacenan las tablas de archivos de registro en la base de datos. No es necesario que configure estos parámetros para utilizar archivos de registro compartidos, pero puede hacerlo si desea modificar el modo en que las tablas SDE_LOGFILES y SDE_LOGFILE_DATA e índices se almacenan en la base de datos.

En Db2, los siguientes parámetros controlan el almacenamiento de las tablas e índices de archivos de registro compartidos:

  • LD_INDEX_DATA_ID
  • LD_INDEX_ROW_ID
  • LD _STORAGE
  • LF_INDEXES
  • LF_STORAGE

Para obtener más información sobre estos parámetros, consulte Parámetros de configuración de Db2.

Archivos de registro basados en la sesión

Las tablas de datos de archivos de registro basados en sesiones están dedicadas a una sola sesión y pueden contener varios conjuntos de selección (archivos de registro). Cada sesión que se inicia requiere un conjunto de tablas para las selecciones.

Cuándo utilizar archivos de registro basados en la sesión

Puede utilizar archivos de registro basados en sesión si tiene gran cantidad de sesiones simultáneas que se realizan con el mismo nombre de usuario a la geodatabase. Por ejemplo, si existen varios servicios que hacen referencia a los datos de la geodatabase, podría utilizar archivos de registro basados en sesión.

Cuándo no es aconsejable utilizar archivos de registro basados en la sesión

Si tiene usuarios de solo lectura que se conectan a la base de datos, no puede utilizar archivos de registro basados en sesión.

La tabla de sesión se elimina del esquema del usuario cuando finaliza la sesión. Esto significa que se tiene que volver a generar cuando sea necesario; por consiguiente, es necesario que los usuarios tengan permiso para crear tablas con el fin de poder utilizar las tablas de archivos de registro basados en sesión.

Tablas creadas para archivos de registro basados en la sesión

Se crean tres tablas: SDE_LOGFILES, SDE_LOGFILE_DATA y SDE_SESSION<SDE_ID>. En realidad, la tabla SDE_LOGFILE_DATA no se utiliza en este caso, pero se crea automáticamente. La tabla SDE_LOGFILES almacena información acerca de la selección configurada más una etiqueta de sesión <SDE_ID> que se incorpora al nombre de la tabla SDE_SESSION. La tabla SDE_SESSION almacena el identificador de entidad de la Id. del conjunto seleccionado y el archivo de registro.

Las tablas SDE_LOGFILES y SDE_LOGFILE_DATA permanecen en la geodatabase. La tabla SDE_LOGFILES se trunca cuando la aplicación de conexión se desconecta. La tabla SDE_SESSION<SDE_ID> se trunca cuando la sesión de aplicación de conexión borra los archivos de registro, y las tablas se eliminan cuando la sesión se desconecta.

Permisos necesarios para archivos de registro basados en la sesión

Los archivos de registro basados en la sesión son propiedad del usuario que inició la sesión de conexión. Esto significa que los usuarios necesitan privilegios para crear los objetos de base de datos requeridos,

Todos los usuarios requieren los siguientes permisos para utilizar tablas de archivos de registro basados en la sesión en Db2:

  • CONNECT
  • CREATETAB
  • IMPLICIT_SCHEMA

Control de almacenamiento opcional de índices y tablas de archivos de registro basados en sesión

Hay varios parámetros bajo la palabra clave LOGFILE_DEFAULTS de la tabla DBTUNE que controlan cómo y dónde se almacenan las tablas de archivos de registro en la base de datos. No es necesario establecerlos para utilizar archivos de registro basados en la sesión, pero puede hacerlo si desea modificar cómo las tablas e índices SDE_LOGFILES, SDE_LOGFILE_DATA y SDE_SESSION se almacenan en la base de datos.

En Db2, los siguientes parámetros controlan el almacenamiento de los índices y las tablas de archivos de registro basados en sesión:

  • LD_INDEX_DATA_ID
  • LD_INDEX_ROW_ID
  • LD_STORAGE
  • LF_INDEXES
  • LF_STORAGE
  • SESSION_INDEX
  • SESSION_STORAGE

Consulte la explicación de estos parámetros en Parámetros de configuración de Db2.

Grupos de archivos de registro que son propiedad del administrador de la geodatabase

El administrador de la geodatabase puede crear un grupo de archivos de registro basados en sesión que otros usuarios pueden revisar y utilizar. No se pueden revisar archivos de registro compartidos desde un grupo de archivos de registro.

El uso de un grupo de archivos de registro evita la necesidad de conceder los permisos de usuarios necesarios para crear objetos en la base de datos.

Cuándo utilizar grupos de archivos de registro

Si no se puede proporcionar a los usuarios la capacidad de crear tablas de archivos de registro en sus propios esquemas se deberá utilizar un grupo de archivos de registro. No obstante, los usuarios todavía necesitarán tener permisos para crear una sesión o conectar con la base de datos.

Cuándo no es aconsejable utilizar grupos de archivos de registro compartidos

En general, utilizar grupos de archivos de registro requiere un poco más de mantenimiento debido a que se debe estimar el número necesario de tablas de archivos de registro, y es posible que tenga que ajustar el tamaño del grupo o el número de grupos utilizados. Recuerde que un grupo grande de archivos de registro o una gran cantidad de grupos de archivos de registro pueden tener un impacto negativo sobre el rendimiento.

Tablas creadas para grupos de archivos de registro

Especifique el número de tablas SDE_LOGPOOL_<table_ID> que la herramienta Configurar tablas de archivos de registro de geodatabase crea en el esquema del administrador de la geodatabase. Por ejemplo, si especifica cinco tablas, las siguientes tablas se crean en el esquema del administrador de la geodatabase:

  • SDE_LOGPOOL_1
  • SDE_LOGPOOL_2
  • SDE_LOGPOOL_3
  • SDE_LOGPOOL_4
  • SDE_LOGPOOL_5

Una tabla adicional en el esquema del administrador de la geodatabase, SDE_LOGFILE_POOL, registra el SDE_ID de la sesión y un Id. de tabla. <table_ID> en el nombre de la tabla SDE_LOGPOOL corresponde al valor de la columna table_ID de la tabla SDE_LOGFILE_POOL.

Cada sesión que necesita una tabla de archivos de registro agrega un registro a la tabla SDE_LOGFILE_POOL y la sesión se asigna a una de las tablas SDE_LOGPOOL_<table_ID> Si se crean archivos de registro adicionales en la misma sesión, por ejemplo, si un segundo conjunto de selección de 300 registros se crea en una sesión de ArcMap, los nuevos archivos de registro (conjunto de selección) se agregan a la misma tabla SDE_LOGPOOL.

Cuando se borran archivos de registro, se trunca la tabla SDE_LOGPOOL que se verifica en la sesión. Por ejemplo, si se borra el segundo conjunto de selección en la sesión de ArcMap, los 300 registros se eliminan de la tabla SDE_LOGPOOL, pero los registros para el primer conjunto de selección se conservan. Cuando se borra la primera selección, estos registros se quitan de la tabla SDE_LOGPOOL.

Si se borra un archivo de registro (un conjunto de selección), se trunca la correspondiente tabla SDE_LOGPOOL.

Permisos necesarios para grupos de archivos de registro

Para utilizar las tablas de archivos de registro en el grupo, sólo es necesario que los usuarios puedan conectar con la base de datos y utilizar los objetos del esquema del administrador de la geodatabase. Por lo tanto, el único permiso que se requiere para utilizar los grupos de tablas de archivos de registro es el permiso CONNECT.

Nota:

El privilegio CONNECT se otorga por defecto a todos los usuarios; por lo tanto, sólo debe otorgar este permiso de forma explícita si lo revocó de PUBLIC.

Control de almacenamiento opcional de los grupos de archivos de registro

Solo hay unos pocos parámetros bajo la palabra clave LOGFILE_DEFAULTS que controlen cómo se almacenan las tablas SDE_LOGPOOL<SDE_ID> y sus índices.

En las geodatabases de Db2, los parámetros LD_STORAGE, LD_INDEX_ROWID y LD_INDEX_DATA_ID DBTUNE se utilizan para establecer el almacenamiento correspondiente a las tablas SDE_LOGPOOL<SDE_ID> y sus índices. Estos tres parámetros también controlan el almacenamiento de los índices y de la tabla SDE_LOGFILE_DATA. Consulte la explicación de estos parámetros en Parámetros de configuración de Db2.

No es necesario que configure estos parámetros para utilizar grupos de tablas de archivos de registro, pero puede hacerlo si desea modificar el modo en que las tablas SDE_LOGPOOL<SDE_ID> e índices se almacenan en la base de datos.