Aller au contenu principal

Accéder aux vues matérialisées et aux tables de streaming à l'aide de systèmes externes

Par default, les vues matérialisées et les tables de streaming ne sont pas accessibles à partir de systèmes externes. Databricks propose deux fonctionnalités qui vous permettent de rendre vos datasets disponibles aux clients Delta Lake ou Iceberg :

  • Accès aux données externes (préversion publique) – L'activation de l'*accès aux données externes* pour les datasets de pipeline crée une copie des métadonnées du dataset qui permet aux clients d'utiliser les API REST Unity Catalog ou Iceberg, sans nécessiter une copie complète des données ni un programme de refresh séparé. Les clients doivent utiliser les API REST du catalogue et prendre en charge Delta 4.0.0 ou version ultérieure, ou la spécification Iceberg v3.

    Pour plus de détails sur l'accès aux données externes pour les datasets de pipeline, consultez Activer l'accès aux données externes aux tables de streaming et aux vues matérialisées.

  • Mode de compatibilité (Public Preview) - L'activation du mode de compatibilité pour un dataset génère une version en lecture seule de vos données à un emplacement choisi, qui doit être mise à jour lorsque les tables sont actualisées. La version de compatibilité inclut des métadonnées v1 pour les formats Delta Lake et Iceberg ainsi que la copie en lecture seule des données, permettant l'accès à un plus large éventail de clients (y compris les clients qui doivent lire les données de la table directement, plutôt que via une API) au détriment du délai sur les mises à jour des données et des coûts de copie des données.

    Pour plus de détails sur le Mode de compatibilité, consultez le Mode de compatibilité.

Si vos clients externes prennent en charge les API REST, Databricks recommande d'utiliser l'accès aux données externes pour leur donner accès aux vues matérialisées ou aux tables de streaming. Pour un plus grand nombre de clients, en particulier les plus anciens, et les autres tables gérées par Unity Catalog, utilisez le mode de compatibilité.

Compétence

Accès aux données externes

Mode de compatibilité

Copie des données

Aucune copie de données n'est requise.

Copie des données requise.

Cohérence

Cohérence lecture-après-écriture. Les clients externes voient les modifications dès qu'elles se produisent dans le dataset.

Les mises à jour ont lieu selon une programmation. default, la table de compatibilité est mise à jour toutes les heures. Ceci peut être configuré pour être mis à jour immédiatement après une modification de la table source, mais cela est toujours retardé par le temps de copie des données.

Accès

Nécessite un accès à l’API REST « moderne ». Prend en charge les API de catalogue Delta 4.0.0 ou supérieures ou les API de spécification Iceberg v3 (nécessite la prise en charge des vecteurs de suppression).

Compatible avec tous les clients Delta Lake ou Iceberg.

Objet de table unique

Les vues matérialisées et les tables de streaming apparaissent comme des tables gérées avec le même nom que le dataset d'origine pour les clients externes.

Les tables de compatibilité apparaissent comme une nouvelle table à un nouvel emplacement pour les clients externes.

Prise en charge du type de table

Prend en charge les vues matérialisées et les tables de streaming gérées par un Lakeflow pipeline.

Prend en charge les vues matérialisées et les tables de streaming, qu'elles soient gérées par un LakeFlow Pipelines ou autonomes, ainsi que toute autre table gérée par Unity Catalog.

Coût

Le coût de maintenance des métadonnées externes fait partie du coût de refresh de la vue matérialisée ou de la table de streaming. Cela représente généralement moins de 1 % du coût et du temps pour le refresh.

La majorité du coût pour le mode de compatibilité est le coût du transfert des données héritées vers le nouvel emplacement.

Compétence

Accès aux données externes

Mode de compatibilité

Copie des données

Aucune copie de données n'est requise.

Copie des données requise.

Cohérence

Cohérence lecture-après-écriture. Les clients externes voient les modifications dès qu'elles se produisent dans le dataset.

Les mises à jour ont lieu selon une programmation. default, la table de compatibilité est mise à jour toutes les heures. Ceci peut être configuré pour être mis à jour immédiatement après une modification de la table source, mais cela est toujours retardé par le temps de copie des données.

Accès

Nécessite un accès à l’API REST « moderne ». Prend en charge les API de catalogue Delta 4.0.0 ou supérieures ou les API de spécification Iceberg v3 (nécessite la prise en charge des vecteurs de suppression).

Compatible avec tous les clients Delta Lake ou Iceberg.

Objet de table unique

Les vues matérialisées et les tables de streaming apparaissent comme des tables gérées avec le même nom que le dataset d'origine pour les clients externes.

Les tables de compatibilité apparaissent comme une nouvelle table à un nouvel emplacement pour les clients externes.

Prise en charge du type de table

Prend en charge les vues matérialisées et les tables de streaming gérées par un Lakeflow pipeline.

Prend en charge les vues matérialisées et les tables de streaming, qu'elles soient gérées par un LakeFlow Pipelines ou autonomes, ainsi que toute autre table gérée par Unity Catalog.

Coût

Le coût de maintenance des métadonnées externes fait partie du coût de refresh de la vue matérialisée ou de la table de streaming. Cela représente généralement moins de 1 % du coût et du temps pour le refresh.

La majorité du coût pour le mode de compatibilité est le coût du transfert des données héritées vers le nouvel emplacement.

Ressources supplémentaires