17.20 - Estrategia de bloqueo de restauración de DSA - BAR - Data Stream Architecture

Teradata® DSA Guía del usuario

Product
BAR
Data Stream Architecture
Release Number
17.20
Published
Marzo de 2022
Content Type
Guía del usuario
Publication ID
B035-3150-101K-ESN
Language
Español (España)

Al comienzo del procesamiento de un trabajo de restauración, DSA obtiene un bloqueo exclusivo de utilidad de host (HUT) en cada objeto del plan de trabajo. Puesto que la definición del objeto y los datos se están escribiendo, DSA necesita un bloqueo exclusivo en estos objetos para que no haya ningún conflicto de escritura en el sistema. Si el plan de trabajo incluye una base de datos, DSA establecerá un bloqueo de HUT exclusivo en la base de datos completa. Si el plan de trabajo incluye un objeto, DSA colocará un bloqueo de HUT exclusivo en el objeto.

Además, la restauración establece bloqueos de escritura en varias tablas de DBC mientras se están restaurando las definiciones de objeto. Estos bloqueos se mantienen durante la fase de diccionario. Las tablas que se bloquean son TEXTTBL, IDCOL, DEPENDENCY, JAR_JAR_USAGE, ROUTINE_JAR_USAGE, ERRORTBLS, JARS, STATSTBL, QUERYSTATSTBL, REFERENCEDTBLS, REFERENCINGTBLS, UNRESOLVEDREFERENCES, CONSTRAINTNAMES, TRIGGERSTBL, OBJECTUSAGE, UIF_INFO, SERVERTBLOPINFO, DBCASSOCIATION, TVM, INDEXES, TVFIELDS, UDFINFO y TABLECONSTRAINTS. También se establece un bloqueo de acceso en DBASE y DATASETSCHEMAINFO. Estos bloqueos son a nivel de tabla.

Un trabajo reiniciado puede establecer un bloqueo exclusivo de utilidad de host (HUT) a nivel de tabla incluso si la definición de trabajo original es una restauración de nivel de base de datos.

Por ejemplo, Job1 copia DB1 y DB2 a nivel de base de datos. DB1 y DB2 tienen table1, table2 y table3 respectivamente, y el trabajo se interrumpe después de que se complete DB1.table1. DB1 se completa parcialmente y no se completa ningún objeto en DB2. En este caso, el trabajo de reinicio establece un bloqueo a nivel de tabla en DB1.table2 y DB1.table3 y establece un bloqueo a nivel de base de datos en DB2.

El bloqueo exclusivo Hut se libera tan pronto como el objeto está completamente restaurado.
  • Para los objetos sin encabezado de tabla que se restauran a nivel de objeto, el bloqueo se libera al final de la fase de diccionario.
  • Para las tablas que se restauran a nivel de objeto, el bloqueo se libera en cuanto el objeto se restaura por completo.
  • Para los bloqueos a nivel de base de datos, el bloqueo se libera en cuanto todos los objetos de la base de datos se han restaurado completamente.
  • [Advanced SQL Engine 16.20 y versiones posteriores/Teradata Database 16.0 y versiones posteriores] Si se selecciona la opción de tabla vacía durante la copia de seguridad, los bloqueos de las tablas vacías se liberan al final de la fase de diccionario si se restauraron a nivel de tabla.