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

Блоги разработчиков | dbt

Учебные материалы, обновления продукта и инсайты для разработчиков в блоге dbt Developer.

Start here

Как обновить версии dbt (почти) без страха

· 8 мин. чтения
Joel Labes
Обновление на февраль 2024 года

Прошло несколько лет с тех пор, как dbt-core достиг версии 1.0! С тех пор мы обязались выпускать нулевые изменения, нарушающие совместимость, когда это возможно, и обновление версий dbt Core стало намного проще.

В 2024 году мы идем дальше, обещая:

  • Стабилизировать интерфейсы для всех — поддерживающих адаптеры, потребителей метаданных и (конечно) людей, пишущих код dbt повсюду — как обсуждалось в нашем обновлении дорожной карты за ноябрь 2023 года.
  • Внедрить Треки выпусков (ранее известные как Versionless) в dbt Cloud. Больше никаких ручных обновлений и необходимости в втором песочном проекте только для того, чтобы попробовать новые функции в разработке. Для получения более подробной информации обратитесь к Обновление версии Core в Cloud.

Мы оставляем остальную часть этого поста как есть, чтобы мы все могли вспомнить, как это было раньше. Наслаждайтесь прогулкой по переулку памяти.

По мере приближения к выпуску dbt v1.0 в декабре, это идеальное время, чтобы привести вашу установку в порядок. dbt 1.0 представляет собой кульминацию более чем пяти лет разработки и совершенствования опыта аналитической инженерии — сглаживание острых углов, ускорение рабочих процессов и создание совершенно новых классов работы.

Даже с учетом всех новых возможностей, обновление может быть пугающим — вы полагаетесь на dbt для обеспечения вашего аналитического рабочего процесса и не можете позволить себе изменения, которые могут привести к тому, что ваш ежедневный запуск перестанет работать. Я был в такой ситуации. Это список, который я хотел бы иметь, когда владел проектом dbt в своей последней компании.

Итак, вы хотите создать пакет dbt

· 10 мин. чтения
Amy Chen

Пакеты — это самый простой способ для пользователя dbt внести код в сообщество dbt. Это убеждение, которое я поддерживаю как человек, который вносит вклад в пакеты и помог многим партнерам создать свои собственные во время моей работы в dbt Labs.

Причина проста: пакеты, как неотъемлемая часть dbt, следуют нашему принципу создания аналитическими инженерами и для них. Их легко установить, они доступны, и в конце концов, это просто SQL (с добавлением git и jinja). Вы можете либо поделиться своим пакетом с сообществом, либо использовать его среди своих команд в вашей организации.

Поэтому я бросаю вам вызов: после прочтения этой статьи проверьте свои навыки, подумайте о коде, который вы снова и снова используете, и создайте пакет. Пакеты могут быть настолько сложными, насколько вы хотите; это просто SQL, скрытый в смеси переиспользуемых макросов и обширных тестовых фреймворков. Давайте начнем ваше путешествие.

Добро пожаловать в блог разработчиков dbt

· 3 мин. чтения
Jason Ganz
David Krevitt

Аналитика — это сложно. Делать аналитику правильно — еще сложнее.

Существует огромное количество факторов, которые нужно учитывать: отсутствуют ли данные? Как сделать это инсайт доступным? Почему моя база данных заблокирована? Мы вообще задаем правильные вопросы?

Усугубляет ситуацию то, что аналитика иногда может казаться одиноким занятием.

Конечно, наши данные обычно являются собственностью компании, и поэтому мы не можем много о них говорить. Но мы, безусловно, можем поделиться тем, что мы узнали о работе с этими данными.

Так давайте все вместе возьмем на себя обязательство делиться нашими труднодобытыми знаниями друг с другом — и тем самым проложим путь для будущих поколений аналитиков.

Духовное согласование dbt + Airflow

· 12 мин. чтения
Sung Won Chung

Airflow и dbt часто рассматриваются как взаимоисключающие:

Вы либо строите SQL-трансформации, используя SQL-операторы базы данных Airflow (например, SnowflakeOperator), либо разрабатываете их в проекте dbt.

Вы либо оркестрируете модели dbt в Airflow, либо развертываете их, используя dbt Cloud.

На мой взгляд, это ложные дихотомии, которые звучат эффектно, но на самом деле не помогают нам выполнять нашу работу как специалистам по данным.

Как я изучаю рост сообщества с открытым исходным кодом с помощью dbt

· 18 мин. чтения
Ross Turk

Большинство организаций тратят хотя бы часть своего времени на вклад в проект с открытым исходным кодом. Однако 100% из них в той или иной степени зависят от результатов работы сообществ с открытым исходным кодом.

Роль (или её отсутствие) дизайна в аналитике

· 6 мин. чтения
Seth Rosen

Если вы недавно общались со мной, следите за мной в Twitter или принимали мой заказ в Wendy’s, вы, вероятно, знаете, как сильно я ненавижу традиционные дашборды. Мой отец, психотерапевт, работает со мной, чтобы добраться до корней моего воспитания, которые привели к этому глубоко укоренившемуся чувству.

О важности именования: Конвенции именования моделей (Часть 1)

· 7 мин. чтения
Pat Kearns

💾 Эта статья для всех, кто когда-либо сомневался в здравомыслии даты, не представленной в формате ISO 8601

Вам когда-нибудь поручали добавить новые поля или концепции в существующий набор моделей, и вы задавались вопросом:

  • Почему существует несколько моделей с почти одинаковыми, но слегка различающимися именами?

  • В какой модели находятся нужные мне поля?

  • Какая модель является предшественником или последователем какой?

Функция DATEADD в SQL для различных хранилищ данных

· 4 мин. чтения
David Krevitt

Я использовал функцию dateadd в SQL тысячи раз.

Я гуглил синтаксис функции dateadd в SQL все эти разы, кроме одного, когда решил нажать кнопку "Мне повезет" и попробовать.

При переключении между диалектами SQL (BigQuery, Postgres и Snowflake — мои основные), я буквально никогда не могу запомнить порядок аргументов (или точное название функции) dateadd.

Эта статья расскажет, как работает функция DATEADD, о нюансах ее использования в основных облачных хранилищах и о том, как стандартизировать различия в синтаксисе с помощью макроса dbt.

Обновление dbt за ноябрь 2021: v1.0, переменные окружения и вопрос о размере волн 🌊

· 3 мин. чтения
Lauren Craigie

Привет,

Прежде чем перейти к делу, хочу быстро напомнить, что до Coalesce осталось меньше 3 недель! 😱 Если бы вам нужно было выбрать только ОДНУ из более чем 60 сессий, обратите внимание на ключевую речь Тристана с Мартином Касадо из A16z.

Она включает два моих любимых элемента:

  1. Острота 🌶️

  2. На самом деле не о нас 😅

Мартин и Тристан обсудят то, о чем мы все, вероятно, задумывались с последней волной инноваций (и финансирования) в нашей области:

Является ли современный стек данных просто очередной волной в длинной череде модных технологий или он как-то более постоянен?

Узнайте их мнение и поделитесь своим, зарегистрировавшись здесь.

Обновление dbt за октябрь 2021: Метрики и фокусы 🎩

· 4 мин. чтения
Lauren Craigie

Привет,

Хотя у меня есть много интересного, чем можно поделиться в этом месяце, я не могу начать с чего-то другого, кроме этого:

Скриншот 2021-10-20 в 6.12.16 PM

Да, это официально:

💥dbt будет поддерживать определение метрик💥

С этой функцией вы сможете централизованно определять правила для агрегации метрик (например, "активные пользователи" или "MRR") в коде проекта dbt, который находится под версионным контролем, протестирован и документирован.

Обновление dbt за сентябрь 2021: DAG в IDE + API метаданных в GA

· 4 мин. чтения
Lauren Craigie

Привет,

Помните? 21-й день сентября? 🎶 Конечно, помните, это было два дня назад. Ну, это уже победа в вашем активе, а день только начался! Так давайте добьемся победы для кого-то еще — например, для Джереми Коэна, менеджера по продукту dbt Core.

Я уверен, вы знаете, что половина обновлений в этом письме автоматически внедряется, когда мы обновляем всех до последней версии dbt Cloud 🚀

Но знали ли вы, что другая половина требует, чтобы вы (или ваш администратор аккаунта) активно переключались на последнюю версию dbt Core? 😱 Если это не происходит регулярно (видео-инструкция здесь), вы можете упустить важные улучшения производительности, стабильности и скорости.

Сделайте Джереми приятное и загляните в блог, который он только что опубликовал, о том, почему это имеет еще большее значение в преддверии 💥dbt v1.0💥. Пока мы раздаем победы, не забудьте также зарегистрироваться на его выступление на Coalesce!

Как настроить ваш dbt репозиторий (один или несколько)?

· 7 мин. чтения
Amy Chen

В dbt Labs, по мере того как все больше людей начинают использовать dbt, мы начали замечать все больше и больше случаев использования, которые расширяют границы наших установленных лучших практик. Это особенно актуально для тех, кто внедряет dbt в корпоративной среде.

После двух лет помощи компаниям с численностью сотрудников от 20 до 10 000+ в реализации dbt и dbt Cloud, ниже я постараюсь ответить на вопрос: "Должен ли у меня быть один репозиторий для моего dbt проекта или несколько?" Альтернативное название: "Быть или не быть монорепозиторию, вот в чем вопрос!"

Как создать модели почти в реальном времени, используя только dbt + SQL

· 8 мин. чтения
Amy Chen
Более актуальная информация доступна

С момента первой публикации этого поста многие платформы данных добавили поддержку материализованных представлений, которые являются более совершенным способом достижения целей, изложенных здесь. Мы рекомендуем их вместо подхода, описанного ниже.

Прежде чем я углублюсь в то, как это создать, я должен сказать следующее. Вам, вероятно, это не нужно. Я, вместе с моими коллегами из Fishtown, провел бесчисленные часы, работая с клиентами, которые запрашивают потоковые данные почти в реальном времени. Однако, когда мы начинаем углубляться в проект, часто оказывается, что такой случай использования отсутствует. Существует множество причин, по которым потоковая передача данных почти в реальном времени не подходит. Две ключевые из них:

  1. Исходные данные не обновляются достаточно часто.
  2. Конечные пользователи не смотрят на данные достаточно часто.

Поэтому, когда поступает запрос на моделирование почти в реальном времени, я (и вы тоже!) должен быть скептичен.

Ваш контрольный список для проекта dbt

· 9 мин. чтения
Amy Chen
Dave Connors

Если вы используете dbt более года, ваш проект устарел. Это естественно.

Появились новые функции. Изменяются хранилища данных. Обновляются лучшие практики. За последний год я и другие члены команды Fishtown Analytics (теперь dbt Labs!) провели семь аудитов для клиентов, которые использовали dbt минимум 2 месяца.