dbt README

The project's README from github.com/dbt-labs/dbt. As one markdown file: README.md.

dbt logo

CI Badge

[!WARNING] dbt v1 development has moved to the 1.latest branch. The main branch now contains all the Apache 2.0 source code of dbt v2.0 — a ground-up rewrite of dbt in Rust. If you're looking for the v1 Python implementation of the dbt framework, switch to 1.latest.

dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications.

architecture

About dbt v2.0

🚧 dbt v2.0 is in beta. Behavior, APIs, and on-disk formats may change before the stable release.

dbt v2.0 is engineered for performance at scale. It parses, compiles, and runs projects in a fraction of the time compared to v1. The source code in this repository is available to everyone under the standard Apache 2.0 license. dbt is a distribution of the dbt repository with dbt-specific customizations released under a dbt product license.

The big shifts from v1:

Supported operating systems and architectures

dbt v2.0 and its drivers are compiled per operating system and architecture.

Legend:

Operating system x86-64 ARM
macOS 🟢 🟢
Linux 🟢 🟢
Windows 🟢 🟡

Understanding dbt

Analysts using dbt can transform their data by simply writing select statements, while dbt handles turning these statements into tables and views in a data warehouse.

These select statements, or "models", form a dbt project. Models frequently build on top of one another – dbt makes it easy to manage relationships between models, and visualize these relationships, as well as assure the quality of your transformations through testing.

dbt dag

Getting started

Join the dbt Community

Reporting bugs and contributing code

Code of Conduct

Everyone interacting in the dbt project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the dbt Code of Conduct.

License

The source code in this repository is licensed under the Apache License 2.0.

dbt (dbt-labs/dbt)

Searching Database…

14K ·GitHub
Что это такое?dbt позволяет аналитикам данных и инженерам преобразовывать данные в хранилище, написав SQL-запросы SELECT («модели»). При этом используются те же практики, что и у разработчиков программ: контроль версий, тестирование, модульность.
Это инструмент на Python или что-то другое теперь?dbt v2.0 — это полностью переписанная на Rust версия dbt, которая распространяется как один самодостаточный исполняемый файл командной строки, а не как пакет Python. Старая реализация v1 на Python по-прежнему существует в отдельной ветке.
Как начать работу с dbt?Установите исполняемый файл dbt v2.0 для вашей ОС и архитектуры, затем напишите SQL-запросы SELECT в виде «моделей» внутри проекта dbt. dbt превращает их в таблицы и представления в вашем хранилище.
Нужен ли Python для запуска dbt v2.0?Нет. В отличие от v1, v2.0 поставляется как один самодостаточный исполняемый файл и не требует ни среды выполнения Python, ни управления зависимостями.
Готов ли dbt v2.0 к использованию в продакшене?Пока нет: версия находится в бета-тестировании, поэтому поведение, API и форматы файлов на диске могут измениться до стабильного релиза. Поддержка Windows также ограничена архитектурой x86-64 (ARM пока не поддерживается).
Какие операционные системы и процессоры поддерживаются?macOS и Linux поддерживаются на архитектурах x86-64 и ARM. Windows поддерживается только на x86-64, поддержка ARM пока недоступна.
Что случилось со старой версией dbt на Python?Разработка dbt v1 перенесена в ветку 1.latest, а в основной ветке теперь находится новая версия v2.0 на Rust.
Что именно такое «модель» в dbt?Модель — это просто SQL-запрос SELECT, который dbt компилирует и сохраняет как таблицу или представление в вашем хранилище данных. dbt сам управляет зависимостями между моделями.
Зачем команда dbt переписала его на Rust?Ради производительности при больших объемах данных: v2.0 разбирает, компилирует и запускает проекты за долю времени по сравнению с реализацией v1 на Python, особенно на больших проектах.
Что нового в артефактах, которые создает dbt?v2.0 формирует артефакты в формате Parquet, которые легко запрашивать и объединять для анализа проекта, при этом по-прежнему создает исходные артефакты в формате JSON, например manifest.json, для обратной совместимости.
What are similar projects?walshadow, airbyte, hotdata-cli, cube, ClickHouse, pgterm, superset, trino
Creator
dbt-labs
Size
126.4 MB
Stars
14K
Age
10y
Commits · 90 Days