Optimiser les performances des liens cloud à l'aide de vues matérialisées
Les vues matérialisées améliorent les performances des liaisons cloud en mettant en cache les données distantes localement dans la base de données du consommateur et en les actualisant de manière incrémentielle au lieu de tout relire sur le réseau à chaque fois.
Les vues matérialisées sont souvent utilisées pour améliorer les performances, en particulier lors du stockage de données dans une base de données locale provenant de tables ou de vues distantes via un lien de base de données. De même, les vues matérialisées sont souvent utilisées à la place des vues lorsqu'il existe des calculs ou des synthèses complets, en particulier sur les jeux de données volumineux. Les vues matérialisées sont actualisées à des intervalles spécifiés, ce qui signifie que les données ne sont pas toujours à jour. Toutefois, les interrogations sur ces vues matérialisées sont nettement plus rapides dans ces cas d'emploi.
- Actualisation des vues matérialisées
La base de données tient à jour les données des vues matérialisées en les actualisant après les modifications apportées aux tables de base. L'actualisation d'une vue matérialisée met automatiquement à jour tous ses index. Dans le cas d'une actualisation complète, cela nécessite un espace de tri temporaire pour reconstruire tous les index lors de l'actualisation. - Actualisation incrémentielle des vues matérialisées via des liens cloud
L'actualisation incrémentielle est généralement appelée actualisation FAST car elle s'exécute généralement plus rapidement que l'actualisation complète. - Inscription d'un lien cloud avec l'actualisation rapide de la vue matérialisée
Vous devez inscrire un lien cloud pour indiquer que l'actualisation rapide de la vue matérialisée est prise en charge. Utilisez la procédureREGISTERdu packageDBMS_CLOUD_LINKavec l'argumentMV_FAST_REFRESHpour inscrire le lien cloud. - Mise à jour d'un lien cloud avec l'actualisation rapide de vue matérialisée
Vous pouvez mettre à jour un lien cloud pour indiquer que l'actualisation rapide de vue matérialisée est prise en charge sur le lien cloud. - Exemple : cas d'utilisation de l'actualisation incrémentielle des vues matérialisées
Un analyste de données travaillant avec des tableaux de bord sur des instances de base de données d'IA autonome peut désormais définir des vues matérialisées sur des tables de base de données d'IA autonome distantes accessibles via des liens cloud et les actualiser de manière incrémentielle. Cela permet des mises à jour rapides des tableaux de bord sans rechargement complet des données, améliore l'expérience utilisateur et réduit les coûts.
Régénération de vues matérialisées
La base de données tient à jour les données des vues matérialisées en les actualisant après les modifications apportées aux tables de base. L'actualisation d'une vue matérialisée met automatiquement à jour tous ses index. Dans le cas d'une actualisation complète, cela nécessite un espace de tri temporaire pour reconstruire tous les index lors de l'actualisation.
Types d'actualisation des vues matérialisées :
Voici les méthodes d'actualisation incrémentielle des vues matérialisées qui utilisent des liens cloud :
-
actualisation basée sur les journaux
Pour connaître les différentes méthodes d'actualisation, reportez-vous au chapitre Actualisation des vues matérialisées.
L'actualisation du suivi des modifications de partition (PCT) et l'actualisation du suivi des modifications de partition logique (LPCT) ne sont pas prises en charge pour les vues matérialisées qui utilisent des liens cloud.
Actualisation incrémentielle des vues matérialisées sur les liens cloud
L'actualisation incrémentielle est généralement appelée actualisation FAST car elle s'exécute généralement plus rapidement que l'actualisation complète.
Une actualisation incrémentielle élimine la nécessité de reconstruire des vues matérialisées à partir de zéro. Par conséquent, le traitement des seules modifications peut entraîner un temps d'actualisation très rapide. Pour des vues matérialisées qui utilisent la méthode de régénération de type Fast basée sur les journaux, un journal de vues matérialisées garde l'enregistrement des modifications apportées aux tables de base. Un journal de vues matérialisées est un objet de schéma qui enregistre les modifications apportées à une table de base afin qu'une vue matérialisée définie dans la table de base puisse être actualisée de manière incrémentielle. Chaque journal de vues matérialisées est associé à une seule table de base. Le journal des vues matérialisées réside dans la même base des données et dans le même schéma que sa table de base. Vous pouvez activer Oracle Autonomous AI Database pour définir et actualiser les vues matérialisées sur les tables distantes accessibles via des liens cloud.
Autonomous AI Database Serverless effectue une actualisation incrémentielle des vues matérialisées à l'aide de l'actualisation FAST. Cette méthode applique uniquement les modifications apportées depuis la dernière actualisation, plutôt que d'effectuer une actualisation complète de l'ensemble de la vue matérialisée.
- Les tableaux de bord et les rapports peuvent être actualisés rapidement sans rechargement complet des données, ce qui permet des analyses quasiment en temps réel.
- Amélioration des contrats de niveau de service (SLA) pour les workloads d'analyse grâce à une fraîcheur accrue des données.
Pour connaître les différents types de vue matérialisée prenant en charge l'actualisation incrémentielle à l'aide de liens cloud, voir Types de vue matérialisée.
Enregistrement d'un lien cloud avec une actualisation rapide de vue matérialisée
Vous devez inscrire un lien cloud pour indiquer que l'actualisation rapide des vues matérialisées est prise en charge. Utilisez la procédure REGISTER du package DBMS_CLOUD_LINK avec l'argument MV_FAST_REFRESH pour inscrire le lien cloud.
SALES_VIEW_AGG dans le schéma CLOUDLINK. Il peut ensuite être inscrit en tant que lien cloud avec la fonctionnalité d'actualisation rapide activée en transmettant la valeur TRUE pour l'argument MV_FAST_REFRESH dans la procédure 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;
/En tant que fournisseur, vous devez créer la table de journalisation des vues matérialisées dans la table de base de la base de données du fournisseur qui correspond à la vue matérialisée dans la base de données du consommateur.
Pour plus d'informations, voir Procédure REGISTER.
Mise à jour rapide d'un lien cloud avec une vue matérialisée
Vous pouvez mettre à jour un lien cloud pour indiquer que l'actualisation rapide des vues matérialisées est prise en charge sur le lien cloud.
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;
/Supposons qu'une table de journal de vue matérialisée soit créée ultérieurement sur la table SALES_ALL dans le schéma CLOUDLINK. Le lien cloud peut être mis à jour pour activer la fonctionnalité d'actualisation rapide en transmettant la valeur TRUE pour l'argument MV_FAST_REFRESH dans la procédure UPDATE_REGISTRATION.
BEGIN
DBMS_CLOUD_LINK.UPDATE_REGISTRATION(
namespace => 'TRUSTED_COMPARTMENT',
name => 'SALES',
mv_fast_refresh => TRUE );
END;
/La procédure UPDATE_REGISTRATION permet l'actualisation rapide des vues matérialisées via les liens cloud en veillant à ce que la table de journal des vues matérialisées soit accessible via le lien cloud. Pour le rendre accessible, vous devez transmettre la valeur TRUE pour l'argument MV_FAST_REFRESH.
Pour plus d'informations, voir Procédure UPDATE_REGISTRATION.
Le fournisseur ayant créé les journaux de vues matérialisées requis. Vous devez actualiser les métadonnées du lien pour vous assurer qu'il reflète les nouvelles tables de journalisation.
Exemple : cas d'emploi de l'actualisation incrémentielle des vues matérialisées
Un analyste de données travaillant avec des tableaux de bord sur des instances de base de données d'IA autonome peut désormais définir des vues matérialisées sur des tables de base de données d'IA autonome distantes accessibles via des liens cloud et les actualiser de manière incrémentielle. Cela permet des mises à jour rapides des tableaux de bord sans rechargement complet des données, améliore l'expérience utilisateur et réduit les coûts.
Conditions préalables
Avant d'implémenter une actualisation incrémentielle pour les vues matérialisées sur les liaisons cloud, assurez-vous que les prérequis suivants sont respectés.
- Les liens cloud sont correctement configurés et testés.
- La connectivité réseau entre les bases de données client et fournisseur est stable.
- Les privilèges appropriés sont accordés aux utilisateurs qui créeront et actualiseront des vues matérialisées.
- La journalisation des vues matérialisées est configurée pour les tables de base dans la base de données du fournisseur.
L'analyste de données créera des tableaux de bord dans la base de données d'IA autonome grand public qui interrogeront les données de la base de données d'IA autonome fournisseur à l'aide de liens cloud. Au lieu d'effectuer des balayages complets de table dans la base de données d'IA autonome (lente et coûteuse), ils créent des vues matérialisées dans la base de données d'IA autonome consommateur avec une actualisation rapide pour mettre à jour de manière incrémentielle uniquement les données modifiées à partir des tables de base de données d'IA autonome fournisseur.
- Le fournisseur crée un journal de vues matérialisées dans la table de base.
- Dans la base de données Autonomous AI du fournisseur, un administrateur de base de données exécute l'une des procédures
DBMS_CLOUD_LINKsuivantes :REGISTER: crée une toute nouvelle inscription de lien cloud avecMV_FAST_REFRESH=TRUE, ce qui active la fonctionnalité d'actualisation rapide dès le début.UPDATE_REGISTRATION: modifie une inscription de lien cloud existante pour ajouter une fonctionnalité d'actualisation rapide.
Le fournisseur sait maintenant que des journaux existent et peut les lire.
- L'analyste de données, travaillant dans la base de données d'IA autonome du consommateur (leur base de données de tableau de bord), exécute une instruction
CREATE MATERIALIZED VIEWavecREFRESH FASTpour créer son cache de données de tableau de bord.