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

Подключение Onehouse

dbt поддерживает подключение к Onehouse SQL с использованием Apache Spark Connector через метод Thrift.

примечание

Подключайтесь к Onehouse SQL Cluster с помощью адаптера dbt-spark.**

Требования​

  • Для dbt убедитесь, что ваш Onehouse SQL endpoint доступен через внешний DNS/IP, и выполнена настройка whitelisting IP-адресов dbt.

Что работает​

  • Все команды dbt, включая: dbt clean, dbt compile, dbt debug, dbt seed и dbt run.
  • Материализации dbt: table и incremental
  • Типы таблиц Apache Hudi: Merge on Read (MoR) и Copy on Write (CoW). Для изменяемых (mutable) нагрузок рекомендуется использовать MoR.

Ограничения​

  • Представления (views) не поддерживаются
  • Для dbt seed существуют ограничения по количеству строк / записей.
  • dbt seed поддерживает только таблицы Copy on Write.

Подключение dbt​

При создании подключения Apache Spark с использованием метода Thrift заполните следующие поля:

FieldDescriptionExamples
MethodМетод подключения к SparkThrift
HostnameИмя хоста endpoint’а вашего Onehouse SQL ClusteryourProject.sparkHost.com
PortПорт для подключения к Spark10000
ClusterOnehouse не использует это поле
Connection TimeoutКоличество секунд до таймаута соединения10
Connection RetriesКоличество попыток подключения к кластеру перед ошибкой0
OrganizationOnehouse не использует это поле
UserНеобязательно. По умолчанию не включено.dbt_cloud_user
AuthНеобязательно, укажите при использовании Kerberos. По умолчанию не включено.KERBEROS
Kerberos Service NameНеобязательно, укажите при использовании Kerberos. По умолчанию не включено.hive
Loading table...
Конфигурация OnehouseКонфигурация Onehouse

проект dbt​

Мы рекомендуем задать конфигурации по умолчанию в dbt_project.yml, чтобы адаптер выполнялся с SQL, совместимым с Onehouse.

FieldDescriptionRequiredDefaultRecommended
materializedМатериализация, используемая по умолчанию для проекта/каталогаYesбез указания — viewtable
file_formatФормат таблиц, используемый по умолчанию в проектеYesN/Ahudi
location_rootРасположение базы данных в DFSYesN/A<your_database_location_dfs>
hoodie.table.typeMerge on Read или Copy on WriteNocowmor
Loading table...

Шаблон dbt_project.yml

      +materialized: table | incremental
+file_format: hudi
+location_root: <storage_uri>
+tblproperties:
hoodie.table.type: mor | cow

Пример dbt_project.yml при использовании jaffle shop:

models:
jaffle_shop:
+file_format: hudi
+location_root: s3://lakehouse/demolake/dbt_ecomm/
+tblproperties:
hoodie.table.type: mor
staging:
+materialized: incremental
marts:
+materialized: table

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

0
Loading