Перейти к основному содержимому

BigQuery и Apache Iceberg

dbt поддерживает материализацию таблиц Iceberg в BigQuery через интеграцию с каталогом, начиная с релиза dbt-bigquery 1.10.

Создание таблиц Iceberg

dbt поддерживает создание таблиц Iceberg для двух materialization в BigQuery:

Каталоги BigQuery Iceberg

В настоящее время BigQuery поддерживает таблицы Iceberg через встроенный каталог BigLake Metastore. Для доступа к BigLake Metastore не требуется дополнительная настройка. Однако перед созданием таблицы Iceberg необходимо заранее настроить storage bucket и необходимые роли BigQuery.

Конфигурации интеграции каталога dbt для BigQuery

В таблице ниже приведены поля конфигурации, необходимые для настройки интеграции каталога для таблиц BigLake Iceberg в BigQuery.

Настройка интеграции каталога для управляемых таблиц Iceberg

  1. Создайте файл catalogs.yml в корне вашего dbt‑проекта.

    Пример:

catalogs:
- name: my_bigquery_iceberg_catalog
active_write_integration: biglake_metastore
write_integrations:
- name: biglake_metastore
external_volume: 'gs://mydbtbucket'
table_format: iceberg
file_format: parquet
catalog_type: biglake_metastore

  1. Примените конфигурацию каталога на уровне модели, папки или всего проекта:
iceberg_model.sql

{{
config(
materialized='table',
catalog_name='my_bigquery_iceberg_catalog'

)
}}

select * from {{ ref('jaffle_shop_customers') }}

  1. Выполните модель dbt с помощью команды dbt run -s iceberg_model.

Ограничения

На данный момент BigQuery не поддерживает подключение к внешним каталогам Iceberg. Что касается SQL‑операций и возможностей управления таблицами, см. документацию BigQuery для получения дополнительной информации.

Нашли ошибку?

0
Loading