Подключение Decodable к dbt v1
Некоторая основная функциональность может быть ограничена. Если вы заинтересованы в участии, ознакомьтесь с исходным кодом репозитория, указанного ниже.
- Поддерживается: Decodable
- Авторы: Decodable Team
- Репозиторий GitHub: decodableco/dbt-decodable
- Пакет PyPI:
dbt-decodable - Канал Slack: #general
- Поддерживаемая версия dbt: 1.3.1 и новее
- Поддержка dbt: Не поддерживается
- Минимальная версия платформы данных: n/a
Установка dbt-decodable
Установите адаптер с помощью `pip`:python -m pip install dbt-decodable
Настройка dbt-decodable
Конфигурацию, специфичную для Decodable, см. на странице настроек Decodable.
Подключение к Decodable с помощью dbt-decodable
Выполните следующие шаги для подключения к Decodable с помощью dbt.
Предварительные условия
Для правильного подключения к Decodable у вас должен быть установлен Decodable CLI, и вы должны хотя бы раз войти в Decodable с его помощью. См. Установка Decodable CLI для получения дополнительной информации.
Шаги
Чтобы подключиться к Decodable с помощью dbt, вам нужно добавить профиль Decodable в ваш файл profiles.yml. Профиль Decodable имеет следующие поля.
dbt-decodable:
target: dev
outputs:
dev:
type: decodable
database: None
schema: None
account_name: [your account]
profile_name: [name of the profile]
materialize_tests: [true | false]
timeout: [ms]
preview_start: [earliest | latest]
local_namespace: [namespace prefix]
Описание полей профиля
| Опция | Описание | Обязательно? | Пример |
|---|---|---|---|
| type | Конкретный адаптер для использования | Обязательно | decodable |
| database | Обязательно, но не используется этим адаптером. | Обязательно | |
| schema | Обязательно, но не используется этим адаптером. | Обязательно | |
| account_name | Имя вашего аккаунта Decodable. | Обязательно | my_awesome_decodable_account |
| profile_name | Имя вашего профиля Decodable. | Обязательно | my_awesome_decodable_profile |
| materialize_tests | Укажите, нужно ли материализовать тесты как пару pipeline/stream. По умолчанию false. | Необязательно | false |
| timeout | Время в миллисекундах, в течение которого выполняется запрос предварительного просмотра. По умолчанию 60000. | Необязательно | 60000 |
| preview_start | Укажите, откуда должен начинаться предварительный просмотр данных. Если установлено значение earliest, предварительный просмотр начнется с самой ранней возможной записи. Если установлено значение latest, предварительный просмотр начнется с последней записи. По умолчанию earliest. | Необязательно | latest |
| local_namespace | Укажите префикс, который будет добавлен ко всем создаваемым на Decodable сущностям. По умолчанию none, что означает, что префикс не добавляется. | Необязательно | none |
Поддерживаемые функции
| Название | Поддерживается | Примечания |
|---|---|---|
| Материализация таблиц | Да | Поддерживается только материализация таблиц. Модель dbt таблицы преобразуется в пару pipeline/stream в Decodable, обе части имеют одно и то же имя. Пайплайны для моделей автоматически активируются при материализации. Чтобы материализовать ваши модели, выполните команду dbt run, которая выполняет следующие действия:
--full-refresh или установка этой опции конфигурации для конкретной модели приводит к уничтожению и созданию соответствующих ресурсов на Decodable с нуля. |
| Материализация представлений | Нет | |
| Инкрементальная материализация | Нет | |
| Эфемерная материализация | Нет | |
| Seeds | Да | Выполнение команды dbt seed выполняет следующие шаги для каждого указанного seed:
dbt seed вы можете получить доступ к данным seed в только что созданном потоке. |
| Тесты | Да | Команда dbt test ведет себя по-разному в зависимости от опции materialize_tests, установленной для указанной цели. Если materialize_tests = false, то тесты выполняются только после завершения задания предварительного просмотра и возврата результатов. Время выполнения задания предварительного просмотра, а также какие записи возвращаются, определяются конфигурациями timeout и preview_start соответственно. Если materialize_tests = true, то dbt сохраняет указанные тесты как пары pipeline/stream в Decodable. Используйте эту конфигурацию для непрерывного тестирования ваших моделей. Вы можете запустить предварительный просмотр на созданном потоке с помощью Decodable CLI или веб-интерфейса для мониторинга результатов. |
| Источники | Нет | Источники в dbt соответствуют соединениям источников Decodable. Однако команда dbt source не поддерживается. |
| Генерация документации | Нет | Для получения информации о ваших моделях проверьте ваш аккаунт Decodable. |
| Снимки | Нет | Снимки и команда dbt snapshot не поддерживаются. |
Дополнительные операции
dbt-decodable предоставляет набор команд для управления ресурсами проекта на Decodable. Эти команды можно выполнить с помощью dbt run-operation {name} --args {args}.
Например, следующая команда выполняет операцию delete_streams
dbt run-operation delete_streams --args '{streams: [stream1, stream2], skip_errors: True}'
- pipelines: Необязательный список имен пайплайнов для деактивации. По умолчанию none.
Деактивировать все пайплайны для ресурсов, определенных в проекте. Если аргумент pipelines предоставлен, то деактивируются только указанные пайплайны.
delete_pipelines(pipelines)
- pipelines: Необязательный список имен пайплайнов для удаления. По умолчанию none.
Удалить все пайплайны для ресурсов, определенных в проекте. Если аргумент pipelines предоставлен, то удаляются только указанные пайплайны.
delete_streams(streams, skip_errors)
- streams: Необязательный список имен потоков для удаления. По умолчанию none.
- skip_errors: Укажите, следует ли рассматривать ошибки как предупреждения. Если установлено значение true, любые ошибки удаления потока сообщаются как предупреждения. Если установлено значение false, операция останавливается, когда поток не может быть удален. По умолчанию true.
Удалить все потоки для ресурсов, определенных в проекте. Если поток связан с пайплайном, то ни пайплайн, ни поток не удаляются. См. операцию очистки для полного удаления пар поток/пайплайн.
- list: Необязательный список имен сущностей ресурсов для удаления. По умолчанию none.
- models: Укажите, следует ли включать модели при очистке. По умолчанию true.
- seeds: Укажите, следует ли включать seeds при очистке. По умолчанию true.
- tests: Укажите, следует ли включать тесты при очистке. По умолчанию true.
Удаляет все сущности Decodable, созданные в результате материализации ресурсов проекта, то есть подключения, потоки и конвейеры.
Если указан аргумент list, удаляются только сущности указанных ресурсов.
Если указаны аргументы models, seeds или test, ресурсы соответствующих типов также включаются в очистку. Тесты, которые не были материализованы, не включаются в очистку.