Seguimiento de Cambios de Particiones Lógicas y Vistas Materializadas
Describe información sobre el marco de metadatos de seguimiento de cambios de particiones lógicas (LPCT) y la reescritura de consultas con seguimiento de cambios de particiones lógicas en Autonomous Database.
- Acerca del seguimiento de cambios de particiones lógicas
El seguimiento de cambios de particiones lógicas (LPCT) realiza un seguimiento de la caducidad de las vistas materializadas. - Uso del seguimiento de cambios de particiones lógicas
El seguimiento de cambios de particiones lógicas (LPCT) particiona lógicamente una tabla mediante una columna y un método clave especificados. - Ejemplo: Seguimiento de Cambios de Partición Lógica
Muestra los pasos para utilizar el seguimiento de cambios de partición lógica (LPCT) mediante una vista materializada que contiene uniones y agregados.
Acerca del Seguimiento de Cambios de Partición Lógica
El seguimiento de cambios de particiones lógicas permite crear particiones lógicas en tablas base. Evalúa la caducidad de las tablas base para particiones lógicas individuales sin utilizar un log de vista materializada o sin necesidad de particionar ninguna de las tablas utilizadas en la vista materializada.
Cuando se actualizan una o más tablas base dependientes de una vista materializada, una vista materializada se convierte en STALE
y no se puede utilizar para la reescritura de consultas en el modo de integridad forzada por defecto.
El seguimiento de cambios de particiones lógicas (LPCT) proporciona la capacidad de aprovechar la información de partición lógica proporcionada por el usuario de las tablas base de una vista materializada para un seguimiento a nivel de partición más detallado de los datos obsoletos con fines de refrescamiento y reescritura. Mientras que el seguimiento de cambios de partición clásico (PCT) se basa en la partición física de las tablas, LPCT no depende de las tablas que se particionan físicamente; LPCT se puede utilizar con tablas particionadas y no particionadas.
El mecanismo de seguimiento de cambios de partición lógica utiliza los subjuegos FRESH
(particiones) de vistas materializadas a pesar de que otros subjuegos son STALE
. Se pueden lograr tiempos de respuesta más rápidos para las consultas de usuario porque los resultados calculados previamente en las vistas materializadas se utilizan con más frecuencia. Además de aumentar la capacidad de uso de las vistas materializadas, PCT y LPCT también permiten el refrescamiento incremental de las vistas materializadas sin necesidad de logs de vistas materializadas; el refrescamiento puede ser ON DEMAND
o ON COMMIT
.
Al igual que el seguimiento de cambios de partición (PCT), el seguimiento de cambios de partición lógica (LPCT) está asociado a una tabla base y puede identificar con precisión las filas de una vista materializada afectadas por los cambios de datos en la tabla base, según los límites de partición lógica definidos.
Consulte las vistas materializadas avanzadas Vistas materializadas avanzadas para obtener más información.
Uso del Seguimiento de Cambios de Partición Lógica
El seguimiento de cambios de particiones lógicas (LPCT) realiza particiones lógicas de una tabla mediante una columna y un método clave especificados.
La sintaxis de creación del seguimiento de cambios de particiones lógicas es análoga a las particiones físicas. A diferencia de las particiones físicas, que se deben crear como parte de la creación de tablas, LPCT se puede especificar libremente independientemente de la creación de la tabla y su forma, lo que permite una mayor flexibilidad para satisfacer sus necesidades. La creación de LPCT es solo metadatos.
- Creación de particiones lógicas: BNF
describe la sintaxis para crear particiones lógicas de BNF. - Selección de la columna de clave de partición lógica
La clave de partición lógica se especifica para definir los límites de cada partición lógica. - Freshness of Materialized Views Using Logical Partition Change Tracking
El mecanismo de seguimiento de la caducidad del seguimiento de cambios de particiones lógicas (LPCT) registra automáticamente y consolida las estadísticas de cambio internamente en función de la clave de partición lógica y el método de partición especificados durante cada cambio de datos. - Renovación con Vistas Materializadas mediante el Seguimiento de Cambios de Partición Lógica
Mediante el Seguimiento de Cambios de Partición Lógica (LPCT), Oracle sabe que una vista materializada esSTALE
con respecto a algunas particiones lógicas de la tabla base, peroFRESH
con respecto a otras partes. - Refrescamiento de Vistas Materializadas mediante el Seguimiento de Cambios de Partición Lógica
El refrescamiento de Seguimiento de Cambios de Partición Lógica (LPCT) se puede implantar mediante la caducidad de datos más detallada para refrescar de forma incremental los subjuegosSTALE
de una vista materializada, eliminando el refrescamiento completo costoso o el refrescamiento rápido basado en log. - Seguimiento de cambios de particiones lógicas: vistas del diccionario de datos
describe las vistas del diccionario de datos para buscar información sobre las particiones lógicas.
Creación de Particiones Lógicas: BNF
Describe la sintaxis para crear particiones lógicas de BNF.
A continuación se muestra la sintaxis para crear particiones lógicas de BNF:
CREATE LOGICAL PARTITION TRACKING ON table_name
PARTITION BY RANGE (partition_key)
INTERVAL (interval_clause)
(partition_specification);
- Solo están soportados los métodos de partición lógica
RANGE
yINTERVAL
. - Solo se admite una única columna de clave de partición lógica.
- La columna de clave de partición puede ser de estos tipos de dato:
NUMBER
DATE
CHAR
VARCHAR
VARCHAR2
TIMESTAMP
TIMESTAMP WITH TIME ZONE
Tema principal: Uso del seguimiento de cambios de particiones lógicas
Selección de la Columna de Clave de Partición Lógica
La clave de partición lógica se especifica para definir los límites de cada partición lógica.
La clave de partición lógica no es física, lo que significa que las filas de tabla que pertenecen a un rango de claves no se separan en una partición física independiente. La tabla puede ser no particionada o particionada en una clave distinta de la clave de partición lógica. La clave de partición lógica se puede elegir libremente y los límites de partición se pueden hacer flexibles.
Para seleccionar una columna de clave de seguimiento de cambios de particiones lógicas (LPCT), puede considerar una columna agrupada, es decir, una columna en la que los datos están cerca de ordenarse por valor de columna, a la que se hace referencia con frecuencia en los predicados de filtro de consulta. Para una columna en cluster, es probable que se vean afectadas menos particiones lógicas durante las cargas de datos, lo que significa que se deben refrescar menos particiones lógicas STALE
y que hay más particiones lógicas FRESH
listas para su uso para reescrituras. Si una tabla ya está particionada, se recomienda crear un LPCT utilizando una columna diferente a la columna de clave de partición. LPCT ofrece beneficios similares a los del seguimiento de cambios de partición (PCT), y los beneficios combinados no se maximizan si el seguimiento de datos se realiza en la misma columna.
Tema principal: Uso del seguimiento de cambios de particiones lógicas
Actualización de Vistas Materializadas mediante el Seguimiento de Cambios de Particiones Lógicas
El mecanismo de seguimiento de caducidad de seguimiento de cambios de particiones lógicas (LPCT) registra y consolida automáticamente las estadísticas de cambios internamente en función de la clave de partición lógica y el método de partición especificados durante cada cambio de datos.
Los datos de cambio adyacentes se agrupan en una partición "lógica". A diferencia del seguimiento de cambios de partición (PCT), que está vinculado a límites de partición física, el esquema LPCT ofrece flexibilidad para gestionar y agrupar los cambios de datos resultantes de los DML aplicados a la tabla base.
Durante los DML convencionales y las cargas directas, el LPCT adopta el mismo algoritmo que el PCT utiliza para rastrear la estanqueidad. Durante las reescrituras de consulta, LPCT adopta el mismo algoritmo que PCT utiliza para calcular la contención de reescritura.
Cuando una tabla se particiona de forma lógica mediante rangos de claves, una vista materializada definida en la tabla puede utilizar LPCT para el seguimiento de caducidad, refrescamiento y reescritura de consultas, siempre que la vista materializada contenga la clave de partición lógica.
Se soportan todos los tipos de vistas materializadas para LPCT.
Tema principal: Uso del seguimiento de cambios de particiones lógicas
Reescritura con vistas materializadas mediante el seguimiento de cambios de particiones lógicas
Mediante el seguimiento de cambios de particiones lógicas (LPCT), Oracle sabe que una vista materializada es STALE
con respecto a algunas particiones lógicas de la tabla base, pero FRESH
con respecto a otras partes.
Al tener la información de caducidad de datos más detallada de las tablas base, la vista materializada asociada se utilizaría con mayor frecuencia debido a la reescritura de LPCT.
Oracle identifica y utiliza de forma transparente el subjuego FRESH
de vistas materializadas para la reescritura de consultas con el fin de responder consultas complicadas de tablas base cuando QUERY_REWRITE_INTEGRITY = ENFORCED |TRUSTED
.
Si las filas de vista materializada son parcialmente FRESH
con respecto a esas particiones lógicas, se puede producir una reescritura parcial para responder a la consulta parcialmente mediante una vista materializada, es decir, particiones lógicas FRESH
, y parcialmente mediante la tabla base, es decir, las particiones lógicas STALE
.
Tema principal: Uso del seguimiento de cambios de particiones lógicas
Refrescamiento de Vistas Materializadas mediante Seguimiento de Cambios de Particiones Lógicas
El refrescamiento de seguimiento de cambios de particiones lógicas (LPCT) se puede implantar mediante la caducidad de datos más detallada para refrescar de forma incremental los subjuegos STALE
de una vista materializada, eliminando el refrescamiento completo costoso o el refrescamiento rápido basado en logs.
Si se especifica el refrescamiento de LPCT, se identifican las particiones lógicas STALE
y las operaciones de refrescamiento de destino se realizarán solo en esas particiones lógicas.
Para llamar al refrescamiento mediante el seguimiento de cambios de partición lógica, especifique ‘L’
o ‘l’
("lógico") como método de refrescamiento.
Por ejemplo: execute DBMS_MVIEW.REFRESH(<materialized_view_name>,’L’);
Si se especifica REFRESH FORCE
, se selecciona un refrescamiento FAST
y se realiza si es posible, o bien, realiza un refrescamiento COMPLETE
. Durante el refrescamiento de la vista materializada FORCE
, el refrescamiento de LPCT tiene la misma prioridad que el refrescamiento de seguimiento de cambios de partición (PCT).
Tema principal: Uso del seguimiento de cambios de particiones lógicas
Seguimiento de Cambios de Particiones Lógicas: Vistas del Diccionario de Datos
Describe las vistas del diccionario de datos para buscar información sobre particiones lógicas.
-
ALL_MVIEW_DETAIL_LOGICAL_PARTITION
: esta vista muestra la información de actualización de las vistas materializadas, con respecto a una partición lógica de detalles LPCT, a la que puede acceder el usuario actual. Consulte ALL_MVIEW_DETAIL_PARTITION para obtener más información. -
DBA_MVIEW_DETAIL_ LOGICAL_PARTITION
: muestra información de actualización para todas las vistas materializadas de la base de datos, con respecto a una partición lógica de detalles LPCT. Consulte DBA_MVIEW_DETAIL_PARTITION para obtener más información. -
USER_MVIEW_DETAIL_ LOGICAL_PARTITION
: muestra información de actualización para todas las vistas materializadas, con respecto a una partición lógica de detalles LPCT, propiedad del usuario actual. Consulte USER_MVIEW_DETAIL_PARTITION para obtener más información.
Tema principal: Uso del seguimiento de cambios de particiones lógicas
Ejemplo: Seguimiento de Cambios de Partición Lógica
Muestra los pasos para utilizar el seguimiento de cambios de particiones lógicas (LPCT) mediante una vista materializada que contiene uniones y agregados.
- Cree tablas base con particiones de cambio lógicas.
- Cree una vista materializada sobre las tablas con seguimiento de cambios de partición lógica.
- Observe el impacto de los DML en la vista materializada.
- Utilice LPCT para el refrescamiento incremental.