2022-07-25 11:00:01
ТОП-4 совета по dbt для дата-аналитика и инженера данных
dbt (data build tool) — это фреймворк с открытым исходным кодом для выполнения, тестирования и документирования SQL-запросов, который позволяет автоматизировать процесс анализа данных, включая структурирование и написание запросов, их поиск, вложенные вызовы, запуск по расписание, документирование и тестирование. Например, можно использовать dbt CLI или dbt Cloud для работы с конвейером данных, чтобы извлекать, преобразовывать и загружать данные в хранилище, создавая БД с динамической архитектурой по расписанию. Повысить эффективность применения dbt для тестирования динамически создаваемых схем, источников и моделей данных помогут следующие советы:
•
файл Schema.yml может находиться только в папке моделей dbt. Инструмент позволяет создать модульный тест, который за считанные секунды проверяет столбцы на наличие нулевых значений.
•
В тестах данных dbt есть строгое правило, согласно которому они должны возвращать нулевые строки, чтобы пройти тест. Вместо поиска значения, такого как сумма определенного набора строк, тест данных должен быть написан так, чтобы он ожидал найти нулевые строки, если результаты не равны правильному значению суммы. Поэтому при разработке теста данных надо сразу думать, как вернуть 0 строк в рассматриваемом кейсе, но при этом проверить нужное число. Можно использовать операторы != или <= для проверки данных.
•
Повысить скорость тестирования можно, увеличив количество потоков в профиле проекта, в файле profiles.yml. Например, если есть 30 тестов, понадобится 40 потоков, определенных в файле profiles.yml. Это позволит запустить 30 тестов данных и схемы за 4 секунды.
•
Каждому тесту нужно осмысленное имя. Хотя dbt автоматически присваивает имена тестам схемы, рекомендуется пометить их самостоятельно. Поскольку dbt не дает большого контроля над запуском небольших наборов тестов, нужно иметь возможность видеть все имена запущенных тестов. Аналогично тому, как разработчикам рекомендуют называть функции и переменные семантически понятными именами, так и в тестировании нужно давать тестам осмысленные имена. Иначе во время выполнения тестов будет трудно определить, какой из них прошел или не прошел проверку. При запуске команды тестирования в dbt, все тесты схемы и данных будут выполняться вместе. Нельзя просто запустить один каталог в папке тестов данных, но можно именовать их «тест dbt — схема» или «тест dbt — данные», чтобы быстро определять, какие тесты надо запустить.
https://corissa-haury.medium.com/4-quick-facts-about-dbt-testing-5c32b487b8cd
900 views08:00