{
    "version": "https:\/\/jsonfeed.org\/version\/1",
    "title": "Блог об аналитике, визуализации данных, data science и BI, заметки с тегом: dbt",
    "home_page_url": "http:\/\/test.leftjoin.ru\/tags\/dbt\/",
    "feed_url": "http:\/\/test.leftjoin.ru\/tags\/dbt\/json\/",
    "icon": "http:\/\/test.leftjoin.ru\/user\/userpic@2x.jpg",
    "author": {
        "name": "Николай Валиотти",
        "url": "http:\/\/test.leftjoin.ru\/",
        "avatar": "http:\/\/test.leftjoin.ru\/user\/userpic@2x.jpg"
    },
    "items": [
        {
            "id": "83",
            "url": "http:\/\/test.leftjoin.ru\/all\/coalesce2020-dbt\/",
            "title": "Конференция Coalesce от dbt: что посмотреть?",
            "content_html": "<div class=\"e2-text-picture\">\n<img src=\"http:\/\/test.leftjoin.ru\/pictures\/Eg2IiVMX0AI1eLj.jpg-large.jpeg\" width=\"1516\" height=\"760\" alt=\"\" \/>\n<\/div>\n<p>С 7 по 11 декабря проходила <a href=\"https:\/\/www.getdbt.com\/coalesce\">конференция Coalesce<\/a>, о которой я рассказывал ранее. В этом году все организаторы решили проводить конференции по 5 дней с кучей докладов.<\/p>\n<p>С одной стороны это плюс — ощущение, что информации много и можно выбрать, что интересно. С другой стороны такое количество информации несколько изматывает, потому что часто по названию доклада не очень понятно насколько он окажется полезным и интересным. Мне все же кажется, что более трех дней для конференции это много, т. к. интерес аудитории теряется, да и необходимость заниматься своими личными и профессиональными делами не может испариться из-за события, которое хоть и в онлайне, но занимает твое внимание.<\/p>\n<p>Однако мне удалось посмотреть большую часть докладов, кое-что пролистывая. Для начала коротко в целом о впечатлениях: очень круто изучать доклады с подобной конференции как Coalesce, потому что речь идет в основном о современных инструментах и облачных решениях. Почти в каждом докладе можно услышать про Redshift \/ BigQuery \/ Snowflake, а с точки зрения BI: Mode \/ Tableau \/ Looker \/ Metabase. В центре всего, разумеется, dbt.<\/p>\n<p>Мой шорт-лист докладов, которые рекомендую изучить:<\/p>\n<ol start=\"1\">\n<li><a href=\"https:\/\/www.getdbt.com\/coalesce\/agenda\/dbt-101-eu-and-us-friendly\">dbt 101<\/a> — вводный доклад и интро в то, что такое dbt и как его используют<\/li>\n<li><a href=\"https:\/\/www.getdbt.com\/coalesce\/agenda\/kimball-in-the-context-of-the-modern-data-warehouse-whats-worth-keeping-and-whats-not\">Kimball in the context of the modern data warehouse: what’s worth keeping, and what’s not<\/a> — интересный и очень-очень спорный доклад, который вызвал массу вопросов в slack dbt. Вкратце, автор предлагает перейти на «широкие» аналитические таблицы и отказаться от нормальных форм всюду.<\/li>\n<li><a href=\"https:\/\/www.getdbt.com\/coalesce\/agenda\/building-a-robust-data-pipeline-with-dbt-airflow-and-great-expectations\">Building a robust data pipeline with dbt, Airflow, and Great Expectations<\/a> — в докладе про небезынтересный инструмент <a href=\"https:\/\/greatexpectations.io\">greatexpectations<\/a>, суть которого в валидации данных<\/li>\n<li><a href=\"https:\/\/www.getdbt.com\/coalesce\/agenda\/orchestrating-dbt-with-dagster\">Orchestrating dbt with Dagster<\/a> — мне было несколько скучновато слушать, но если хочется познакомиться с Dagster — самое то<\/li>\n<li><a href=\"https:\/\/www.getdbt.com\/coalesce\/agenda\/supercharging-your-data-team\">Supercharging your data team<\/a> — ребята сделали обертку к dbt, назвали dbt executor 9000 и рассказывают о нем<\/li>\n<li><a href=\"https:\/\/www.getdbt.com\/coalesce\/agenda\/presenting-sqlfluff\">Presenting: SQLFluff<\/a> — про очень классную штуку <a href=\"https:\/\/www.sqlfluff.com\">SQLFluff<\/a>, которая автоматически редактирует SQL-код согласно канонам<\/li>\n<li><a href=\"https:\/\/www.getdbt.com\/coalesce\/agenda\/quickstart-your-analytics-with-fivetran-dbt-packages\">Quickstart your analytics with Fivetran dbt packages<\/a> — из доклада можно узнать, что такое Fivetran и как его используют совместно с dbt<\/li>\n<li><a href=\"https:\/\/www.getdbt.com\/coalesce\/agenda\/perfect-complements-using-dbt-with-looker-for-effective-data-governance\">Perfect complements: Using dbt with Looker for effective data governance<\/a> — про взаимодействие dbt и looker, про различия и схожие части инструментов<\/li>\n<\/ol>\n",
            "date_published": "2020-12-11T13:27:14+03:00",
            "date_modified": "2020-12-11T13:27:05+03:00",
            "image": "http:\/\/test.leftjoin.ru\/pictures\/poster.png",
            "_date_published_rfc2822": "Fri, 11 Dec 2020 13:27:14 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "83",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "http:\/\/test.leftjoin.ru\/pictures\/poster.png",
                    "http:\/\/test.leftjoin.ru\/pictures\/Eg2IiVMX0AI1eLj.jpg-large.jpeg"
                ]
            }
        },
        {
            "id": "78",
            "url": "http:\/\/test.leftjoin.ru\/all\/dbt-course\/",
            "title": "Итоги прохождения курса по dbt",
            "content_html": "<div class=\"e2-text-picture\">\n<img src=\"http:\/\/test.leftjoin.ru\/pictures\/2161605756689.large.jpg\" width=\"760\" height=\"505\" alt=\"\" \/>\n<\/div>\n<p>Недавно прошёл <a href=\"https:\/\/courses.getdbt.com\/courses\/fundamentals\">курс по dbt<\/a> от команды dbt. Курс классный, в нем много практики. Я использовал Google BigQuery и публичные датасеты от dbt для решения описанных примеров, а в обучающих материалах все построено на Snowflake.<\/p>\n<p>В целом, узнал много нового и полезного о dbt, кратко summary:<\/p>\n<ol start=\"1\">\n<li>Во введении ребята объясняют роль Analytics Engineer, о котором так много разговоров и ссылаются на их <a href=\"https:\/\/blog.getdbt.com\/what-is-an-analytics-engineer\/\">пост блога<\/a><\/li>\n<li>Дается исчерпывающая информация о том, как подключить dbt к хранилищу и .git<\/li>\n<li>В dbt довольно тривиальными запросами реализовано тестирование данных на предмет уникальности и соответствия значениям. Это реально базовые SQL-запросы, которые проверяют наличие или отсутствие поля или значений. И тут интересно следующее: когда пишешь самостоятельно похожие запросы иногда думаешь, что во всем остальном мире так никто не делает, ну, к примеру, как в запросе ниже. А оказывается еще как делают, вот даже публично внутри dbt все эти тесты так и реализованы. И, кстати, крайне удобно, что SQL-код каждого теста можно изучить и скомпилировать.<\/li>\n<\/ol>\n<pre class=\"e2-text-code\"><code>SELECT sum(amount) FROM ... HAVING sum(amount) &gt; 0<\/code><\/pre><ol start=\"4\">\n<li>Круто и удобно формируется документация и DAG (Directed Acyclic Graph), который показывает все шаги преобразований модели<\/li>\n<li>Поскольку dbt построен на Liquid и использовании Jinja (движок шаблонов в Python), то можно делать всякие невероятные вещи вроде написания внутреннего макроса (читай, условный операторы, циклы или создание функций) и применять этот макрос для автоматизации однотипных частей запроса. Это прям вау 🙂<\/li>\n<li>Многие вещи уже придуманы и разработаны коммьюнити, поэтому существует <a href=\"https:\/\/hub.getdbt.com\">dbt hub<\/a>, через который можно подключить интересующие пакеты и не изобретать велосипед.<\/li>\n<li>Отдельного упоминания достойны алгоритмы формирования инкрементального наполнения таблиц и создания снэпшотов. Для одного из проектов абсолютно такой же алгоритм по созданию снэпшотов с date_form \/ date_to мне доводилось проектировать самостоятельно.<br \/>\nБыло приятно увидеть, что у ребят из dbt это работает абсолютно аналогичным образом.<\/li>\n<\/ol>\n<ol start=\"8\">\n<li>Разумеется, используя Jinja и dbt, можно автоматизировать построение аналитических запросов, это так и называется Analyses. Скомпилированный код запроса, можно имплементировать в любимую BI-систему и наслаждаться результатами.<\/li>\n<\/ol>\n<p>Общие впечатления очень положительные: dbt ждет большое будущее и развитие, ведь коммьюнити растет вместе с возможностями и ресурсами компании. Ждем коннекторов к другим СУБД помимо PostgreSQL, BigQuery, Snowflake, Redshift.<\/p>\n",
            "date_published": "2020-12-01T10:42:16+03:00",
            "date_modified": "2020-11-30T20:18:57+03:00",
            "image": "http:\/\/test.leftjoin.ru\/pictures\/2161605756689.large.jpg",
            "_date_published_rfc2822": "Tue, 01 Dec 2020 10:42:16 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "78",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "system\/library\/highlight\/highlight.js",
                    "system\/library\/highlight\/highlight.css"
                ],
                "og_images": [
                    "http:\/\/test.leftjoin.ru\/pictures\/2161605756689.large.jpg"
                ]
            }
        }
    ],
    "_e2_version": 3365,
    "_e2_ua_string": "E2 (v3365; Aegea)"
}