Vues matérialisées - AWS Lake Formation

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Vues matérialisées

Dans le catalogue de AWS Glue données, une vue matérialisée est une table gérée qui stocke le résultat précalculé d'une requête SQL au format Apache Iceberg. Contrairement aux vues standard du catalogue de données qui exécutent la requête à chaque accès, les vues matérialisées stockent physiquement les résultats de la requête et les mettent à jour à mesure que les tables sources sous-jacentes changent. Vous pouvez créer des vues matérialisées à l'aide d'Apache Spark version 3.5.6+ dans Amazon Athena, Amazon EMR ou. AWS Glue

Les vues matérialisées font référence aux tables Apache Iceberg enregistrées dans le catalogue de AWS Glue données, les données précalculées étant stockées sous forme de tables Apache Iceberg dans des compartiments Amazon S3 Tables ou des compartiments à usage général Amazon S3, ce qui les rend accessibles depuis plusieurs moteurs de requêtes, notamment Amazon Athena, Amazon Redshift et des moteurs tiers compatibles avec Iceberg.

Différenciation des vues matérialisées des autres types de vues

Les vues matérialisées diffèrent fondamentalement AWS Glue des vues du catalogue de données, des vues Apache Spark et des vues Amazon Athena. Alors que les vues du catalogue de données sont des tables virtuelles qui exécutent la définition de la requête SQL à chaque accès, les vues matérialisées stockent physiquement les résultats des requêtes précalculés. Cela élimine les calculs redondants et améliore considérablement les performances des requêtes pour les transformations complexes fréquemment utilisées.

Les vues matérialisées diffèrent également des pipelines de transformation de données traditionnels créés avec des tâches AWS Glue ETL ou Spark personnalisées. Au lieu d'écrire du code personnalisé pour gérer la détection des modifications, les mises à jour incrémentielles et l'orchestration du flux de travail, vous définissez des vues matérialisées à l'aide de la syntaxe SQL standard. Le catalogue de AWS Glue données surveille automatiquement les tables sources, détecte les modifications et actualise les vues matérialisées à l'aide d'une infrastructure informatique entièrement gérée.

Cas d’utilisation

Les principaux cas d'utilisation des vues matérialisées sont les suivants :

  • Accélérez les requêtes analytiques complexes : créez des vues matérialisées qui précalculent les jointures, les agrégations et les fonctions de fenêtre coûteuses. Les moteurs Spark réécrivent automatiquement les requêtes suivantes pour utiliser les résultats précalculés, réduisant ainsi la latence des requêtes et les coûts de calcul.

  • Simplifiez les pipelines de transformation des données : remplacez les tâches ETL complexes qui gèrent la détection des modifications, les mises à jour incrémentielles et l'orchestration du flux de travail par de simples définitions de vues matérialisées basées sur SQL. Le catalogue AWS Glue de données gère automatiquement toute la complexité opérationnelle.

  • Activez l'analyse en libre-service avec un accès régi aux données : créez des vues matérialisées sélectionnées qui transforment les données brutes en ensembles de données prêts à être utilisés par l'entreprise. Accordez aux utilisateurs l'accès à des vues matérialisées sans exposer les tables sources sous-jacentes, ce qui simplifie la gestion de la sécurité tout en renforçant les analyses en libre-service.

  • Optimisez l'ingénierie des fonctionnalités pour l'apprentissage automatique : définissez des vues matérialisées qui implémentent des transformations de fonctionnalités pour les modèles de machine learning. La fonctionnalité d'actualisation automatique garantit que les magasins de fonctionnalités restent à jour au fur et à mesure de l'évolution des données sources, tandis que l'actualisation incrémentielle minimise les coûts de calcul.

  • Mettez en œuvre un partage de données efficace : créez des vues matérialisées qui filtrent et transforment les données pour des consommateurs spécifiques. Partagez des vues matérialisées entre les comptes et les régions en AWS Lake Formationéliminant le besoin de duplication des données tout en maintenant une gouvernance centralisée.

Concepts clés

Actualisation automatique

L'actualisation automatique est une fonctionnalité qui surveille en permanence vos tables sources et met à jour les vues matérialisées selon un calendrier que vous définissez. Lorsque vous créez une vue matérialisée, vous pouvez spécifier une fréquence d'actualisation à l'aide d'une planification basée sur le temps avec des intervalles allant jusqu'à une heure. Le catalogue de AWS Glue données utilise l'infrastructure informatique gérée de Spark pour exécuter les opérations d'actualisation en arrière-plan, en gérant de manière transparente tous les aspects de la détection des modifications et des mises à jour incrémentielles.

Lorsque les données source changent entre les intervalles d'actualisation, la vue matérialisée devient temporairement obsolète. Les requêtes accédant directement à la vue matérialisée peuvent renvoyer des résultats obsolètes jusqu'à la fin de la prochaine actualisation planifiée. Pour les scénarios nécessitant un accès immédiat aux données les plus récentes, vous pouvez exécuter une actualisation manuelle à l'aide de la commande REFRESH MATERIALIZED VIEW SQL.

Actualisation incrémentielle

L'actualisation incrémentielle est une technique d'optimisation qui traite uniquement les données modifiées dans les tables sources depuis la dernière actualisation, plutôt que de recalculer l'intégralité de la vue matérialisée. Le catalogue de AWS Glue données utilise la couche de métadonnées d'Apache Iceberg pour suivre efficacement les modifications apportées aux tables sources et déterminer quelles parties de la vue matérialisée nécessitent des mises à jour.

Cette approche réduit considérablement les coûts de calcul et la durée d'actualisation par rapport aux opérations d'actualisation complètes, en particulier pour les grands ensembles de données où seul un faible pourcentage des données change entre les cycles d'actualisation. Le mécanisme d'actualisation incrémentielle fonctionne automatiquement ; il n'est pas nécessaire d'écrire une logique personnalisée pour détecter ou traiter les données modifiées.

Réécriture automatique des requêtes

La réécriture automatique des requêtes est une fonctionnalité d'optimisation des requêtes disponible dans les moteurs Spark d'Amazon Athena, Amazon EMR et. AWS Glue Lorsque vous exécutez une requête sur des tables de base, l'optimiseur Spark analyse votre plan de requête et détermine automatiquement si les vues matérialisées disponibles peuvent répondre plus efficacement à la requête. S'il existe une vue matérialisée appropriée, l'optimiseur réécrit la requête de manière transparente afin d'utiliser les résultats précalculés au lieu de traiter les tables de base.

Cette optimisation s'effectue sans qu'il soit nécessaire de modifier le code de votre application ou les instructions de requête. L'optimiseur Spark garantit que la réécriture automatique des requêtes ne s'applique que lorsque la vue matérialisée est actuelle et peut produire des résultats précis. Si une vue matérialisée est obsolète ou ne répond pas entièrement aux exigences de la requête, l'optimiseur exécute le plan de requête d'origine par rapport aux tables de base, en privilégiant l'exactitude par rapport aux performances.

Afficher le rôle du définisseur

Une vue matérialisée fonctionne sur la base des autorisations du rôle IAM qui l'a créée, connu sous le nom de rôle de définition de vue. Le rôle de définisseur doit avoir un accès en lecture à toutes les tables de base référencées dans la définition de la vue matérialisée et créer des autorisations de table sur la base de données cible. Lorsque le catalogue de AWS Glue données actualise une vue matérialisée, il assume le rôle de définisseur pour accéder aux tables sources et écrire les résultats mis à jour.

Ce modèle de sécurité vous permet d'accorder aux utilisateurs l'accès aux vues matérialisées sans leur accorder d'autorisations directes sur les tables sources sous-jacentes. Si le rôle de définition de vues perd l'accès à une table de base, les opérations d'actualisation suivantes échoueront jusqu'à ce que les autorisations soient restaurées.

Autorisations pour les vues matérialisées

Pour créer et gérer des vues matérialisées, vous devez configurer AWS Lake Formation les autorisations. Le rôle IAM qui crée la vue matérialisée (le rôle de définition) nécessite des autorisations spécifiques sur les tables sources et les bases de données cibles.

Autorisations requises pour le rôle de définisseur

Le rôle de définition doit disposer des autorisations Lake Formation suivantes :

  • Sur les tables sources : autorisations SELECT ou ALL sans filtres de ligne, de colonne ou de cellule

  • Sur la base de données cible : autorisation CREATE_TABLE

  • Sur le catalogue AWS Glue de données GetTable et les autorisations CreateTable d'API

Lorsque vous créez une vue matérialisée, l'ARN du rôle de définition est stocké dans la définition de la vue. Le catalogue AWS Glue de données assume ce rôle lors de l'exécution des opérations d'actualisation automatique. Si le rôle de définition perd l'accès aux tables sources, les opérations d'actualisation échoueront tant que les autorisations ne seront pas restaurées.

Autorisations IAM pour les tâches AWS Glue

Le rôle IAM de votre AWS Glue travail nécessite les autorisations suivantes :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:GetCatalog", "glue:GetCatalogs", "glue:GetTable", "glue:GetTables", "glue:CreateTable", "glue:UpdateTable", "glue:DeleteTable", "glue:GetDatabase", "glue:GetDatabases", "cloudwatch:PutMetricData" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:*:*:*:/aws-glue/*" ] }, { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess" ], "Resource": "*" } ] }

Le rôle que vous utilisez pour l'actualisation automatique de Materialized View doit disposer de l'PassRole autorisation iam : sur le rôle.

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::111122223333:role/materialized-view-role-name" ] } ] }

Pour que Glue actualise automatiquement la vue matérialisée pour vous, le rôle doit également être soumis à la politique de confiance suivante qui permet au service d'assumer le rôle.

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::111122223333:role/materialized-view-role-name" ] } ] }

Si la vue matérialisée est stockée dans des compartiments de tables S3, vous devez également ajouter l'autorisation suivante au rôle.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3tables:PutTableMaintenanceConfiguration" ], "Resource": "arn:aws:s3tables:*:123456789012:*" } ] }

Octroi de l'accès aux vues matérialisées

Pour autoriser d'autres utilisateurs à interroger une vue matérialisée, accordez l' AWS Lake Formation autorisation SELECT sur la table des vues matérialisées. Les utilisateurs peuvent interroger la vue matérialisée sans avoir besoin d'accéder directement aux tables sources sous-jacentes.

Pour obtenir des informations détaillées sur la configuration des autorisations de Lake Formation, consultez la section Octroi et révocation d'autorisations sur les ressources du catalogue de données dans le manuel du AWS Lake Formation développeur.

Création et gestion de vues matérialisées

Vous créez des vues matérialisées à l'aide de l'CREATE MATERIALIZED VIEWinstruction SQL dans les moteurs Spark. La définition de la vue spécifie la requête SQL qui définit la logique de transformation, la base de données cible et le nom de la table, ainsi que la configuration d'actualisation facultative. Vous pouvez définir des transformations complexes, notamment des agrégations, des jointures entre plusieurs tables, des filtres et des fonctions de fenêtre.

CREATE MATERIALIZED VIEW sales_summary AS SELECT region, product_category, SUM(sales_amount) as total_sales, COUNT(DISTINCT customer_id) as unique_customers FROM sales_transactions WHERE transaction_date >= current_date - interval '90' day GROUP BY region, product_category;

Pour configurer l'actualisation automatique, incluez le calendrier d'actualisation dans la définition de votre vue :

CREATE MATERIALIZED VIEW sales_summary SCHEDULE REFRESH EVERY 1 HOUR AS SELECT region, product_category, SUM(sales_amount) as total_sales FROM sales_transactions GROUP BY region, product_category;

Vous pouvez actualiser manuellement une vue matérialisée à tout moment à l'aide de la REFRESH MATERIALIZED VIEW commande :

REFRESH MATERIALIZED VIEW sales_summary;

Pour modifier le calendrier d'actualisation d'une vue matérialisée existante, utilisez l'ALTER MATERIALIZED VIEWinstruction suivante :

ALTER MATERIALIZED VIEW sales_summary ADD SCHEDULE REFRESH EVERY 2 HOURS;

Vues matérialisées imbriquées

Vous pouvez créer des vues matérialisées qui font référence à d'autres vues matérialisées sous forme de tables de base, ce qui permet des transformations de données en plusieurs étapes. Lorsque vous créez des vues matérialisées imbriquées, le catalogue de AWS Glue données suit les dépendances et propage automatiquement les mises à jour dans la hiérarchie des vues matérialisées. Lorsqu'une vue matérialisée de base est actualisée, toutes les vues matérialisées en aval qui en dépendent sont mises à jour en conséquence.

Cette fonctionnalité vous permet de décomposer les transformations complexes en étapes logiques, d'améliorer la maintenabilité et de permettre l'actualisation sélective des couches de transformation en fonction de vos exigences en matière de fraîcheur des données.

Stockage et accès aux données

Les vues matérialisées stockent les résultats précalculés sous forme de tables Apache Iceberg dans des compartiments S3 Tables ou de compartiments S3 à usage général au sein de votre compte. AWS Le catalogue de AWS Glue données gère tous les aspects de la maintenance des tables Iceberg, y compris le compactage et la conservation des instantanés, grâce aux fonctionnalités d'optimisation automatisées de S3 Tables.

Les vues matérialisées étant stockées sous forme de tables Iceberg, vous pouvez les lire directement à partir de n'importe quel moteur compatible avec Iceberg, notamment Amazon Athena, Amazon Redshift et des plateformes d'analyse tierces. Cette accessibilité multimoteur garantit que vos données précalculées restent accessibles dans l'ensemble de votre écosystème d'analyse sans duplication des données ni conversion de format.

Intégration avec AWS Lake Formation les autorisations

Vous pouvez l'utiliser AWS Lake Formation pour gérer des autorisations précises sur les vues matérialisées. Le créateur de la vue devient automatiquement propriétaire de la vue matérialisée et peut accorder des autorisations à d'autres utilisateurs ou rôles à l'aide AWS Lake Formation de sa méthode de ressource nommée ou de balises LF.

Lorsque vous accordez à un utilisateur l'SELECTautorisation d'accéder à une vue matérialisée, il peut interroger les résultats précalculés sans avoir besoin d'accéder aux tables sources sous-jacentes. Ce modèle de sécurité simplifie la gestion de l'accès aux données et vous permet de mettre en œuvre le principe du moindre privilège, en permettant aux utilisateurs d'accéder uniquement aux transformations de données spécifiques dont ils ont besoin.

Vous pouvez partager des vues matérialisées entre AWS comptes, AWS organisations et unités organisationnelles à l'aide des fonctionnalités AWS Lake Formation de partage entre comptes. Vous pouvez également accéder à des vues matérialisées dans toutes AWS les régions à l'aide de liens vers des ressources, ce qui permet une gouvernance centralisée des données avec un accès distribué aux données.

Surveillance et débogage

Le catalogue de AWS Glue données publie toutes les opérations d'actualisation des vues matérialisées et les métriques associées sur Amazon CloudWatch. Vous pouvez surveiller l'heure de début, l'heure de fin, la durée, le volume de données traité et l'état de l'actualisation grâce à CloudWatch des métriques. Lorsque les opérations d'actualisation échouent, les messages d'erreur et les informations de diagnostic sont enregistrés dans CloudWatch les journaux.

Vous pouvez configurer des CloudWatch alarmes pour recevoir des notifications lorsque les tâches d'actualisation dépassent la durée prévue ou échouent à plusieurs reprises. Le catalogue de AWS Glue données publie également les événements de modification relatifs aux exécutions d'actualisation réussies ou non, ce qui vous permet d'intégrer les opérations de visualisation matérialisée dans une automatisation plus large des flux de travail.

Pour vérifier l'état actuel d'une vue matérialisée, utilisez la commande DESCRIBE MATERIALIZED VIEW SQL, qui renvoie des métadonnées telles que l'état d'obsolescence, l'horodatage de la dernière actualisation et la configuration du calendrier d'actualisation.

Gestion des tâches d'actualisation

Lancer une actualisation manuelle

Déclenchez une actualisation immédiate en dehors de l'intervalle planifié.

Autorisation requise : les AWS informations d'identification utilisées pour effectuer l'appel d'API doivent être glue:GetTable autorisées à accéder à la vue matérialisée.

Pour le catalogue de tables S3 :

aws glue start-materialized-view-refresh-task-run \ --catalog-id <ACCOUNT_ID>:s3tablescatalog/<CATALOG_NAME> \ --database-name <DATABASE_NAME> \ --table-name <MV_TABLE_NAME>

Pour Root Catalog :

aws glue start-materialized-view-refresh-task-run \ --catalog-id <ACCOUNT_ID> \ --database-name <DATABASE_NAME> \ --table-name <MV_TABLE_NAME>

Vérification de l'état d'actualisation

Obtenez le statut d'une tâche d'actualisation spécifique :

aws glue get-materialized-view-refresh-task-run \ --catalog-id <CATALOG_ID> \ --materialized-view-refresh-task-run-id <TASK_RUN_ID>

Historique d'actualisation des annonces

Affichez toutes les tâches d'actualisation pour obtenir une vue matérialisée :

aws glue list-materialized-view-refresh-task-runs \ --catalog-id <CATALOG_ID> \ --database-name <DATABASE_NAME> \ --table-name <MV_TABLE_NAME>
Note

<ACCOUNT_ID>:s3tablescatalog/<CATALOG_NAME>À utiliser pour les tables S3 ou <ACCOUNT_ID> pour le catalogue racine.

Arrêt d'une actualisation en cours

Annuler une tâche d'actualisation en cours :

aws glue stop-materialized-view-refresh-task-run \ --catalog-id <CATALOG_ID> \ --database-name <DATABASE_NAME> \ --table-name <MV_TABLE_NAME>

Surveillance et résolution des problèmes

Il existe trois méthodes pour surveiller les tâches d'actualisation des vues matérialisées :

CloudWatch Métriques

Consultez les statistiques agrégées pour toutes vos tâches d'actualisation de vues matérialisées dans CloudWatch :

Métriques disponibles :

  • AWS/Glue l'espace de noms avec les dimensions suivantes :

    • CatalogId: identifiant de votre catalogue

    • DatabaseName: base de données contenant la vue matérialisée

    • TableName: nom de la vue matérialisée

    • TaskType: défini sur « MaterializedViewRefresh »

Affichage dans la console :

  1. Accédez à la CloudWatch console → Métriques

  2. Sélectionnez l'espace de AWS noms /Glue

  3. Filtrer par dimensions : CatalogId DatabaseName, TableName, TaskType

  4. Afficher les indicateurs de réussite, d'échec et de durée des tâches

Exemple de requête de CloudWatch métriques :

{AWS/Glue,CatalogId,DatabaseName,TableName,TaskType} MaterializedViewRefresh

En utilisant AWS CLI :

aws cloudwatch get-metric-statistics \ --namespace AWS/Glue \ --metric-name <MetricName> \ --dimensions Name=CatalogId,Value=<CATALOG_ID> \ Name=DatabaseName,Value=<DATABASE_NAME> \ Name=TableName,Value=<TABLE_NAME> \ Name=TaskType,Value=MaterializedViewRefresh \ --start-time <START_TIME> \ --end-time <END_TIME> \ --period 3600 \ --statistics Sum \ --region <REGION>

CloudWatch Journaux

Consultez les journaux d'exécution détaillés pour chaque exécution de tâches d'actualisation :

Groupe de journaux : /aws-glue/materialized-views/<task_run_id>

Où se <task_run_id> trouve un UUID (par exemple, abc12345-def6-7890-ghij-klmnopqrstuv).

Affichage des journaux :

# List log streams for a task run aws logs describe-log-streams \ --log-group-name /aws-glue/materialized-views/<TASK_RUN_ID> \ --region <REGION> # Get log events aws logs get-log-events \ --log-group-name /aws-glue/materialized-views/<TASK_RUN_ID> \ --log-stream-name <LOG_STREAM_NAME> \ --region <REGION>

Dans CloudWatch la console :

  1. Accédez à CloudWatch → Groupes de journaux

  2. Recherchez /aws-glue/materialized-views/

  3. Sélectionnez le groupe de journaux avec votre ID d'exécution de tâche

  4. Afficher les journaux d'exécution détaillés, les erreurs et les résultats des tâches Spark

Notifications

Abonnez-vous aux événements pour recevoir des notifications en temps réel concernant les modifications de l'état des tâches d'actualisation :

Types d'événements disponibles :

  • La tâche d'actualisation de Glue Materialized View a démarré

  • La tâche d'actualisation de Glue Materialized View a réussi

  • Echec de la tâche d'actualisation de Glue Materialized View

  • Échec de l'invocation de l'actualisation automatique de Glue Materialized View

Création d'une règle :

aws events put-rule \ --name materialized-view-refresh-notifications \ --event-pattern '{ "source": ["aws.glue"], "detail-type": [ "Glue Materialized View Refresh Task Started", "Glue Materialized View Refresh Task Succeeded", "Glue Materialized View Refresh Task Failed", "Glue Materialized View Auto-Refresh Invocation Failure" ] }' \ --region <REGION>

Ajouter une cible (par exemple, une rubrique SNS) :

aws events put-targets \ --rule materialized-view-refresh-notifications \ --targets "Id"="1","Arn"="arn:aws:sns:<REGION>:<ACCOUNT_ID>:<TOPIC_NAME>" \ --region <REGION>

Affichage de l'état d'actualisation

Vérifiez l'état de vos tâches d'actualisation de vues matérialisées à l'aide de l' AWS Glue API :

aws glue get-materialized-view-refresh-task-run \ --catalog-id <CATALOG_ID> \ --materialized-view-refresh-task-run-id <TASK_RUN_ID> \ --region <REGION>

Ou listez toutes les opérations d'actualisation récentes :

aws glue list-materialized-view-refresh-task-runs \ --catalog-id <CATALOG_ID> \ --database-name <DATABASE_NAME> \ --table-name <MV_TABLE_NAME> \ --region <REGION>

Cela montre :

  • Heure de la dernière actualisation

  • État d'actualisation (RÉUSSI, ÉCHEC, EXÉCUTION, ARRÊT)

  • ID d'exécution de la tâche

  • Messages d'erreur (en cas d'échec)

États d'actualisation courants :

  • EN COURS D'EXÉCUTION : le travail d'actualisation est en cours d'exécution

  • RÉUSSI : L'actualisation s'est terminée avec succès

  • ÉCHEC : une erreur s'est produite lors de l'actualisation

  • ARRÊTÉ : L'actualisation a été annulée manuellement

Résolution des problèmes d'échec des actualisations :

Si l'actualisation échoue, vérifiez :

  1. Autorisations IAM : assurez-vous que le rôle de définisseur a accès à toutes les tables de base et à l'emplacement de la vue matérialisée

  2. Disponibilité des tables de base : Vérifiez que toutes les tables référencées existent et sont accessibles

  3. Validité de la requête : vérifiez que la requête SQL est valide pour le dialecte Spark SQL

  4. Limites de ressources : vérifiez si vous avez atteint les limites d'actualisation simultanées de votre compte

Utilisez l' GetMaterializedViewRefreshTaskRun API pour récupérer des messages d'erreur détaillés.

Considérations et restrictions

  • Les vues matérialisées peuvent uniquement faire référence aux tables Apache Iceberg enregistrées dans le catalogue de AWS Glue données en tant que tables de base.

  • La création de vues et la réécriture automatique des requêtes ne sont disponibles qu'à partir des moteurs Spark dans les versions 3.5.6 et supérieures d'Apache Spark sur Amazon Athena AWS Glue , Amazon EMR et (version 5.1).

  • Les vues matérialisées sont finalement cohérentes avec les tables de base. Pendant la fenêtre d'actualisation, les requêtes accédant directement à la vue matérialisée peuvent renvoyer des données obsolètes. Pour accéder immédiatement aux données actuelles, effectuez une actualisation manuelle.

  • L'intervalle d'actualisation automatique minimum est d'une heure. Pour les cas d'utilisation nécessitant des mises à jour plus fréquentes, exécutez des actualisations manuelles par programmation à l'aide de la commande. REFRESH MATERIALIZED VIEW

  • La réécriture des requêtes privilégie l'exactitude par rapport aux performances. Si une vue matérialisée est obsolète ou ne peut pas répondre avec précision aux exigences de la requête, les moteurs Spark exécutent la requête d'origine sur les tables de base.