Package DBMS_EXT_TABLE_CACHE
Le package DBMS_EXT_TABLE_CACHE fournit des routines permettant de configurer et de gérer la mise en cache des données fréquemment consultées à partir de tables externes et de tables exposées via des catalogues montés dans la base de données Autonomous AI.
Récapitulatif des sous-programmes DBMS_EXT_TABLE_CACHE
Ce tableau récapitule les sous-programmes inclus dans le package DBMS_EXT_TABLE_CACHE.
| Sous-programme | Description |
|---|---|
| Procédure ADD_BY_LIKE | Ajoute un ou plusieurs fichiers qui correspondent aux filtres spécifiés dans le cache du lac. |
| Procédure ADD_FILE | Ajoute un fichier au cache du lac. |
| Procédure ADD_LATEST_FILES | Alimente un ou plusieurs fichiers en fonction de l'intervalle de temps indiqué par l'argument SINCE et l'horodatage en cours. |
| Procédure ADD_TABLE | Ajoute des fichiers de la table source indiquée dans le cache de lac. La table source peut être une table externe ou une table exposée via un catalogue monté. |
| Procédure CLEAR | Efface un cache de lac. |
| Procédure CREATE_CACHE | Crée un cache de lac. |
| Désactiver la procédure | Désactive un cache de lac. |
| Procédure DROP_BY_LIKE | Supprimez des fichiers du cache du lac en fonction des filtres spécifiés. |
| Procédure DROP_CACHE | Supprime un cache de lac. |
| Procédure DROP_FILE | Supprime le fichier source spécifié du cache de lac. |
| ACTIVER la procédure | Active un cache de lac précédemment désactivé. |
| Fonction GET_AVAILABLE_QUOTA | Renvoie le quota de cache disponible restant pour un schéma ou pour un cache de table externe spécifique. |
| Fonction GET_GLOBAL_CACHE_QUOTA | Renvoie le quota global de cache résolu. |
| Fonction GET_USER_PROPERTY | Récupère la préférence de mise en cache pour un cache de lac. |
| Procédure REFRESH_TABLE | Supprime les données mises en cache de tous les fichiers qui n'existent plus et charge les fichiers nouveaux ou nouvellement modifiés. |
| Procédure RETIRE_FILES | Supprime un ou plusieurs fichiers du cache qui sont antérieurs à l'intervalle spécifié. |
| Procédure SET_USER_PROPERTY | Spécifie la préférence de mise en cache pour le cache de lac. |
| Procédure VALIDATE | Valide un cache de lac. |
Procédure ADD_BY_LIKE
La procédure DBMS_EXT_TABLE_CACHE.ADD_BY_LIKE charge un ou plusieurs fichiers source spécifiés dans le cache de lac.
Syntaxe
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);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
path_filters |
PATH_FILTERS est un JSON_ARRAY de filtres de chemin utilisés pour rechercher des modèles spécifiés dans des URL de fichier. |
esc_char |
Spécifie le caractère d'échappement à utiliser dans les filtres de chemin. Si le caractère d'échappement précède " Ce paramètre est facultatif et sa valeur par défaut est |
force |
Force l'écrasement des fichiers existants spécifiés dans le cache même si les fichiers n'ont pas été modifiés. Ce paramètre est facultatif et la valeur par défaut du paramètre |
Exemple
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;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Remarque sur l'utilisation
-
Par défaut, la procédure
DBMS_EXT_TABLE_CACHE.ADD_BY_LIKEignore le chargement des fichiers dans les cas suivants :-
Les fichiers étaient précédemment mis en cache et toujours disponibles dans le cache.
-
Les fichiers n'ont pas été modifiés depuis leur dernière mise en cache.
Cependant, vous pouvez utiliser le paramètre
forcepour écraser les fichiers dans le cache même si les fichiers n'ont pas été modifiés. -
Procédure ADD_FILE
La procédure DBMS_EXT_TABLE_CACHE.ADD_FILE charge le fichier indiqué dans le cache de lac.
Syntaxe
DBMS_EXT_TABLE_CACHE.ADD_FILE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
file_url IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
file_url |
Indique l'URL du fichier. |
force |
Force l'écrasement des fichiers existants spécifiés dans le cache même si les fichiers n'ont pas été modifiés. Ce paramètre est facultatif et la valeur par défaut du paramètre |
Exemple
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;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Notes d'utilisation
-
La procédure
DBMS_EXT_TABLE_CACHE.ADD_FILEignore le chargement du fichier dans le cache si le fichier indiqué existe dans le cache et n'a pas été modifié depuis le dernier cache du fichier. -
Vous pouvez utiliser le paramètre
forcepour écraser le fichier dans le cache, même si le fichier n'a pas été modifié.
Procédure ADD_LATEST_FILES
DBMS_EXT_TABLE_CACHE.ADD_LATEST_FILES alimente un ou plusieurs fichiers dans le cache de lac. Les fichiers sont renseignés en fonction de l'intervalle de temps déterminé par l'argument SINCE et l'horodatage en cours.
Syntaxe
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);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
since |
Le paramètre since accepte une valeur INTERVAL DAY TO SECOND et sert à calculer l'intervalle de temps entre la valeur since et l'horodatage en cours. L'intervalle de temps qui en résulte est ensuite utilisé pour renseigner les fichiers, en fonction de leur heure de dernière modification. |
max_files |
Indiquez la valeur Ce paramètre est facultatif et est défini par défaut sur illimité lorsqu'il n'est pas spécifié. |
force |
Force l'écrasement des fichiers existants spécifiés dans le cache même si les fichiers n'ont pas été modifiés. Ce paramètre est facultatif et sa valeur par défaut est |
Exemple
BEGIN
DBMS_EXT_TABLE_CACHE.ADD_LATEST_FILES (
owner => 'SALES',
table_name => 'STORE_SALES',
since => INTERVAL '7' DAY,
max_files => 5,
force => TRUE);
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Remarque sur l'utilisation
-
Par défaut, la procédure
DBMS_EXT_TABLE_CACHE.ADD_LATEST_FILESignore le remplissage des fichiers dans les cas suivants :-
Les fichiers spécifiés étaient précédemment mis en cache et toujours disponibles dans le cache.
-
Les fichiers spécifiés n'ont pas été modifiés depuis leur dernier cache.
Cependant, vous pouvez utiliser le paramètre
forcepour écraser les fichiers dans le cache même si les fichiers n'ont pas été modifiés. -
Procédure ADD_TABLE
La procédure DBMS_EXT_TABLE_CACHE.ADD_TABLE charge une table entière ou un certain pourcentage de la table source dans le cache. La table source peut être une table externe ou une table exposée via un catalogue monté.
Syntaxe
DBMS_EXT_TABLE_CACHE.ADD_TABLE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
percent_files IN NUMBER DEFAULT NULL,
force IN BOOLEAN DEFAULT FALSE);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
percent_files |
Indique le pourcentage des données de table à mettre en cache. Par exemple de la 1 à la 100. Par défaut, tous les fichiers sont chargés. |
force |
Force l'écrasement des fichiers spécifiés dans le cache même s'ils n'ont pas été modifiés. Ce paramètre est facultatif et la valeur par défaut pour |
Exemple
BEGIN
DBMS_EXT_TABLE_CACHE.ADD_TABLE (
owner => 'SALES',
table_name => 'STORE_SALES',
percent_files => 50);
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Notes d'utilisation
-
DBMS_EXT_TABLE_CACHE.ADD_TABLEtente de mettre en cache la table entière ou un pourcentage spécifié du contenu du fichier dans le cache. -
Les paramètres
percent_filesetforces'excluent mutuellement. -
Par défaut, la procédure
DBMS_EXT_TABLE_CACHE.ADD_TABLEignore le chargement des fichiers dans les cas suivants :-
Les fichiers spécifiés étaient précédemment mis en cache et toujours disponibles dans le cache.
-
Les fichiers spécifiés n'ont pas été modifiés depuis leur dernier cache.
Cependant, vous pouvez utiliser le paramètre
forcepour écraser les fichiers dans le cache même si les fichiers n'ont pas été modifiés. -
Procédure CLEAR
La procédure DBMS_EXT_TABLE_CACHE.CLEAR supprime tous les fichiers d'un cache de lac tout en conservant le cache.
Syntaxe
DBMS_EXT_TABLE_CACHE.CLEAR (
owner IN VARCHAR2,
table_name IN VARCHAR2);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
Exemple
BEGIN
DBMS_EXT_TABLE_CACHE.CLEAR (
owner => 'SALES',
table_name => 'STORE_SALES');
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Procédure CREATE_CACHE
La procédure DBMS_EXT_TABLE_CACHE.CREATE_CACHE crée un cache de lac dans une instance de base de données Autonomous AI.
Syntaxe
DBMS_EXT_TABLE_CACHE.CREATE_CACHE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
partition_type IN VARCHAR2,
col_subset IN VARCHAR2 DEFAULT NULL
);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
partition_type |
Les valeurs valides pour le paramètre
Pour plus d'informations, reportez-vous à Colonnes de métadonnées de table externe. |
col_subset |
col_subset indique les colonnes à mettre en cache. Indiquez un JSON_ARRAY de noms de colonne de table externe ; seules ces colonnes sont mises en cache dans le cache de lac.col_subset est facultatif. Si vous n'indiquez pas col_subset, le cache du lac inclut toutes les colonnes par défaut. |
Exemples
Exemple : créer un cache de lac incluant toutes les colonnes
BEGIN
DBMS_EXT_TABLE_CACHE.CREATE_CACHE (
owner => 'SALES',
table_name => 'STORE_SALES',
partition_type => 'FILE');
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Exemple : création d'un cache de lac avec un sous-ensemble de colonnes
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;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Remarque sur l'utilisation
DBMS_EXT_TABLE_CACHE.CREATE_CACHEcrée le cache de lac dans une instance de base de données Autonomous AI. La création d'un cache est similaire à la création d'une table dans le schéma de base de données.
Désactiver la procédure
La procédure DBMS_EXT_TABLE_CACHE.DISABLE désactive le cache de lac indiqué. Le cache est marqué comme désactivé, mais les données qu'il contient sont conservées.
Syntaxe
DBMS_EXT_TABLE_CACHE.DISABLE (
owner IN VARCHAR2,
table_name IN VARCHAR2
);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
Exemple
BEGIN
DBMS_EXT_TABLE_CACHE.DISABLE (
owner => 'SALES',
table_name => 'STORE_SALES');
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Remarque sur l'utilisation
DBMS_EXT_TABLE_CACHE.DISABLEne supprime aucune donnée du cache de lac. Au lieu de cela, il marque le cache comme DISABLED, ce qui signifie que l'optimiseur ne peut pas utiliser le cache pour les réécritures de requête.
Procédure DROP_BY_LIKE
La procédure DBMS_EXT_TABLE_CACHE.DROP_BY_LIKE supprime un ou plusieurs fichiers du cache de lac. Les fichiers sont supprimés en fonction des filtres spécifiés.
Syntaxe
DBMS_EXT_TABLE_CACHE.DROP_BY_LIKE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
path_filters IN CLOB,
esc_char IN VARCHAR2 DEFAULT NULL);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
path_filters |
PATH_FILTERS est un JSON_ARRAY de filtres de chemin utilisés pour rechercher des modèles spécifiés dans des URL de fichier. |
esc_char |
Spécifie le caractère d'échappement à utiliser dans les filtres de chemin. Si le caractère d'échappement précède " Ce paramètre est facultatif et sa valeur par défaut est |
Exemple
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;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Procédure DROP_CACHE
La procédure DBMS_EXT_TABLE_CACHE.DROP_CACHE supprime le cache de lac indiqué. Cette procédure supprime le cache et libère l'espace de stockage associé au cache.
Syntaxe
DBMS_EXT_TABLE_CACHE.DROP_CACHE (
owner IN VARCHAR2,
table_name IN VARCHAR2
);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
Exemple
BEGIN
DBMS_EXT_TABLE_CACHE.DROP_CACHE (
owner => 'SALES',
table_name => 'STORE_SALES');
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Remarque sur l'utilisation
- La suppression d'un cache enlève ses métadonnées du dictionnaire de données et supprime toutes ses données en cache.
Procédure DROP_FILE
La procédure DBMS_EXT_TABLE_CACHE.DROP_FILE supprime le fichier indiqué d'un cache de lac.
Syntaxe
DBMS_EXT_TABLE_CACHE.DROP_FILE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
file_url IN VARCHAR2);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
file_url |
Indique l'URL du fichier. |
Exemple
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;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
ACTIVER la procédure
La procédure DBMS_EXT_TABLE_CACHE.ENABLE active un cache de lac précédemment désactivé. Lorsqu'un cache est créé, il est activé par défaut.
Syntaxe
DBMS_EXT_TABLE_CACHE.ENABLE (
owner IN VARCHAR2,
table_name IN VARCHAR2
);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
Exemple
BEGIN
DBMS_EXT_TABLE_CACHE.ENABLE (
owner => 'SALES',
table_name => 'STORE_SALES'
);
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Fonction GET_AVAILABLE_QUOTA
Utilisez la fonction DBMS_EXT_TABLE_CACHE.GET_AVAILABLE_QUOTA pour extraire le quota de cache disponible restant pour un schéma ou pour un cache de table externe spécifique.
Syntaxe
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;Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table externe. Si table_name est défini sur NULL, la fonction renvoie les informations de quota pour le schéma. |
no_cache |
Renvoie TRUE lorsqu'aucun quota de cache n'est disponible. |
total_quota |
Renvoie le quota total disponible pour le schéma ou le cache. |
Valeur de retour
Renvoie le quota disponible restant.
Exemples
Exemple de vérification du quota disponible pour un schéma :
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;
/Exemple de vérification du quota disponible pour un cache de table externe spécifique :
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;
/Fonction GET_GLOBAL_CACHE_QUOTA
Utilisez la fonction DBMS_EXT_TABLE_CACHE.GET_GLOBAL_CACHE_QUOTA pour extraire le quota global de cache résolu.
Syntaxe
DBMS_EXT_TABLE_CACHE.GET_GLOBAL_CACHE_QUOTA
RETURN NUMBER;Valeur de retour
Renvoie le quota de cache global résolu basé sur GLOBAL_CACHE_SIZE et GLOBAL_CACHE_PERCENT.
Notes d'utilisation
-
Si
GLOBAL_CACHE_SIZEetGLOBAL_CACHE_PERCENTsont définis, la valeur la plus élevée est utilisée. -
Si aucune propriété de quota global n'est explicitement définie,
GLOBAL_CACHE_PERCENTprend par défaut la valeur20.
Exemple
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;
/Fonction GET_USER_PROPERTY
La fonction renvoie la préférence de mise en cache pour le schéma indiqué et renvoie une valeur Number.
MAX_CACHE_SIZE et MAX_CACHE_PERCENT sont des contrôles de quota au niveau du schéma dans le modèle de quota global.
Syntaxe
DBMS_EXT_TABLE_CACHE.GET_USER_PROPERTY (
property_name IN VARCHAR2,
owner IN VARCHAR2 DEFAULT NULL);
RETURN NUMBER;Paramètres
| Paramètre | Description |
|---|---|
property_name |
Indique le nom de propriété. Les valeurs valides pour
|
owner |
Indique le nom du schéma. |
Valeurs renvoyées
| Valeur de retour | Description |
|---|---|
Valeur MAX_CACHE_SIZE ou MAX_CACHE_PERCENT dans Number. |
Selon le paramètre property_name, la fonction renvoie la valeur MAX_CACHE_SIZE ou MAX_CACHE_PERCENT. |
Notes d'utilisation
-
Lorsque le quota global de cache est connu,
MAX_CACHE_PERCENTest basé sur le quota global résolu. Sinon, il est basé sur le quota du tablespace du schéma ou du cache. -
Si
MAX_CACHE_SIZEetMAX_CACHE_PERCENTsont définis, la valeur la plus élevée est utilisée. -
Si aucune propriété de quota de niveau schéma n'est explicitement définie,
MAX_CACHE_PERCENTprend par défaut la valeur20. -
Les caches manuels et les caches
AUTOutilisent le même pool de quotas.
Exemple
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;
/Procédure REFRESH_TABLE
La procédure DBMS_EXT_TABLE_CACHE.REFRESH_TABLE supprime les données mises en cache de tous les fichiers qui n'existent plus et charge les fichiers nouveaux ou nouvellement modifiés.
Syntaxe
DBMS_EXT_TABLE_CACHE.REFRESH_TABLE (
owner IN VARCHAR2,
table_name IN VARCHAR2);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
Exemple
Cet exemple actualise les données mises en cache pour la table STORE_SALES dans le schéma SALES.
BEGIN
DBMS_EXT_TABLE_CACHE.REFRESH_TABLE (
owner => 'SALES',
table_name => 'STORE_SALES');
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Procédure RETIRE_FILES
DBMS_EXT_TABLE_CACHE.RETIRE_FILES supprime les fichiers du cache qui sont plus anciens que l'intervalle indiqué. Les fichiers sont supprimés en fonction de l'intervalle de temps calculé à l'aide de la valeur du paramètre BEFORE.
Syntaxe
DBMS_EXT_TABLE_CACHE.RETIRE_FILES (
owner IN VARCHAR2,
table_name IN VARCHAR2,
before IN INTERVAL DAY TO SECOND
);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
before |
Le paramètre before accepte une valeur INTERVAL DAY TO SECOND et sert à calculer l'intervalle de temps entre la valeur before et l'horodatage en cours. L'intervalle de temps qui en résulte est ensuite utilisé pour supprimer les fichiers du cache. |
Exemple
BEGIN
DBMS_EXT_TABLE_CACHE.RETIRE_FILES (
owner => 'SALES',
table_name => 'STORE_SALES',
before => INTERVAL '30' DAY);
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.
Procédure SET_USER_PROPERTY
La procédure DBMS_EXT_TABLE_CACHE.SET_USER_PROPERTY définit la préférence de mise en cache pour un schéma.
Utilisez MAX_CACHE_SIZE et MAX_CACHE_PERCENT pour définir les préférences de quota au niveau du schéma pour les caches basés sur une stratégie.
Syntaxe
DBMS_EXT_TABLE_CACHE.SET_USER_PROPERTY (
property_name IN VARCHAR2,
property_value IN NUMBER,
owner IN VARCHAR2 DEFAULT NULL);Paramètres
| Paramètre | Description |
|---|---|
property_name |
Indique le nom de propriété. Les valeurs valides pour
|
property_value |
Spécifie la valeur de propriété. |
owner |
Indique le nom du schéma. |
Notes d'utilisation
-
Lorsque le quota global de cache est connu,
MAX_CACHE_PERCENTest basé sur le quota global résolu. Sinon, il est basé sur le quota du tablespace du schéma ou du cache. -
Si
MAX_CACHE_SIZEetMAX_CACHE_PERCENTsont définis, la valeur la plus élevée est utilisée. -
Si aucune propriété de quota de niveau schéma n'est explicitement définie,
MAX_CACHE_PERCENTprend par défaut la valeur20. -
Si la valeur
MAX_CACHE_SIZEest supérieure àGLOBAL_CACHE_SIZE, la base de données génère une erreur. -
Les caches manuels et les caches
AUTOutilisent le même pool de quotas.
Exemple
BEGIN
DBMS_EXT_TABLE_CACHE.SET_USER_PROPERTY(
property_name => 'MAX_CACHE_PERCENT',
property_value => 100,
owner => 'SALES');
END;
/Procédure VALIDATE
La procédure DBMS_EXT_TABLE_CACHE.VALIDATE valide le cache de lac. Une erreur est signalée si la table source référencée est introuvable dans la base de données.
Syntaxe
DBMS_EXT_TABLE_CACHE.VALIDATE (
owner IN VARCHAR2,
table_name IN VARCHAR2,
raise_errors IN BOOLEAN DEFAULT TRUE);Paramètres
| Paramètre | Description |
|---|---|
owner |
Indique le nom du schéma. |
table_name |
Indique le nom de la table source. La table source peut être une table externe ou une table exposée via un catalogue monté. |
raise_errors |
Indique si un cache de lac est marqué comme non valide. |
Exemple
BEGIN
DBMS_EXT_TABLE_CACHE.VALIDATE (
owner => 'SALES',
table_name => 'STORE_SALES',
raise_errors => TRUE);
END;
/Cette procédure prend également en charge les tables exposées via des catalogues montés.