Paquete DBMS_EXT_TABLE_CACHE
El paquete DBMS_EXT_TABLE_CACHE proporciona rutinas para configurar y gestionar el almacenamiento en caché de los datos a los que se accede con frecuencia desde tablas externas y desde tablas expuestas a través de catálogos montados en Autonomous AI Database.
Resumen de Subprogramas DBMS_EXT_TABLE_CACHE
En esta tabla se resumen los subprogramas incluidos en el paquete DBMS_EXT_TABLE_CACHE.
| Subprograma | Descripción |
|---|---|
| Procedimiento ADD_BY_LIKE | Agrega uno o más archivos que coinciden con los filtros especificados en Lake Cache. |
| Procedimiento ADD_FILE | Agrega un archivo a Lake Cache. |
| Procedimiento ADD_LATEST_FILES | Rellena uno o más archivos según el intervalo de tiempo especificado por el argumento SINCE y el registro de hora actual. |
| Procedimiento ADD_TABLE | Agrega archivos de la tabla de origen especificada en Lake Cache. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
| Procedimiento CLEAR | Borra una caché de lago. |
| Procedimiento CREATE_CACHE | Crea una caché de lago. |
| Desactivar procedimiento | Desactiva una caché de lago. |
| Procedimiento DROP_BY_LIKE | Borrar archivos de la caché del lago según los filtros especificados. |
| Procedimiento DROP_CACHE | Borra una caché de lago. |
| Procedimiento DROP_FILE | Elimina el archivo de origen especificado de la caché de lago. |
| ENABLE Procedimiento | Activa una caché de lago desactivada anteriormente. |
| Función GET_AVAILABLE_QUOTA | Devuelve la cuota de caché disponible restante para un esquema o para una caché de tabla externa específica. |
| Función GET_GLOBAL_CACHE_QUOTA | Devuelve la cuota de caché global resuelta. |
| Función GET_USER_PROPERTY | Recupera la preferencia de almacenamiento en caché para Lake Cache. |
| Procedimiento REFRESH_TABLE | Suprime los datos almacenados en caché para los archivos que ya no existen y carga los archivos que son nuevos o recién modificados. |
| Procedimiento RETIRE_FILES | Suprime uno o más archivos de la caché que son anteriores al intervalo especificado. |
| Procedimiento SET_USER_PROPERTY | Especifica la preferencia de almacenamiento en caché para Lake Cache. |
| Procedimiento VALIDATE | Valida una caché de lago. |
ADD_BY_LIKE Procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.ADD_BY_LIKE carga uno o más archivos de origen especificados en la caché de lago.
Sintaxis
DBMS_EXT_TABLE_CACHE.ADD_BY_LIKE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
path_filters IN CLOB,
esc_char IN VARCHAR2 DEFAULT NULL,
force IN BOOLEAN DEFAULT FALSE);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
path_filters |
PATH_FILTERS es un JSON_ARRAY de filtros de ruta de acceso que se utiliza para buscar patrones especificados en las URL de archivo. |
esc_char |
Especifica el carácter de escape que se utilizará en los filtros de ruta. Si el carácter de escape precede a ' Este parámetro es opcional y el valor predeterminado para este parámetro es |
force |
Fuerza que los archivos existentes especificados se sobrescriban en la caché incluso si los archivos no se modificaron. Este parámetro es opcional y el valor por defecto para el parámetro |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.ADD_BY_LIKE (
owner => 'SALES',
table_name =>'STORE_SALES',
path_filters => '["https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/your_namespace/your_bucket/salesdata1.parquet",
"https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/your_namespace/your_bucket/salesdata2.parquet"]'
);
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
Nota de uso
-
Por defecto, el procedimiento
DBMS_EXT_TABLE_CACHE.ADD_BY_LIKEomite la carga de los archivos cuando:-
Los archivos se almacenaban previamente en caché y aún estaban disponibles en la caché.
-
Los archivos no se han modificado desde la última vez que se almacenaron en caché.
Sin embargo, puede utilizar el parámetro
forcepara sobrescribir los archivos en la caché aunque los archivos no se hayan modificado. -
ADD_FILE Procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.ADD_FILE carga el archivo especificado en la caché de lago.
Sintaxis
DBMS_EXT_TABLE_CACHE.ADD_FILE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
file_url IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
file_url |
Especifica la URL del archivo. |
force |
Fuerza que los archivos existentes especificados se sobrescriban en la caché incluso si los archivos no se modificaron. Este parámetro es opcional y el valor por defecto para el parámetro |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.ADD_FILE (
owner => 'SALES',
table_name => 'STORE_SALES',
file_url => 'https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/your_namespace/your_bucket/salesdata.parquet'
);
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
Notas de uso
-
El procedimiento
DBMS_EXT_TABLE_CACHE.ADD_FILEomite la carga del archivo en la caché si el archivo especificado existe en la caché y no se ha modificado desde la última vez que se almacenó en caché el archivo. -
Puede utilizar el parámetro
forcepara sobrescribir el archivo en la caché aunque el archivo no se haya modificado.
ADD_LATEST_FILES Procedimiento
DBMS_EXT_TABLE_CACHE.ADD_LATEST_FILES rellena uno o más archivos en la caché de lago. Los archivos se rellenan en función del intervalo de tiempo determinado por el argumento SINCE y el registro de hora actual.
Sintaxis
DBMS_EXT_TABLE_CACHE.ADD_LATEST_FILES (
owner IN VARCHAR2,
table_name IN VARCHAR2,
since IN INTERVAL DAY TO SECOND,
max_files IN NUMBER,
force IN BOOLEAN DEFAULT FALSE);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
since |
El parámetro since acepta un valor INTERVAL DAY TO SECOND y se utiliza para calcular el intervalo de tiempo entre el valor since y el registro de hora actual. A continuación, el intervalo de tiempo resultante se utiliza para completar los archivos, en función de la hora de la última modificación. |
max_files |
Especifique el valor Este parámetro es opcional y el valor por defecto es ilimitado cuando no se especifica. |
force |
Fuerza que los archivos existentes especificados se sobrescriban en la caché incluso si los archivos no se modificaron. Este parámetro es opcional y el valor predeterminado de este parámetro es |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.ADD_LATEST_FILES (
owner => 'SALES',
table_name => 'STORE_SALES',
since => INTERVAL '7' DAY,
max_files => 5,
force => TRUE);
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
Nota de uso
-
De manera predeterminada, el procedimiento
DBMS_EXT_TABLE_CACHE.ADD_LATEST_FILESomite el relleno de los archivos cuando:-
Los archivos especificados se almacenaron previamente en caché y aún están disponibles en la caché.
-
Los archivos especificados no se han modificado desde la última vez que se almacenaron en caché.
Sin embargo, puede utilizar el parámetro
forcepara sobrescribir los archivos en la caché aunque los archivos no se hayan modificado. -
ADD_TABLE Procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.ADD_TABLE carga una tabla completa o un determinado porcentaje de la tabla de origen en la caché. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado.
Sintaxis
DBMS_EXT_TABLE_CACHE.ADD_TABLE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
percent_files IN NUMBER DEFAULT NULL,
force IN BOOLEAN DEFAULT FALSE);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
percent_files |
Especifica el porcentaje de los datos de tabla que se van a almacenar en caché. Por ejemplo, de 1 a 100. Por defecto, se cargan todos los archivos. |
force |
Fuerza la sobrescritura de los archivos especificados en la caché aunque no se hayan modificado. Este parámetro es opcional y el valor por defecto para |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.ADD_TABLE (
owner => 'SALES',
table_name => 'STORE_SALES',
percent_files => 50);
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
Notas de uso
-
DBMS_EXT_TABLE_CACHE.ADD_TABLEintenta almacenar en caché toda la tabla o un porcentaje especificado del contenido del archivo en la caché. -
Los parámetros
percent_filesyforcese excluyen mutuamente. -
Por defecto, el procedimiento
DBMS_EXT_TABLE_CACHE.ADD_TABLEomite la carga de los archivos cuando:-
Los archivos especificados se almacenaron previamente en caché y aún están disponibles en la caché.
-
Los archivos especificados no se han modificado desde la última vez que se almacenaron en caché.
Sin embargo, puede utilizar el parámetro
forcepara sobrescribir los archivos en la caché aunque los archivos no se hayan modificado. -
Procedimiento CLEAR
El procedimiento DBMS_EXT_TABLE_CACHE.CLEAR elimina todos los archivos de una caché de lago mientras conserva la caché.
Sintaxis
DBMS_EXT_TABLE_CACHE.CLEAR (
owner IN VARCHAR2,
table_name IN VARCHAR2);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.CLEAR (
owner => 'SALES',
table_name => 'STORE_SALES');
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
CREATE_CACHE Procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.CREATE_CACHE crea una caché de lago en una instancia de base de datos de IA autónoma.
Sintaxis
DBMS_EXT_TABLE_CACHE.CREATE_CACHE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
partition_type IN VARCHAR2,
col_subset IN VARCHAR2 DEFAULT NULL
);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
partition_type |
A continuación se muestran los valores válidos para el parámetro
Consulte Columnas de Metadatos de Tabla Externa para obtener más información. |
col_subset |
col_subset especifica las columnas que se van a almacenar en caché. Proporcione un JSON_ARRAY de nombres de columna de tabla externa; solo estas columnas se almacenan en caché en la caché de lago.col_subset es opcional. Si no especifica col_subset, la caché del lago incluye todas las columnas por defecto. |
Ejemplos
Ejemplo: creación de una caché de lago que incluya todas las columnas
BEGIN
DBMS_EXT_TABLE_CACHE.CREATE_CACHE (
owner => 'SALES',
table_name => 'STORE_SALES',
partition_type => 'FILE');
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
Ejemplo: creación de una caché de lago con un subjuego de columnas
BEGIN
DBMS_EXT_TABLE_CACHE.CREATE_CACHE (
owner => 'SALES',
table_name => 'STORE_SALES',
partition_type => 'FILE',
col_subset => '["PROD_ID","STORE_ID","SALES_AMT"]');
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
Nota de uso
DBMS_EXT_TABLE_CACHE.CREATE_CACHEcrea la caché de lago en una instancia de base de datos de IA autónoma. La creación de una caché es similar a la creación de una tabla en el esquema de base de datos.
Desactivar procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.DISABLE desactiva la caché de lago especificada. La caché se marca como desactivada; sin embargo, los datos de la caché se conservan.
Sintaxis
DBMS_EXT_TABLE_CACHE.DISABLE (
owner IN VARCHAR2,
table_name IN VARCHAR2
);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.DISABLE (
owner => 'SALES',
table_name => 'STORE_SALES');
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
Nota de uso
DBMS_EXT_TABLE_CACHE.DISABLEno suprime ningún dato de la caché de lago. En su lugar, marca la caché como DISABLED, lo que significa que el optimizador no puede utilizar la caché para reescrituras de consulta.
DROP_BY_LIKE Procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.DROP_BY_LIKE borra uno o más archivos de la caché de lago. Los archivos se borran según los filtros especificados.
Sintaxis
DBMS_EXT_TABLE_CACHE.DROP_BY_LIKE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
path_filters IN CLOB,
esc_char IN VARCHAR2 DEFAULT NULL);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
path_filters |
PATH_FILTERS es un JSON_ARRAY de filtros de ruta de acceso que se utiliza para buscar patrones especificados en las URL de archivo. |
esc_char |
Especifica el carácter de escape que se utilizará en los filtros de ruta. Si el carácter de escape precede a ' Este parámetro es opcional y el valor predeterminado para este parámetro es |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.DROP_BY_LIKE (
owner => 'SALES',
table_name => 'STORE_SALES',
path_filters => '["https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/your_namespace/your_bucket/salesdata1.parquet",
"https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/your_namespace/your_bucket/salesdata2.parquet"]'
);
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
DROP_CACHE Procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.DROP_CACHE borra la caché de lago especificada. Este procedimiento borra la caché y libera el espacio de almacenamiento asociado a la caché.
Sintaxis
DBMS_EXT_TABLE_CACHE.DROP_CACHE (
owner IN VARCHAR2,
table_name IN VARCHAR2
);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.DROP_CACHE (
owner => 'SALES',
table_name => 'STORE_SALES');
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
Nota de uso
- Al borrar una caché, se eliminan los metadatos del diccionario de datos y se suprimen todos los datos almacenados en caché.
DROP_FILE Procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.DROP_FILE borra el archivo especificado de una caché de lago.
Sintaxis
DBMS_EXT_TABLE_CACHE.DROP_FILE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
file_url IN VARCHAR2);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
file_url |
Especifica la URL del archivo. |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.DROP_FILE (
owner => 'SALES',
table_name => 'STORE_SALES',
file_url => 'https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/your_namespace/your_bucket/salesdata.parquet'
);
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
ENABLE Procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.ENABLE activa una caché de lago desactivada anteriormente. Cuando se crea una caché, se activa por defecto.
Sintaxis
DBMS_EXT_TABLE_CACHE.ENABLE (
owner IN VARCHAR2,
table_name IN VARCHAR2
);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.ENABLE (
owner => 'SALES',
table_name => 'STORE_SALES'
);
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
Función GET_AVAILABLE_QUOTA
Utilice la función DBMS_EXT_TABLE_CACHE.GET_AVAILABLE_QUOTA para recuperar la cuota de caché disponible restante para un esquema o para una caché de tabla externa específica.
Sintaxis
DBMS_EXT_TABLE_CACHE.GET_AVAILABLE_QUOTA (
owner IN VARCHAR2,
table_name IN VARCHAR2 DEFAULT NULL,
no_cache OUT BOOLEAN,
total_quota OUT NUMBER
)
RETURN NUMBER;Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de tabla externa. Si table_name es NULL, la función devuelve información de cuota para el esquema. |
no_cache |
Devuelve TRUE cuando no hay ninguna cuota de caché disponible. |
total_quota |
Devuelve la cuota total disponible para el esquema o la caché. |
Valor devuelto
Devuelve la cuota disponible restante.
Ejemplos
Ejemplo para comprobar la cuota disponible de un esquema:
SET SERVEROUTPUT ON;
DECLARE
l_available_quota NUMBER;
l_total_quota NUMBER;
l_no_cache BOOLEAN;
BEGIN
l_available_quota := DBMS_EXT_TABLE_CACHE.GET_AVAILABLE_QUOTA(
owner => 'HR',
table_name => NULL,
no_cache => l_no_cache,
total_quota => l_total_quota);
IF l_no_cache THEN
DBMS_OUTPUT.PUT_LINE('NO_CACHE=TRUE');
ELSE
DBMS_OUTPUT.PUT_LINE('NO_CACHE=FALSE');
END IF;
DBMS_OUTPUT.PUT_LINE('TOTAL_QUOTA=' || l_total_quota);
DBMS_OUTPUT.PUT_LINE('AVAILABLE_QUOTA=' || l_available_quota);
END;
/Ejemplo para comprobar la cuota disponible para una caché de tabla externa específica:
SET SERVEROUTPUT ON;
DECLARE
l_available_quota NUMBER;
l_total_quota NUMBER;
l_no_cache BOOLEAN;
BEGIN
l_available_quota := DBMS_EXT_TABLE_CACHE.GET_AVAILABLE_QUOTA(
owner => 'SALES',
table_name => 'STORE_SALES',
no_cache => l_no_cache,
total_quota => l_total_quota);
IF l_no_cache THEN
DBMS_OUTPUT.PUT_LINE('NO_CACHE=TRUE');
ELSE
DBMS_OUTPUT.PUT_LINE('NO_CACHE=FALSE');
END IF;
DBMS_OUTPUT.PUT_LINE('TOTAL_QUOTA=' || l_total_quota);
DBMS_OUTPUT.PUT_LINE('AVAILABLE_QUOTA=' || l_available_quota);
END;
/Función GET_GLOBAL_CACHE_QUOTA
Utilice la función DBMS_EXT_TABLE_CACHE.GET_GLOBAL_CACHE_QUOTA para recuperar la cuota de caché global resuelta.
Sintaxis
DBMS_EXT_TABLE_CACHE.GET_GLOBAL_CACHE_QUOTA
RETURN NUMBER;Valor devuelto
Devuelve la cuota de caché global resuelta basada en GLOBAL_CACHE_SIZE y GLOBAL_CACHE_PERCENT.
Notas de uso
-
Si se definen
GLOBAL_CACHE_SIZEyGLOBAL_CACHE_PERCENT, se utiliza el valor más grande. -
Si ninguna de las propiedades de cuota global está definida explícitamente,
GLOBAL_CACHE_PERCENTse define por defecto en20.
Ejemplo
SET SERVEROUTPUT ON;
DECLARE
l_global_quota NUMBER;
BEGIN
l_global_quota := DBMS_EXT_TABLE_CACHE.GET_GLOBAL_CACHE_QUOTA;
DBMS_OUTPUT.PUT_LINE('GLOBAL_CACHE_QUOTA=' || l_global_quota);
END;
/Función GET_USER_PROPERTY
La función devuelve la preferencia de almacenamiento en caché del esquema especificado y devuelve un valor Number.
MAX_CACHE_SIZE y MAX_CACHE_PERCENT son controles de cuota a nivel de esquema dentro del modelo de cuota global.
Sintaxis
DBMS_EXT_TABLE_CACHE.GET_USER_PROPERTY (
property_name IN VARCHAR2,
owner IN VARCHAR2 DEFAULT NULL);
RETURN NUMBER;Parámetros
| Parámetro | Descripción |
|---|---|
property_name |
Especifica el nombre de la propiedad. A continuación, se muestran los valores válidos para
|
owner |
Especifica el nombre del esquema. |
Valores de Retorno
| Valor devuelto | Descripción |
|---|---|
El valor MAX_CACHE_SIZE o MAX_CACHE_PERCENT en Number. |
Según el parámetro property_name, la función devuelve el valor MAX_CACHE_SIZE o MAX_CACHE_PERCENT. |
Notas de uso
-
Cuando se conoce la cuota de caché global,
MAX_CACHE_PERCENTse basa en la cuota global resuelta. De lo contrario, se basa en la cuota de tablespace de esquema o caché. -
Si se definen
MAX_CACHE_SIZEyMAX_CACHE_PERCENT, se utiliza el valor más grande. -
Si no se define explícitamente ninguna propiedad de cuota de nivel de esquema,
MAX_CACHE_PERCENTse define por defecto en20. -
Las cachés manuales y las cachés
AUTOconsumen el mismo pool de cuotas.
Ejemplo
SET SERVEROUTPUT ON;
DECLARE
l_max_cache_sz NUMBER;
BEGIN
l_max_cache_sz := DBMS_EXT_TABLE_CACHE.GET_USER_PROPERTY(
property_name => 'MAX_CACHE_SIZE',
owner => 'SALES');
DBMS_OUTPUT.PUT_LINE('MAX_CACHE_SIZE=' || l_max_cache_sz);
END;
/Procedimiento REFRESH_TABLE
El procedimiento DBMS_EXT_TABLE_CACHE.REFRESH_TABLE suprime los datos almacenados en caché para los archivos que ya no existen y carga los archivos que son nuevos o recién modificados.
Sintaxis
DBMS_EXT_TABLE_CACHE.REFRESH_TABLE (
owner IN VARCHAR2,
table_name IN VARCHAR2);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
Ejemplo
En este ejemplo se refrescan los datos almacenados en caché para la tabla STORE_SALES en el esquema SALES.
BEGIN
DBMS_EXT_TABLE_CACHE.REFRESH_TABLE (
owner => 'SALES',
table_name => 'STORE_SALES');
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
RETIRE_FILES Procedimiento
DBMS_EXT_TABLE_CACHE.RETIRE_FILES borra los archivos de la caché que son anteriores al intervalo especificado. Los archivos se suprimen en función del intervalo de tiempo calculado mediante el valor del parámetro BEFORE.
Sintaxis
DBMS_EXT_TABLE_CACHE.RETIRE_FILES (
owner IN VARCHAR2,
table_name IN VARCHAR2,
before IN INTERVAL DAY TO SECOND
);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
before |
El parámetro before acepta un valor INTERVAL DAY TO SECOND y se utiliza para calcular el intervalo de tiempo entre el valor before y el registro de hora actual. El intervalo de tiempo resultante se utiliza para suprimir los archivos de la caché. |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.RETIRE_FILES (
owner => 'SALES',
table_name => 'STORE_SALES',
before => INTERVAL '30' DAY);
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.
SET_USER_PROPERTY Procedimiento
El procedimiento DBMS_EXT_TABLE_CACHE.SET_USER_PROPERTY define la preferencia de almacenamiento en caché para un esquema.
Utilice MAX_CACHE_SIZE y MAX_CACHE_PERCENT para definir las preferencias de cuota de nivel de esquema para las cachés basadas en políticas.
Sintaxis
DBMS_EXT_TABLE_CACHE.SET_USER_PROPERTY (
property_name IN VARCHAR2,
property_value IN NUMBER,
owner IN VARCHAR2 DEFAULT NULL);Parámetros
| Parámetro | Descripción |
|---|---|
property_name |
Especifica el nombre de la propiedad. A continuación, se muestran los valores válidos para
|
property_value |
Especifica el valor de la propiedad. |
owner |
Especifica el nombre del esquema. |
Notas de uso
-
Cuando se conoce la cuota de caché global,
MAX_CACHE_PERCENTse basa en la cuota global resuelta. De lo contrario, se basa en la cuota de tablespace de esquema o caché. -
Si se definen
MAX_CACHE_SIZEyMAX_CACHE_PERCENT, se utiliza el valor más grande. -
Si no se define explícitamente ninguna propiedad de cuota de nivel de esquema,
MAX_CACHE_PERCENTse define por defecto en20. -
Si
MAX_CACHE_SIZEestá definido en un valor mayor queGLOBAL_CACHE_SIZE, la base de datos genera un error. -
Las cachés manuales y las cachés
AUTOconsumen el mismo pool de cuotas.
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.SET_USER_PROPERTY(
property_name => 'MAX_CACHE_PERCENT',
property_value => 100,
owner => 'SALES');
END;
/Procedimiento VALIDATE
El procedimiento DBMS_EXT_TABLE_CACHE.VALIDATE valida la caché de lago. Se informa de un error si no se encuentra la tabla de origen a la que se hace referencia en la base de datos.
Sintaxis
DBMS_EXT_TABLE_CACHE.VALIDATE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
raise_errors IN BOOLEAN DEFAULT TRUE);Parámetros
| Parámetro | Descripción |
|---|---|
owner |
Especifica el nombre del esquema. |
table_name |
Especifica el nombre de la tabla de origen. La tabla de origen puede ser una tabla externa o una tabla expuesta a través de un catálogo montado. |
raise_errors |
Informa cuando una caché de lago está marcada como no válida. |
Ejemplo
BEGIN
DBMS_EXT_TABLE_CACHE.VALIDATE (
owner => 'SALES',
table_name => 'STORE_SALES',
raise_errors => TRUE);
END;
/Este procedimiento también admite tablas expuestas a través de catálogos montados.