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

Конфигурации Starrocks

Конфигурация модели

Модель dbt может быть настроена с использованием следующего синтаксиса:

dbt_project.yml
models:
<resource-path>:
materialized: table // table или view или materialized_view
keys: ['id', 'name', 'some_date']
table_type: 'PRIMARY' // PRIMARY или DUPLICATE или UNIQUE
distributed_by: ['id']
buckets: 3 // по умолчанию 10
partition_by: ['some_date']
partition_by_init: ["PARTITION p1 VALUES [('1971-01-01 00:00:00'), ('1991-01-01 00:00:00')),PARTITION p1972 VALUES [('1991-01-01 00:00:00'), ('1999-01-01 00:00:00'))"]
properties: [{"replication_num":"1", "in_memory": "true"}]
refresh_method: 'async' // только для materialized view, по умолчанию manual

Описание конфигурации

ОпцияОписание
materializedКак модель будет материализована в Starrocks. Поддерживает view, table, incremental, ephemeral и materialized_view.
keysКакие столбцы служат ключами.
table_typeТип таблицы, поддерживаются PRIMARY, DUPLICATE или UNIQUE.
distributed_byУказывает столбец для распределения данных. Если не указано, по умолчанию используется случайное распределение.
bucketsКоличество бакетов в одном разделе. Если не указано, будет автоматически определено.
partition_byСписок столбцов для разделения.
partition_by_initПравило разделения или некоторые реальные элементы разделов.
propertiesКонфигурация свойств таблицы Starrocks. (Свойства таблицы Starrocks)
refresh_methodКак обновлять материализованные представления.

Чтение из каталога

Сначала вам нужно добавить этот каталог в starrocks. Ниже приведен пример для hive.

CREATE EXTERNAL CATALOG `hive_catalog`
PROPERTIES (
"hive.metastore.uris" = "thrift://127.0.0.1:8087",
"type"="hive"
);

Как добавить другие типы каталогов, можно найти в документации. Обзор каталога Затем напишите файл sources.yaml.

sources:
- name: external_example
schema: hive_catalog.hive_db
tables:
- name: hive_table_name

Наконец, вы можете использовать следующий макрос quote

{{ source('external_example', 'hive_table_name') }}
0