Подключение Dremio к dbt v1
- Поддерживается: Dremio
- Авторы: Dremio
- Репозиторий GitHub: dremio/dbt-dremio
- Пакет PyPI:
dbt-dremio - Канал Slack: db-dremio
- Поддерживаемая версия dbt: v1.8.0 и новее
- Поддержка dbt: Not Supported
- Минимальная версия платформы данных: Dremio 22.0
Установка dbt-dremio
Установите адаптер с помощью `pip`:python -m pip install dbt-dremio
Настройка dbt-dremio
Конфигурацию, специфичную для Dremio, см. на странице настроек Dremio.
Следуйте по ссылке репозитория для получения информации о зависимостях ОС.
Model contracts не поддерживаются.
Предварительные условия для Dremio Cloud
Перед подключением проекта к Dremio Cloud выполните следующие предварительные шаги:
- Убедитесь, что у вас есть ID проекта Sonar, который вы хотите использовать. См. Получение ID проекта.
- Убедитесь, что у вас есть персональный токен доступа (PAT) для аутентификации в Dremio Cloud. См. Создание токена.
- Убедитесь, что на системе, на которой вы запускаете dbt, установлена версия Python 3.9.x или более поздняя.
Предварительные условия для Dremio Software
-
Убедитесь, что вы используете версию 22.0 или более позднюю.
-
Убедитесь, что на системе, на которой вы запускаете dbt, установлена версия Python 3.9.x или более поздняя.
-
Если вы хотите использовать TLS для защиты соединения между dbt и Dremio Software, настройте полное шифрование сетевого трафика (full wire encryption) в вашем кластере Dremio. Инструкции см. в разделе Configuring Wire Encryption.
Инициализация проекта
- Выполните команду
dbt init <project_name>. - Выберите
dremioв качестве используемой базы данных. - Выберите один из следующих вариантов для генерации профиля вашего проекта:
dremio_cloudдля работы с Dremio Cloudsoftware_with_username_passwordдля работы с кластером Dremio Software и аутентификации в кластере с использованием имени пользователя и пароляsoftware_with_patдля работы с кластером Dremio Software и аутентификации в кластере с использованием персонального токена доступа
Далее настройте профиль для вашего проекта.
Профили
Когда вы инициализируете проект, вы создаете один из этих трех профилей. Вы должны настроить его перед попыткой подключения к Dremio Cloud или Dremio Software.
- Профиль для Dremio Cloud
- Профиль для Dremio Software с аутентификацией по имени пользователя/паролю
- Профиль для Dremio Software с аутентификацией через персональный токен доступа
Для описания конфигураций в этих профилях см. Конфигурации.
- Cloud
- Software (Имя пользователя/Пароль)
- Software (Персональный токен доступа)
[project name]:
outputs:
dev:
cloud_host: api.dremio.cloud
cloud_project_id: [project ID]
object_storage_source: [name]
object_storage_path: [path]
dremio_space: [name]
dremio_space_folder: [path]
pat: [personal access token]
threads: [integer >= 1]
type: dremio
use_ssl: true
user: [email address]
target: dev
[project name]:
outputs:
dev:
password: [password]
port: [port]
software_host: [hostname or IP address]
object_storage_source: [name
object_storage_path: [path]
dremio_space: [name]
dremio_space_folder: [path]
threads: [integer >= 1]
type: dremio
use_ssl: [true|false]
user: [username]
target: dev
[project name]:
outputs:
dev:
pat: [personal access token]
port: [port]
software_host: [hostname or IP address]
object_storage_source: [name
object_storage_path: [path]
dremio_space: [name]
dremio_space_folder: [path]
threads: [integer >= 1]
type: dremio
use_ssl: [true|false]
user: [username]
target: dev
Общие конфигурации для профилей Dremio Cloud и Dremio Software
| Конфигурация | Обязательна? | Значение по умолчанию | Описание |
|---|---|---|---|
type | Да | dremio | Заполняется автоматически при создании проекта Dremio. Не изменяйте это значение. |
threads | Да | 1 | Количество потоков, используемых для выполнения проекта dbt. |
object_storage_source | Нет | $scratch | Имя файловой системы, в которой будут создаваться таблицы, материализованные представления, тесты и другие объекты. Псевдоним в dbt — datalake. Это имя соответствует имени источника в разделе Object Storage на странице Datasets в Dremio; на следующем изображении это "Samples": |
object_storage_path | Нет | no_schema | Путь в файловой системе, в котором будут создаваться объекты. По умолчанию используется корневой уровень файловой системы. Псевдоним в dbt — root_path. Вложенные папки в пути разделяются точками. Это значение соответствует пути в указанном месте на странице Datasets в Dremio; на следующем изображении это "samples.dremio.com.Dremio University": |
dremio_space | Нет | @\<username> | Имя пространства Dremio, в котором будут создаваться представления. Псевдоним в dbt — database. Это значение соответствует имени в указанном месте в разделе Spaces на странице Datasets в Dremio: |
dremio_space_folder | Нет | no_schema | Папка в пространстве Dremio, в которой будут создаваться представления. По умолчанию используется верхний уровень пространства. Псевдоним в dbt — schema. Вложенные папки разделяются точками. Это значение соответствует пути в указанном месте на странице Datasets в Dremio; на следующем изображении это Folder1.Folder2: |
Конфигурации в профилях для Dremio Cloud
| Конфигурация | Обязательна? | Значение по умолчанию | Описание |
|---|---|---|---|
cloud_host | Да | api.dremio.cloud | Контрольная плоскость США: api.dremio.cloudКонтрольная плоскость ЕС: api.eu.dremio.cloud |
user | Да | Нет | Адрес электронной почты, используемый в качестве имени пользователя в Dremio Cloud |
pat | Да | Нет | Персональный токен доступа для аутентификации. См. Персональные токены доступа для получения инструкций о получении токена. |
cloud_project_id | Да | Нет | ID проекта Sonar, в котором выполняются преобразования. |
use_ssl | Да | true | Значение должно быть true. |
Конфигурации в профилях для Dremio Software
| Конфигурация | Обязательна? | Значение по умолчанию | Описание |
|---|---|---|---|
software_host | Да | Нет | Имя хоста или IP-адрес узла-координатора кластера Dremio. |
port | Да | 9047 | Порт конечных точек API кластера Dremio Software. |
user | Да | Нет | Имя пользователя учётной записи для входа в кластер Dremio. |
password | Да, если не используется параметр pat. | Нет | Пароль учётной записи для входа в кластер Dremio. |
pat | Да, если не используются параметры user и password. | Нет | Персональный токен доступа для аутентификации в Dremio. Инструкции по получению токена см. в разделе Персональные токены доступа. Если указаны значения всех трёх параметров user, password и pat, приоритет имеет персональный токен доступа. |
use_ssl | Да | true | Допустимые значения: true и false. Если установлено значение true, убедитесь, что в кластере Dremio настроено полное шифрование передаваемых данных. См. раздел Предварительные требования для Dremio Software. |



