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

Подключение Exasol к dbt v1

  • Поддерживается: Exasol
  • Авторы: Torsten Glunde, Ilija Kutle
  • Репозиторий GitHub: exasol/dbt-exasol
  • Пакет PyPI: dbt-exasol
  • Канал Slack: n/a
  • Поддерживаемая версия dbt: v1.8.0 и новее
  • Поддержка dbt: Not Supported
  • Минимальная версия платформы данных: Exasol 6.x

Установка dbt-exasol

Установите адаптер с помощью `pip`: python -m pip install dbt-exasol

Настройка dbt-exasol

Конфигурацию, специфичную для Exasol, см. на странице настроек Exasol.

Подключение к Exasol с помощью dbt-exasol​

Аутентификация по имени пользователя и паролю​

Настройте профиль dbt для работы с Exasol:

Параметры подключения к Exasol​
profiles.yml
dbt-exasol:
target: dev
outputs:
dev:
type: exasol
threads: 1
dsn: HOST:PORT
user: USERNAME
password: PASSWORD
dbname: db
schema: SCHEMA

Аутентификация OpenID (Exasol SaaS)​

В средах Exasol SaaS для аутентификации можно использовать токены OpenID вместо имени пользователя и пароля:

profiles.yml
dbt-exasol:
target: dev
outputs:
dev:
type: exasol
threads: 1
dsn: HOST:PORT
user: USERNAME
access_token: YOUR_ACCESS_TOKEN # или используйте refresh_token
dbname: db
schema: SCHEMA
encryption: True # обязательно для SaaS
  • access_token — Персональный токен доступа для аутентификации OpenID
  • refresh_token — Токен обновления для аутентификации OpenID (альтернатива access_token)
к сведению

Используйте либо access_token, либо refresh_token, но не оба одновременно. При использовании аутентификации OpenID в Exasol SaaS требуется шифрование TLS.

Необязательные параметры​

  • connection_timeout — по умолчанию используется значение по умолчанию из pyexasol
  • socket_timeout — по умолчанию используется значение по умолчанию из pyexasol
  • query_timeout — по умолчанию используется значение по умолчанию из pyexasol
  • compression — значение по умолчанию: False
  • encryption — значение по умолчанию: True. Включает шифрование SSL/TLS для защищённых подключений. Обязательно для Exasol SaaS
  • validate_server_certificate — значение по умолчанию: True. Проверяет сертификат SSL/TLS, если шифрование включено. Устанавливайте False только при разработке и тестировании с самоподписанными сертификатами (не рекомендуется для производственной среды)
  • protocol_version — значение по умолчанию: v3
  • row_separator — значение по умолчанию: CRLF для Windows, LF для остальных систем
  • timestamp_format — значение по умолчанию: YYYY-MM-DDTHH:MI:SS.FF6
Проверка сертификатов SSL/TLS

По умолчанию dbt-exasol проверяет сертификаты SSL/TLS, если encryption=True. При разработке и тестировании с самоподписанными сертификатами можно выбрать один из следующих вариантов:

  • Установить validate_server_certificate: False (не рекомендуется для производственной среды)
  • Указать отпечаток сертификата в DSN: dsn: myhost/FINGERPRINT:8563
  • Использовать dsn: myhost/nocertcheck:8563, чтобы пропустить проверку (только для тестирования)

Дополнительные сведения см. в документации PyExasol по безопасности.

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

0
Loading