Lakehouse pour Apache Iceberg est compatible avec plusieurs types de tables, offrant différents niveaux de gestion, de performances et d'interopérabilité pour votre lakehouse sur Google Cloud. En fonction de l'origine de vos données, des exigences du moteur d'écriture et de vos besoins en matière de contrôle, vous pouvez choisir des formats de table compatibles avec le catalogue d'environnements d'exécution Lakehouse ou BigQuery.
Formats de table compatibles
Seules les tables Apache Iceberg V2 sont compatibles. Les tables Iceberg V1 ne le sont pas. Si vous disposez de tables Iceberg V1 existantes, vous devez les mettre à niveau vers la version V2 (par exemple, en exécutant ALTER TABLE catalog.schema.table SET TBLPROPERTIES ('format-version'='2'); ou en utilisant des opérations de moteur similaires) avant de les utiliser avec Lakehouse pour Apache Iceberg.
Formats de table par catalogue et moteur
Sélectionnez un catalogue ou un moteur ci-dessous pour en savoir plus sur les formats de table compatibles, la configuration du metastore, les fonctionnalités d'optimisation du stockage et l'interopérabilité du moteur.
Catalogue REST Iceberg
Le catalogue d'environnements d'exécution Lakehouse gère les tables Apache Iceberg via le point de terminaison du catalogue REST Iceberg, fournissant une interface REST standard pour une large compatibilité avec les moteurs Open Source tels qu'Apache Spark, Apache Flink et Trino. Vous créez ces tables à partir de moteurs Open Source et les stockez dans Cloud Storage. Cette option est préférable si vous souhaitez que votre workflow ETL soit géré par des moteurs Open Source et que vous n'ayez besoin que d'un accès en lecture depuis BigQuery.
Principales fonctionnalités :
- Metastore : catalogue d'environnements d'exécution Lakehouse.
- Stockage : Cloud Storage.
- Optimisation du stockage : gérée par vous ou un tiers.
- Accès en lecture et en écriture:
- Moteurs Open Source : lecture et écriture.
- BigQuery : lecture seule.
- Cas d'utilisation : lakehouse ouvert avec un stockage hautes performances de niveau entreprise pour l'analyse avancée, le streaming et l'IA.
Metastore Hive
Le catalogue d'environnements d'exécution Lakehouse gère les tables Apache Hive via un point de terminaison Apache Hive Metastore (HMS) optimisé pour la compatibilité avec ExternalCatalog d'Apache Spark, ce qui vous permet de partager des données de manière transparente entre Apache Spark, Apache Hive et BigQuery. Vous créez ces tables à partir de moteurs Open Source et les stockez dans Cloud Storage. Cette option est préférable si vous souhaitez que votre workflow ETL soit géré par des moteurs Open Source sans avoir besoin d'un metastore Hive autohébergé distinct et que vous n'ayez besoin que d'un accès en lecture depuis BigQuery.
Principales fonctionnalités :
- Metastore : catalogue d'environnements d'exécution Lakehouse (via
IMetastoreClientpersonnalisé). - Stockage : Cloud Storage (compatible avec des formats tels que Parquet, ORC, et Avro).
- Optimisation du stockage : gérée par vous ou un tiers.
- Accès en lecture et en écriture:
- Moteurs Open Source (Spark et Hive) : lecture et écriture.
- BigQuery : lecture seule.
- Cas d'utilisation : migration des charges de travail Spark et Hive existantes vers un metastore sans serveur entièrement géré sur Google Cloud.
BigQuery
BigQuery est compatible avec les tables Apache Iceberg, les tables natives et les tables externes.
Tables Apache Iceberg : il s'agit de tables Apache Iceberg que vous créez et gérez à partir de BigQuery, et que vous stockez dans Cloud Storage. Bien qu'elles puissent être lues par des moteurs Open Source, BigQuery est le moteur qui gère les métadonnées et y écrit. Cette option est préférable si vous souhaitez que votre workflow soit entièrement géré par BigQuery.
Tables natives : il s'agit de tables BigQuery natives. Elles sont entièrement gérées et offrent les fonctionnalités d'analyse et de gestion les plus avancées. Cette option est préférable pour les charges de travail non Iceberg.
Tables externes : ces tables sont des constructions spécifiques à BigQuery pour les données stockées dans Cloud Storage, Amazon S3 ou Azure Blob Storage. Les données et les métadonnées sont autogérées, et BigQuery n'a qu'un accès en lecture. Choisissez cette option pour les données que vous souhaitez gérer directement dans un catalogue ou un stockage tiers.
Comparer les types de tables
Utilisez le tableau suivant pour comparer les types de tables entre le catalogue d'environnements d'exécution Lakehouse et BigQuery.
Lakehouse
| Apache Iceberg (DG) | Apache Hive (aperçu) | |
|---|---|---|
| Metastore | Catalogue d'environnements d'exécution Lakehouse | Catalogue d'environnements d'exécution Lakehouse |
| Stockage | Cloud Storage | Cloud Storage |
| Optimisation du stockage | Gérée par le client ou un tiers | Gérée par le client ou un tiers |
| Lecture / Écriture |
Moteurs Open Source (lecture/écriture) BigQuery (lecture seule) |
Moteurs Open Source (lecture/écriture) BigQuery (lecture seule) |
| Opérations avancées | Aucune | Aucun |
| Cas d'utilisation | Lakehouse ouvert | Migration des charges de travail Spark et Hive existantes vers un metastore sans serveur entièrement géré |
BigQuery
| Iceberg géré par BigQuery | Tables externes | Tables standards | |
|---|---|---|---|
| Metastore | BigQuery | Metastore externe ou autohébergée | BigQuery |
| Stockage | Cloud Storage | Cloud Storage / Amazon S3 / Azure | BigQuery |
| Optimisation du stockage | Gérée par Google | Gérée par le client ou un tiers | Gérée par Google |
| Lecture / Écriture |
Moteurs Open Source (lecture seule avec les bibliothèques Iceberg, interopérabilité en lecture/écriture avec l'API BigQuery Storage)
BigQuery (lecture/écriture) |
Moteurs Open Source (lecture/écriture) BigQuery (lecture seule) |
Moteurs Open Source (interopérabilité en lecture/écriture avec
API BigQuery Storage) BigQuery (lecture/écriture) |
| Opérations avancées | Streaming à haut débit avec l'API BigQuery Storage Write, capture des données modifiées (CDC) et transactions multi-instructions | Aucune | Streaming à haut débit avec l'API BigQuery Storage Write, capture des données modifiées (CDC) et transactions multi-instructions |
| Cas d'utilisation | Lakehouse ouvert avec un stockage hautes performances de niveau entreprise pour l'analyse avancée, le streaming et l'IA | Tables de préparation pour les chargements BigQuery, tables héritées en lecture seule | Stockage de niveau entreprise pour l'analyse avancée, le streaming et l'IA |
Étape suivante
Découvrez comment gérer les tables Apache Iceberg.
Découvrez comment importer des tables Iceberg externes à l'aide de Dataflow.
Découvrez comment utiliser la fédération de catalogues avec BigQuery.