Comprendre les types de tableaux et leurs fonctionnalités

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 IMetastoreClient personnalisé).
  • 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