Настройка ClickHouse
Некоторая основная функциональность может быть ограничена. Если вы заинтересованы в участии, ознакомьтесь с исходным кодом для каждого из перечисленных ниже репозиториев.
- Поддерживается: Community
- Авторы: Geoff Genz & Bentsi Leviav
- Репозиторий GitHub: ClickHouse/dbt-clickhouse
- Пакет PyPI:
dbt-clickhouse - Канал в Slack: #db-clickhouse
- Поддерживаемая версия dbt Core: v0.19.0 и новее
- Поддержка dbt: Not Supported
- Минимальная версия платформы данных: n/a
Установка dbt-clickhouse
Установите адаптер с помощью pip. До версии 1.8 установка адаптера автоматически устанавливала dbt-core и любые дополнительные зависимости. Начиная с 1.8 установка адаптера не устанавливает dbt-core автоматически. Это потому, что версии адаптеров и dbt Core были развязаны, и мы больше не хотим перезаписывать существующие установки dbt-core.
Используйте следующую команду для установки:
python -m pip install dbt-core dbt-clickhouse
Настройка dbt-clickhouse
Конфигурацию, специфичную для Clickhouse, см. на странице настроек Clickhouse.
Подключение к ClickHouse
Чтобы подключиться к ClickHouse из dbt, вам необходимо добавить профиль
в файл конфигурации profiles.yml. Используйте эталонную конфигурацию ниже, чтобы настроить профиль ClickHouse:
clickhouse-service:
target: dev
outputs:
dev:
type: clickhouse
schema: [ default ] # База данных ClickHouse для моделей dbt
# необязательно
host: [ <your-clickhouse-host> ] # URL вашего кластера ClickHouse, например abc123.clickhouse.cloud. По умолчанию `localhost`.
port: [ 8123 ] # По умолчанию 8123, 8443, 9000 или 9440 в зависимости от настроек secure и используемого драйвера
user: [ default ] # Пользователь для всех операций с базой данных
password: [ <empty string> ] # Пароль пользователя
secure: [ False ] # Использовать TLS (native protocol) или HTTPS (http protocol)
Полный список параметров конфигурации см. в документации ClickHouse.
Создание проекта dbt
Теперь вы можете использовать этот профиль в одном из существующих проектов или создать новый с помощью команды:
dbt init project_name
Перейдите в директорию project_name и обновите файл dbt_project.yml, указав профиль, который вы настроили для подключения к ClickHouse.
profile: 'clickhouse-service'
Проверка подключения
Выполните команду dbt debug с помощью CLI, чтобы убедиться, что dbt может подключиться к ClickHouse. Убедитесь, что в выводе есть строка Connection test: [OK connection ok], которая означает успешное подключение.
Поддерживаемые возможности
Возможности dbt
| Loading table... |
Материализации
| Loading table... |
Примечание: Возможности, разработанные сообществом, помечены как experimental. Несмотря на этот статус, многие из них, например materialized views, широко используются и успешно применяются в продакшене.
Документация
Подробнее об использовании адаптера dbt-clickhouse для управления моделями данных см. в документации ClickHouse.
Вклад в проект
Мы приветствуем вклад сообщества в развитие адаптера dbt-ClickHouse. Будь то исправление ошибки, добавление новой возможности или улучшение документации — любая помощь будет очень полезна!
Пожалуйста, ознакомьтесь с нашим руководством по внесению вклада, чтобы начать работу. В нём приведены подробные инструкции по настройке окружения, запуску тестов и отправке pull request’ов.