Выступали крупняки big tech-а: сам X5, Сбер и Битрикс24
А именно:
- s3 для холодных данных
- GreenPlum или Clickhouse (а иногда и сразу вместе) для горячих витрин
- dbt для преобразований
- Airflow для оркестрации
- Kafka для интеграции
- Data mesh для организации работы
Иногда еще вплетены Spark или Trino.
И все то же самое я слышал и от других компаний на других конференциях. Складывается впечатление, что вот он modern data stack в российских реалиях.
Отмечу, что выступавшие компании крутят-вертят сотни терабайт данных и им приведенного списка вполне достаточно. В том числе и для real-time аналитики.
А у вас какие используются технологии?
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥5⚡3❤1
Media is too big
VIEW IN TELEGRAM
Сколько инструментов ни добавляй, централизованная data-команда всё равно останется узким местом ⚡️
Вопрос: как реально сократить TTM — технологиями или перестройкой процессов?
▶️ Разбираемся в видео
Вопрос: как реально сократить TTM — технологиями или перестройкой процессов?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤3🔥1
Когда интегрируешь данные из разных источников, одна из важнейших и совсем не тривиальных задач: какой ключ использовать для идентификации записей?
Часто выбор сводится к двум вариантам – использовать только натуральный ключ или комбинировать его с кодом системы источника.
Давайте разберём плюсы и минусы каждого подхода.
1️⃣ Только натуральный ключ
Натуральный ключ – это уникальное поле или набор полей в таблице, которое естественным образом идентифицирует объект (номер паспорта, код продукта и т.д.).
На самом деле, самый правильный подход, ведь в таком случае значительно упрощается интеграция различных источников. Основные данные по клиенту хранятся в CRM, а его заказы в OMS. С одним натуральным ключом их легко соединить в DWH.
Есть только один момент – практически никогда вы не сможете определить такой натуральный ключ у объекта.
Что для клиента натуральный ключ? Номер паспорта? Он может меняться со временем и далеко не всегда вы такую информацию имеете. ФИО + дата рождения? Все равно остается риск коллизии, не учитывая что данные атрибуты могут (и будут) криво заполнены у некоторых клиентов.
ID клиента в CRM? Если у вас несколько Систем, в которых лежат клиенты, один ID может быть у нескольких клиентов. Получите дубли.
2️⃣ Натуральный ключ + Код системы источника
Код системы источника — это уникальный идентификатор, который обозначает конкретную систему или источник данных в DWH.
Здесь все просто. Берем ID из Системы и добавляем код системы конкатенацией.
В таком случае не будет дублей, и определить натуральный ключ у объекта весьма просто (в Системах практически всегда у каждого объекта есть ID).
Но в таком случае придется дополнительно маппить объекты, создавая золотую запись. Что на мой взгляд правильнее.
💡 Итог:
Если ваш DWH строится на данных из нескольких систем – комбинированный ключ почти всегда выигрывает. Но можно у разных объектов использовать разные подходы.
Please open Telegram to view this post
VIEW IN TELEGRAM
👀4👍3🔥2
dbt отлично подходит для трансформации данных, но помимо стандартных моделей и тестов есть менее очевидные, но очень полезные возможности. Вот три из них:
1️⃣ Exposures
Exposures позволяют документировать, как ваши модели используются внешними системами: дашбордами, ML-моделями или отчетами. Это помогает отслеживать влияние изменений в моделях и строить понятную data lineage.
exposures:
- name: monthly_sales_dashboard
type: dashboard
url: https://looker.company.com/dashboards/123
depends_on:
- ref('monthly_sales')Явно указываем, что дашборд с помесячными продажами зависит от dbt модели monthly_sales
2️⃣ Hooks (pre-hook и post-hook)
Hooks в dbt позволяют запускать SQL или скрипты до или после выполнения модели. Это мощный инструмент автоматизации, который мало кто использует, но он очень полезен для:
- автоматической записи логов о выполнении модели
- обновления статистики
- очистки staging-таблиц или временных ресурсов
- выполнения любых операций, которые должны сопровождать модель, но не входят в её основной SQL-код.
Hooks задаются в
dbt_project.yml или внутри отдельной модели через config.{{ config(
post_hook="ANALYZE {{ this }}"
) }}3️⃣ Тип модели: private, protected, public
В dbt можно помечать модели как private, protected или public.
-
private — для внутренних промежуточных расчетов, которые никто напрямую не использует.-
protected — модели, которые можно использовать ограниченно, например внутри проекта.-
public — доступные для всех потребителей.Это помогает грамотно управлять видимостью моделей, защищать критические промежуточные данные и упрощает работу команд
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍5🔥3
Хранилище данных можно представить как слоенный пирог – каждый слой содержит определенные данные.
Вот самый распространенный вариант распределения данных:
Параллельно часто используют метафору bronze / silver / golden слоёв:
🥉 Bronze ≈ RAW – сырые данные
🥈 Silver ≈ ODS/DDS – очищенные, обогащённые, готовые к использованию
🥇 Golden ≈ CDM/DM – финальные бизнес-витрины, где данные максимально близки к бизнес-логике
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥2
Media is too big
VIEW IN TELEGRAM
От фабрики булавок к фабрике данных 📊
Адам Смит 250 лет назад доказал: разделение труда увеличивает производительность в сотни раз. Но в мире данных всё пошло иначе: разделение на производителей, инженеров и потребителей часто делает процесс медленнее и болезненнее.
Почему так происходит и как DataMesh меняет правила игры?Рассказываем в видео 🎥
Адам Смит 250 лет назад доказал: разделение труда увеличивает производительность в сотни раз. Но в мире данных всё пошло иначе: разделение на производителей, инженеров и потребителей часто делает процесс медленнее и болезненнее.
Почему так происходит и как DataMesh меняет правила игры?Рассказываем в видео 🎥
❤5👍3🔥2
И нет, это не просто минорное обновление, а настоящий прорыв! Рассмотрим основные функции.
Чтение данных в PostgreSQL стал значительно быстрее за счет этого нововведения! Если не сильно вдаваться в технические подробности, при синхронном I/O операции чтения с диска являются блокирующими, что часто становится узким местом. Теперь в PostgreSQL операции ввода-вывода могут работать параллельно.
Заявлен прирост производительности в 2-3 раза!
Мы считаем, что это одно из важнейших обновлений за последнее время. Возможно, PostgreSQL сможет лучше справляться с аналитической нагрузкой (до определенных объемов конечно же).
Остальные фичи не так сенсационны, но тоже весьма интересны.
UUID – уникально сгенерированная строка вида 550e8400-e29b-41d4-a716-446655440000. Часто используются как уникальные ключи для таблиц.
В 7 версии были исправлены моменты с низкой эффективностью сортировки таких ключей и индексированием.
Заявлен серьезный прирост производительности при использовании многоколоночных B-tree индексов.
Теперь Postgres совместим с OAUTH 2.0
В общем, на нашей улице праздник. Любимый PostgreSQL стал еще эффективнее в части OLAP и, вероятно, сможет покрыть больше сценариев, связанных с аналитическими решениями.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤2👍2
DataPulse на РУBIКОНФ 2025 🔥
Мы уже на месте — в самом центре российской BI-индустрии!
Рассказываем, показываем и делимся тем, как сделать аналитику доступнее без сложных инструментов и лишней боли.
Сегодня от нашей команды выступает Павел Хамрин с темой:
🎤 «Аналитика без посредников: как снизить порог входа для работы с данными?»
Заглядывайте к нам на стенд — покажем, как аналитика становится проще, быстрее и ближе к бизнесу.
Мы уже на месте — в самом центре российской BI-индустрии!
Рассказываем, показываем и делимся тем, как сделать аналитику доступнее без сложных инструментов и лишней боли.
Сегодня от нашей команды выступает Павел Хамрин с темой:
🎤 «Аналитика без посредников: как снизить порог входа для работы с данными?»
Заглядывайте к нам на стенд — покажем, как аналитика становится проще, быстрее и ближе к бизнесу.
🔥8👍5❤4
Решил вспомнить статью, которая вышла еще в далеком 2023-м, но которая актуальна и сейчас.
Главный посыл статьи:
Big data более не существует, а может никогда и не существовало. Большинство компаний имеют в своем хранилище менее 1TB данных и думают, что это много.
Автор, один из создателей Google BigQuery, утверждает: эпоха «больших данных» — это уже прошлое. Проблема давно не в объёмах данных, а в их эффективном использовании. Сегодня инфраструктура и технологии выросли настолько, что масштаб обработки уже не является главным препятствием.
Возможности аппаратного и программного обеспечения растут. Технологии все лучше обрабатывают данные, а аналитические базы данных становятся все быстрее.
Крупные big tech компании вроде банков или маркетплейсов действительно ворочают десятками петабайт, но ведь эти компании составляют менее 1% от общего числа компаний, которые используют DWH. Чаще всего всего в DWH действительно менее 1 терабайта, с чем справится стандартный PostgreSQL без каких-либо проблем
Компании стремятся внедрять навороченные аналитические решения за десятки миллионов, хотя на самом деле они в них не нуждаются.
Еще часто компания страдает от того, что хранит устаревшие и ненужные данные, которые более никогда не будет использовать. А еще тащит эти детальные или устаревшие данные в BI, думая, что пользователи дашбордов будут их использовать.
Сплошь и рядом в аналитические кубы или BI с невероятным усердием запихиваются не агрегированные данные или данные десятилетней давности. А после того, как их запихнули, начинают пытаться оптимизировать, ведь они кубы стали гораздо медленнее работать.
Решение же лежит на поверхности — удалить ненужные данные!
Лично мне кажется, что акцент нужно делать не на том, сколько данных и за какое время вы можете обработать. А на качестве этих данных. Гораздо важнее быть уверенным в своих данных, а не иметь большие объемы мусора.
Please open Telegram to view this post
VIEW IN TELEGRAM
MotherDuck
Big Data is Dead - MotherDuck Blog
Big data is dead. Long live easy data.
👍7🔥1💯1
Media is too big
VIEW IN TELEGRAM
Как Data Mesh помогает повысить производительность аналитики ❗
Data Mesh меняет сам подход к работе с данными: вместо одной централизованной команды — множество доменов, каждый из которых отвечает за свою часть данных и создает полноценные дата-продукты.
В видео — просто о том, как работает децентрализация, зачем нужны доменные команды и почему единая платформа — ключ к эффективности.
Data Mesh меняет сам подход к работе с данными: вместо одной централизованной команды — множество доменов, каждый из которых отвечает за свою часть данных и создает полноценные дата-продукты.
В видео — просто о том, как работает децентрализация, зачем нужны доменные команды и почему единая платформа — ключ к эффективности.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2🔥2
Если пару лет назад про data lineage говорили как про «приятный бонус» к стеку, то сейчас без него сложно представить нормальную работу data-инженеров.
И вот почему в 2025 он стал необходимостью:
В 2020–2021 мы могли «на глаз» держать в голове, что тянется из CRM в витрины продаж. Сегодня же Kafka + десятки топиков, десятки джоб в Airflow, сотни моделей в dbt и десятки витрин. Без документации все превратится в болото.
Без понимания что от чего зависит вы будете тратить много времени на impact-анализ. Как тратил я на заре своей карьеры, копаясь в десятках SQL-прототипах и вручную выписывая зависимости.
А самое главное, вы теряете уйму времени. Теряет аналитик, теряет инженер и теряет, конечно же, бизнес, который запросил доработку в отчет.
Мы свои трудозатраты снизили примерно на 20% с использованием data lineage.
Работа с данными все больше походит на разработку ПО: тесты, зависимости, Git, CI/CD. Это конечно все замечательно.
Те, кто продолжают жить по старинке попросту тратят гораздо больше сил и времени на стандартные процессы.
А вы у себя уже внедрили lineage?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1🔥1
DataPulse на РУBIКОНФ ‘25 🚀
7 октября мы приняли участие в главной конференции российской data-индустрии — РУBIКОНФ ‘25.
Обсуждали, как сделать аналитику доступнее и быстрее — без ручного кодинга и громоздких процессов.
🎤 От нашей команды выступал Павел Хамрин с докладом
«Аналитика без посредников: как снизить порог входа для работы с данными?».
💡 На стенде мы показали, как с помощью наших продуктов за минуты собрать таблицы, создать документацию и запустить проверку качества данных — без необходимости писать SQL.
Особый интерес вызвали сценарии адаптации DataPulse под существующую инфраструктуру компаний и быстрый запуск пилотов.
Мы убедились: рынок активно движется к автоматизации и «умным» инструментам, которые делают работу с данными проще и быстрее.
Команда DataPulse благодарит РУBIКОНФ ’25 за организацию и сообщество, которое объединяет тех, кто формирует культуру работы с данными в России.
До встречи в следующем году!
7 октября мы приняли участие в главной конференции российской data-индустрии — РУBIКОНФ ‘25.
Обсуждали, как сделать аналитику доступнее и быстрее — без ручного кодинга и громоздких процессов.
🎤 От нашей команды выступал Павел Хамрин с докладом
«Аналитика без посредников: как снизить порог входа для работы с данными?».
💡 На стенде мы показали, как с помощью наших продуктов за минуты собрать таблицы, создать документацию и запустить проверку качества данных — без необходимости писать SQL.
Особый интерес вызвали сценарии адаптации DataPulse под существующую инфраструктуру компаний и быстрый запуск пилотов.
Мы убедились: рынок активно движется к автоматизации и «умным» инструментам, которые делают работу с данными проще и быстрее.
Команда DataPulse благодарит РУBIКОНФ ’25 за организацию и сообщество, которое объединяет тех, кто формирует культуру работы с данными в России.
До встречи в следующем году!
👍8❤4🔥4
Media is too big
VIEW IN TELEGRAM
Частые проблемы data mesh ⛔️
Вы, конечно, можете нарезать компанию на домены, красиво всё расписать по ролям…
А потом поймёте, что аналитиков не хватает, data-инженеров ещё меньше, а половина сотрудников не поняла, что вообще происходит.
Дальше будет классика жанра:
— сопротивление новым процессам
— «велосипеды» в каждом домене
— зоопарк технологий
— и повышенный порог входа, когда аналитик внезапно становится всем — от инженера до тестировщика
В общем, Data Mesh — штука хорошая, но только если вы готовы к человеческой стороне вопроса.
Как раз о ней — в новом видео 🎥
Вы, конечно, можете нарезать компанию на домены, красиво всё расписать по ролям…
А потом поймёте, что аналитиков не хватает, data-инженеров ещё меньше, а половина сотрудников не поняла, что вообще происходит.
Дальше будет классика жанра:
— сопротивление новым процессам
— «велосипеды» в каждом домене
— зоопарк технологий
— и повышенный порог входа, когда аналитик внезапно становится всем — от инженера до тестировщика
В общем, Data Mesh — штука хорошая, но только если вы готовы к человеческой стороне вопроса.
Как раз о ней — в новом видео 🎥
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤2🔥2
Тут недавно вышла статья в блоге dbt – сравнение хранимых процедур и dbt. И мне она совершенно не понравилась. Тезисы выстроены для мало разбирающихся менеджеров:
- вы не внедрите AI в хранимки (а зачем?)
- кандидаты будут выбирать других работодателей ведь хранимки – это прошлый век
- хранимки – legacy (но не объясняется почему)
Хранимые процедуры – неотъемлемая часть любого среднестатистического хранилища данных. Раньше нельзя было представить себе DWH без «хранимок». Но они действительно постепенно уходят в прошлое. Я постараюсь получше и без маркетинговых уловок объяснить, почему dbt лучше «хранимок».
В хранимой процедуре потребуется вручную прописывать логику INSERT, UPDATE, DELETE. В то время как в dbt из коробки доступны разные стратегии обновления, которые эту «обвязку» сделают за вас.
Да, в хранимых процедурах вы больше контролируете логику, зато с dbt вы гораздо меньше времени тратите на рутину. Ведь логика обновления данных у 90% объектов одинаковая – добавь новые данные (append), проставь новую версию.
Если вам требуется своя кастомная логика обновления – в dbt вы можете добавить свою стратегию обновления, написав ее в jinja.
Это кстати то, что мы сейчас делаем в нашем новом продукте dbtPro – добавляем множество своих стратегий обновления. А то в dbt их слишком уж мало.
В статье об этом тоже говорится, единственный хороший тезис. Хранимые процедуры ой как сложно поддерживать. Особенно, если одна зависит от другой, а другая зависит от третьей. Чаще всего никакой документации к ним нет; сотрудники, которые их делали давно уволились; не дай бог, в процедуре обновляется сразу несколько таблиц. И вот вы сидите и тратите уйму времени, чтобы внести мизерное изменение в этот ворох.
Dbt гораздо прозрачнее в этом плане. Есть встроенный функционал документации, можно фиксировать зависимости, один файл dbt – одна таблица. А главное – только SELECT-запросы внутри файлов, а не ворох непонятных DML-операций.
Удивительно, что dbt в своей статье забыли упомянуть эту киллер-фичу – dbt умеет работать со множеством СУБД. И при переезде на новую, вам не потребуется переписывать ворох DML-операций на новый синтаксис.
Да, сами SQL-запросы возможно переписать потребуется, но их «обвязка» в виде вставок и обновлений данных – это dbt берет на себя.
Да, хранимки конечно можно сохранить в текстовый файл и залить в Git. Но в какой-то момент вы обновите в DWH хранимку и забудете скопировать исправления в файл и закомитить в Git. Любые дополнительные действия без проверки исполнения, в итоге забываются. И вы 100% получите рассинхрон Git с актуальной версией хранимки.
В dbt вся SQL логика изначально хранится в файле. И грех не комитить этот файл в Git.
Ну и конечно, главный минус хранимых процедуры – они сложны в реализации. Я не сомневаюсь, что вы, читатель, несомненно крутой SQL-специалист. Но помимо вас есть еще огромное количество аналитиков, 90% которых не сможет написать хранимую процедуру.
А вот какой-нибудь SELECT аналитик уже написать сможет.
Мое скромное мнение – хранимые процедуры проигрывают битву за DWH и постепенно будут заменены на dbt и подобные аналоги.
Please open Telegram to view this post
VIEW IN TELEGRAM
dbt Labs
Why moving from stored procedures to dbt drives trust, talent, and AI-readiness | dbt Labs
Discover how migrating from stored procedures to dbt enhances trust, talent retention, and AI-readiness, accelerating data-driven business value.
👍4🔥4❤3
DataPulse и Денвик заключили партнёрство
Рады сообщить, что DataPulse активно развивает сотрудничество с Денвик Экстрактор 1С — инструментом для быстрой и безопасной выгрузки данных из 1С.
Цель партнёрства — объединить технологии, чтобы компании могли получать из 1С более полные, точные и структурированные данные. Это усилит качество аналитики, прозрачность отчётности и доверие к цифрам внутри корпоративных систем.
Наше партнёрство открывает новые возможности для повышения прозрачности и доверия к данным за счёт их более полного и качественного извлечения из источников.
Рады сообщить, что DataPulse активно развивает сотрудничество с Денвик Экстрактор 1С — инструментом для быстрой и безопасной выгрузки данных из 1С.
Цель партнёрства — объединить технологии, чтобы компании могли получать из 1С более полные, точные и структурированные данные. Это усилит качество аналитики, прозрачность отчётности и доверие к цифрам внутри корпоративных систем.
Наше партнёрство открывает новые возможности для повышения прозрачности и доверия к данным за счёт их более полного и качественного извлечения из источников.
❤4👍4🔥4