Optimización del Rendimiento de Enlaces en la Nube con Vistas Materializadas
Las vistas materializadas mejoran el rendimiento de los enlaces en la nube al almacenar en caché los datos remotos localmente en la base de datos de consumidor y refrescarlos de forma incremental en lugar de volver a leer todo en la red cada vez.
Las vistas materializadas se suelen utilizar para mejorar el rendimiento, especialmente cuando se almacenan datos en una base de datos local que se obtiene de tablas o vistas remotas a través de un enlace de base de datos. Del mismo modo, las vistas materializadas se suelen utilizar en lugar de vistas cuando hay cálculos o resúmenes extensos, especialmente en juegos de datos de gran tamaño. Las vistas materializadas se refrescan en intervalos especificados, lo que significa que los datos no siempre están actualizados. Sin embargo, las consultas en estas vistas materializadas son significativamente más rápidas en estos casos de uso.
- Refrescamiento de Vistas Materializadas
La base de datos mantiene los datos en las vistas materializadas refrescándolos después de los cambios realizados en las tablas base. El refrescamiento de una vista materializada actualiza automáticamente todos sus índices. En el caso del refrescamiento completo, se necesita un espacio de ordenación temporal para volver a crear todos los índices durante el refrescamiento. - Refrescamiento Incremental de Vistas Materializadas sobre Enlaces de Nube
El refrescamiento incremental se suele llamar refrescamiento FAST porque normalmente se realiza más rápido que el refrescamiento completo. - Registro de un Enlace de Nube con Refrescamiento Rápido de Vista Materializada
Debe registrar un enlace de nube para indicar que el refrescamiento rápido de vista materializada está soportado. Utilice el procedimientoREGISTERen el paqueteDBMS_CLOUD_LINKcon el argumentoMV_FAST_REFRESHpara registrar el enlace de nube. - Actualización de un Enlace de Nube con Refrescamiento Rápido de Vista Materializada
Puede actualizar un enlace de nube para indicar que el refrescamiento rápido de vista materializada está soportado en el enlace de nube. - Ejemplo: caso de uso de refrescamiento incremental de vistas materializadas
Un analista de datos que trabaje con paneles de control en instancias de base de datos de IA autónoma ahora puede definir vistas materializadas en tablas remotas de base de datos de IA autónoma a las que se accede mediante enlaces en la nube y refrescarlas incrementalmente. Esto permite actualizaciones rápidas del panel de control sin recargas de datos completas, mejora la experiencia del usuario y reduce los costos.
Refrescamiento de Vistas Materializadas
La base de datos mantiene los datos en las vistas materializadas refrescándolos después de los cambios realizados en las tablas base. El refrescamiento de una vista materializada actualiza automáticamente todos sus índices. En el caso del refrescamiento completo, se necesita un espacio de ordenación temporal para volver a crear todos los índices durante el refrescamiento.
Tipos de Refrescamiento para Vistas Materializadas:
A continuación se muestran los métodos de refrescamiento incremental para las vistas materializadas que utilizan enlaces en la nube:
-
refrescamiento basado en log
Para conocer diferentes métodos de refrescamiento, puede consultar el capítulo Refrescamiento de Vistas Materializadas.
El refrescamiento de seguimiento de cambios de partición (PCT) y el refrescamiento de seguimiento de cambios de partición lógica (LPCT) no están soportados para las vistas materializadas que utilizan enlaces en la nube.
Refrescamiento Incremental de Vistas Materializadas sobre Enlaces de Nube
El refrescamiento incremental se suele llamar refrescamiento FAST porque normalmente se realiza más rápido que el refrescamiento completo.
Un refrescamiento incremental elimina la necesidad de volver a crear vistas materializadas desde cero. Por lo tanto, el procesamiento solo de los cambios puede generar un tiempo de actualización muy rápido. En las vistas materializadas que utilizan el método de refrescamiento rápido basado en log, un log de vista materializada conserva un registro de los cambios realizados en las tablas base. Un log de vista materializada es un objeto de esquema que registra los cambios realizados en una tabla base para que una vista materializada definida en la tabla base se pueda refrescar de forma incremental. Cada log de vista materializada está asociado a una única tabla base. El Log de Vista Materializada reside en la misma Base de Datos y el esquema que su tabla base. Puede activar Oracle Autonomous AI Database para definir y refrescar vistas materializadas en tablas remotas a las que se accede mediante enlaces en la nube.
Autonomous AI Database Serverless realiza un refrescamiento incremental de las vistas materializadas mediante el refrescamiento FAST. Este método sólo aplica los cambios realizados desde el último refrescamiento, en lugar de realizar un refrescamiento completo de toda la vista materializada.
- Los paneles de control y los informes se pueden actualizar rápidamente sin recargas de datos completas, lo que permite realizar análisis casi en tiempo real.
- Acuerdos de nivel de servicio (SLA) mejorados para cargas de trabajo de análisis a través de una actualización de datos mejorada.
Consulte Tipos de Vistas Materializadas para ver los distintos tipos de vistas materializadas que soportan el refrescamiento incremental con enlaces en la nube.
Registro de un Enlace de Nube con Refrescamiento Rápido de Vista Materializada
Debe registrar un enlace de nube para indicar que el refrescamiento rápido de la vista materializada está soportado. Utilice el procedimiento REGISTER en el paquete DBMS_CLOUD_LINK con el argumento MV_FAST_REFRESH para registrar el enlace de nube.
SALES_VIEW_AGG del esquema CLOUDLINK. A continuación, se puede registrar como un enlace en la nube con la capacidad de refrescamiento rápido activada mediante la transferencia del valor TRUE para el argumento MV_FAST_REFRESH en el procedimiento REGISTER.BEGIN
DBMS_CLOUD_LINK.REGISTER(
schema_name => 'CLOUDLINK',
schema_object => 'SALES_VIEW_AGG',
namespace => 'REGIONAL_SALES',
name => 'SALES_AGG',
description => 'Aggregated regional sales information.',
scope => 'MY$TENANCY',
auth_required => FALSE,
data_set_owner => 'tomholl@example.com',
mv_fast_refresh => TRUE );
END;
/Como proveedor, debe crear la tabla de log de vista materializada en la tabla base de la base de datos de proveedor que corresponde a la vista materializada en la base de datos de consumidor.
Consulte Procedimiento REGISTER para obtener más información.
Actualización de un Enlace de Nube con Refrescamiento Rápido de Vista Materializada
Puede actualizar un enlace de nube para indicar que el refrescamiento rápido de vista materializada está soportado en el enlace de nube.
BEGIN
DBMS_CLOUD_LINK.REGISTER(
schema_name => 'CLOUDLINK',
schema_object => 'SALES_ALL',
namespace => 'TRUSTED_COMPARTMENT',
name => 'SALES',
description => 'Trusted Compartment, only accessible within my compartment. Early sales data.',
scope => 'MY$COMPARTMENT',
auth_required => FALSE,
data_set_owner => 'tomholl@example.com' );
END;
/Supongamos que posteriormente se crea una tabla de log de vista materializada en la tabla SALES_ALL en el esquema CLOUDLINK. El enlace en la nube se puede actualizar para activar la capacidad de refrescamiento rápido mediante la transferencia del valor TRUE para el argumento MV_FAST_REFRESH en el procedimiento UPDATE_REGISTRATION.
BEGIN
DBMS_CLOUD_LINK.UPDATE_REGISTRATION(
namespace => 'TRUSTED_COMPARTMENT',
name => 'SALES',
mv_fast_refresh => TRUE );
END;
/El procedimiento UPDATE_REGISTRATION permite el refrescamiento rápido de vistas materializadas a través de enlaces en la nube al garantizar que se pueda acceder a la tabla de log de vistas materializadas a través del enlace en la nube. Para que sea accesible, debe transferir un valor de TRUE para el argumento MV_FAST_REFRESH.
Consulte el procedimiento UPDATE_REGISTRATION para obtener más información.
Puesto que el proveedor ha creado los logs de vistas materializadas necesarios. Debe refrescar los metadatos del enlace para asegurarse de que refleja las nuevas tablas de log.
Ejemplo: Caso de Uso de Refrescamiento Incremental de Vistas Materializadas
Un analista de datos que trabaje con paneles de control en instancias de Autonomous AI Database ahora puede definir vistas materializadas en tablas remotas de Autonomous AI Database a las que se accede a través de enlaces en la nube y refrescarlas de forma incremental. Esto permite actualizaciones rápidas del panel de control sin recargas de datos completas, mejora la experiencia del usuario y reduce los costos.
Requisitos
Antes de implantar el refrescamiento incremental para las vistas materializadas a través de enlaces en la nube, asegúrese de que se cumplen los siguientes requisitos.
- Los enlaces en la nube se configuran y prueban correctamente.
- La conectividad de red entre las bases de datos de consumidores y proveedores es estable.
- Se otorgan los privilegios adecuados a los usuarios que crearán y refrescarán vistas materializadas.
- La base de datos del proveedor tiene configurado el registro de vistas materializadas para las tablas base.
El analista de datos creará paneles de control en la base de datos de IA autónoma del consumidor que consultarán datos de la base de datos de IA autónoma del proveedor mediante enlaces en la nube. En lugar de realizar exploraciones de tablas completas en la base de datos de IA autónoma (lenta y cara), crean vistas materializadas en la base de datos de IA autónoma de consumo con un refrescamiento rápido para actualizar de forma incremental solo los datos modificados de las tablas de la base de datos de IA autónoma del proveedor.
- El proveedor crea un log de vista materializada en la tabla base.
- En la base de datos de IA autónoma del proveedor, un administrador de base de datos ejecuta uno de estos procedimientos
DBMS_CLOUD_LINK:REGISTER: crea un nuevo registro de enlace en la nube conMV_FAST_REFRESH=TRUE, lo que permite una capacidad de refrescamiento rápido desde el principio.UPDATE_REGISTRATION: modifica un registro de enlace en la nube existente para agregar una capacidad de refrescamiento rápido.
El proveedor ahora sabe que existen logs y puede leerlos.
- El analista de datos, que trabaja en la base de datos de IA autónoma del consumidor (su base de datos de panel de control), ejecuta una sentencia
CREATE MATERIALIZED VIEWconREFRESH FASTpara crear su caché de datos de panel de control.