Обновить
118.61

Data Engineering *

Обсуждаем вопросы сбора и подготовки данных

Сначала показывать
Порог рейтинга
Уровень сложности

Какую архитектуру данных мне выбрать? — Подход Data-инженера. Часть 1

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров5.6K

Выбор архитектуры данных — это не просто техническое решение, а стратегический шаг, от которого зависит эффективность работы с данными во всей компании. Data Warehouse, Data Lake, Lakehouse или Data Mesh — у каждого подхода есть свои сильные и слабые стороны, и не существует универсального ответа. В этой статье — прагматичный разбор современных архитектур с точки зрения дата-инженера с акцентом на реальные кейсы. Если вы стоите перед выбором или хотите убедиться, что двигаетесь в правильном направлении — разложим всё по полочкам.

Читать далее

Повышаем эффективность хранения данных до 300 раз с помощью таблиц SCD-2

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров3.6K

Всем привет, меня зовут Василий. С 2021 года работаю в роли инженера данных в Х5 Tech, успел за это время познакомиться с несколькими интересными проектами и подходами в области обработки данных, об одном из которых пойдет речь далее.

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

Разберем, что из себя представляют Slowly Changing Dimensions-2 (далее SCD-2) таблицы и самостоятельно реализуем на PySpark алгоритм сохранения данных в них. Попутно поговорим о том, как находить изменения в любой таблице, даже если отсутствуют поля для выбора изменившихся записей, и научимся получать из созданной SCD-2 таблицы срезы на требуемую дату в прошлом.

Читать далее

Каталог данных: что за зверь и с чем его едят

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.5K

Всем привет! Меня зовут Роман Грибов, я директор по развитию данных и аналитики в «Спортмастере». Вместе с моей коллегой Татьяной Шишкиной, руководителем направления «Каталог данных», мы расскажем о том, что это за инструмент, как он работает и как позволяет сделать проще жизнь аналитиков, архитекторов и многих других (включая даже тех из нас, кто просто когда-либо смотрел на аббревиатуру «GMV» с немым вопросом «Что ты такое?»), а еще объясним главные цели его внедрения.

Читать далее

SRE в инженерии данных: профессия и ее перспективы

Уровень сложностиПростой
Время на прочтение23 мин
Количество просмотров4.8K

Всем привет! Меня зовут Александр Андреев, я старший SRE дата-инженер в компании "Криптонит". Сегодня я хочу рассказать о необычной, но набирающей обороты роли в области обработки данных - SRE Data Engineer: кто это такой, чем занимается, как им стать, куда развиваться и какие перспективы у этой профессии.

Читать далее

Правильный порядок колонок в B-tree индексах PostgreSQL или правило ESR

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров8.1K

Когда в проекте используется составной B-tree индекс, важно не просто "создать индекс", а сделать это правильно — иначе запросы могут не только не ускориться, но и начать работать медленнее. Возникает логичный вопрос: как выбрать порядок колонок, чтобы индекс действительно работал эффективно? Брутфорсом? По интуиции? По селективности?

В этой статье я расскажу, как подходить к построению составных индексов в PostgreSQL, на что реально влияет порядок колонок. Также разберём простое правило ESR, которое помогает упростить выбор и получать стабильный прирост производительности на всех стендах.

Читать далее

To Docker or not to Docker? Вот в чём JupyterLab

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.3K

Локальная работа в Jupyter-ноутбуках – неотъемлемая часть исследований и экспериментов нашего ML-отдела. Но из какой среды эти ноутбуки лучше запускать?
Мы пользуемся двумя вариантами: запуском из Docker-контейнера и запуском в изолированном локальном poetry-окружении.

В статье соберем минимальный сетап для работы с Jupyter-ноутбуками и ссылки на полезные ресурсы для ознакомления.

Читать далее

СIM-модель. Идеальное решение для унификации информационного обмена в энергетике?

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров1.4K

Всем привет! Меня зовут Александр, и я хочу поделиться опытом использования CIM-модели и моделирования её расширений при разработке интеллектуальной системы учета электроэнергии. На самом деле материалов по этой теме у нашей команды накопилось достаточно — хватит на целую серию статьей. Начну с основ. В чем особенности рынка электроэнергетики, почему важно обеспечить унифицированный обмен данными между его участниками и как в этом помогает CIM? Давайте разбираться.

Читать далее

Гайд по Scikit-learn в 2025: собираем пайплайн, который не сломается

Уровень сложностиПростой
Время на прочтение30 мин
Количество просмотров12K

Scikit-learn — это одна из основных Python-библиотек для машинного обучения. Её подключают в прикладных проектах, AutoML-системах и учебных курсах — как базовый инструмент для работы с моделями. Даже если вы давно пишете с PyTorch или CatBoost, в задачах с табличными данными, скорее всего, всё ещё вызываете fit, predict, score — через sklearn.

В 2025 году в библиотеку добавили несколько важных обновлений: доработали работу с пайплайнами, подключили полную поддержку pandas API, упростили контроль за экспериментами.

Мы подготовили гайд, как работать со scikit-learn в 2025 году. Новичкам он поможет собрать первую ML-задачу — с данными, моделью и метриками. А тем, кто уже использует библиотеку, — освежить знания и понять, что изменилось в новых версиях.

Почитать гайд →

Заметки и материалы по итогам Lakehouse Meetup #3

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров1.2K

CedrusData совместно с Лемана Тех провели митап, где рассмотрели реальный опыт внедрения современных технологий анализа данных: реализация lakehouse на Trino в Лемана Тех, использование Nessie в Азбуке Вкуса.

Читать далее

Apache Kafka на слое Stage аналитической платформы: зачем, как и грабли на пути

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров958

Всем привет! В этой статье поделюсь нашим опытом использования Apache Kafka на слое Stage в аналитической архитектуре. Мы поговорим о том, что такое слой Stage и зачем он нужен, почему именно Kafka стала нашим выбором, как устроен процесс ingest (приёма данных) на базе Kafka, что можно и чего делать не стоит на этом этапе, какие грабли нас ждали и как мы их преодолели, а также дам практические советы из реального опыта. Спойлер: Kafka оказалась не просто очередным модным словом, а действительно упростила нам жизнь в аналитическом проекте. Поехали!

Читать далее

Приходят как-то аналитики на офисную кухню, а там дата-инженеры в нарды играют…

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров4.8K

Один из игроков — я, Кирилл Красновид, тимлид BI-команды в Профи.ру. Наша задача — делать так, чтобы каждый быстро и удобно получал нужную информацию без лишней суеты и ожиданий. 

Поэтому мы стараемся все автоматизировать и оптимизировать. Сегодня расскажу, как решаем эти задачи, а ещё про собственные хранилища аналитиков и bus-фактор.

Читать далее

Data-Driven: от интуиции к фактам, и при чем тут data internals?

Время на прочтение12 мин
Количество просмотров1.5K

Netflix сделал ставку на то, чтобы у каждого нового зрителя в списке просмотров было минимум три фильма или сериала «на потом». Для этого они упрощают интерфейс, мотивируют добавлять контент в очередь и персонализируют всё, что вы видите. Они постоянно экспериментируют с разными версиями интерфейса, тестируют расположение кнопок и оформление. Для одного и того же фильма создаются десятки вариантов обложек, чтобы показать вам именно то, что вас зацепит. Сразу после регистрации вы получаете трейлер оригинального контента, подобранного под ваши предпочтения, а настройки профиля встроены в сам процесс адаптации.

Как Netflix научился читать мысли пользователей? Зачем собирает и анализирует сотни терабайт данных? Какой подход помогает обгонять конкурентов?

Привет, Хабр! Меня зовут Алексей Жиряков. Я руководитель направления в KION и член программного комитета конференции Data Internals. Давайте поговорим о том, зачем нужен Data-driven (и как он устроен в KION), его проблемах и том, нужен ли он вам.

Читать далее

Максимизация производительности ScyllaDB

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров1.8K

ScyllaDB — это высокопроизводительная распределённая NoSQL-база данных, совместимая с Apache Cassandra, но в разы более быстрая за счет того, что написана на C++. Однако, несмотря на сверхбыструю скорость работы, можно ли сделать ее еще быстрее?

Читать далее

Ближайшие события

Можно ли оценить эффективность цифровой трансформации или это просто дань моде?

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.1K

Цифровая трансформация давно перестала быть громким лозунгом — сегодня это рабочий инструмент, от которого зависит выживание и рост компании. В «Росгосстрахе» я отвечаю за управление отчетностью, и наша задача — не просто автоматизировать процессы, а перестроить архитектуру принятия решений. В этом тексте — о том, как мы измеряем цифровую зрелость, зачем это делать и как использовать метрику как компас в непростом ландшафте изменений. Материал будет полезен тем, кто работает с данными, внедряет новые технологии, управляет трансформацией или просто ищет устойчивые опоры в эпоху цифрового сдвига.

Цифровая трансформация — это не про тренды, а про выживаемость. Но прежде чем менять процессы, важно понять: где мы находимся сейчас и куда действительно стоит двигаться. В этом смысле цифровая зрелость — не модное словосочетание, а инструмент навигации. Я расскажу о нашем подходе: какие шаги мы предпринимаем, какие метрики считаем значимыми и как используем их не ради отчётов, а ради движения вперёд.

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

Что такое цифровая зрелость и зачем её измерять?

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

Читать далее

Оптимизация Spark-приложений: шаг за шагом от базовых техник до продвинутых приёмов

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров5.3K

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

Привет, Хабр! Меня зовут Александр Маркачев и я — Data Engineer команды Голосовой Антифрод в билайн. Расскажу, как борьба с мошенниками может обернуться личным вызовом.

Все техники сопровождаются объяснениями, примерами и рекомендациями для самостоятельного повторения.

Читать далее

Управление отставанием lag в Kafka Consumers: как не просто замерить, а стабилизировать

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров3.8K

Привет, Хабр!

Сегодня рассмотрим, почему отставание у Kafka-консьюмеров — это не просто строчка в kafka-consumer-groups, а метрика, от которой зависит SLA вашего сервиса. Рассмотрим, как её считать без самообмана, как соорудить собственный мониторинг на Python и Go, а главное — чем именно тушить всплески lag’а: throttle, autoscale и backpressure.

Читать далее

Разведочный анализ данных (EDA) через тематическое моделирование и мягкую кластеризацию

Время на прочтение15 мин
Количество просмотров2.2K

Привет! Меня зовут Соня Асанина, я работаю в команде Центра технологий искусственного интеллекта Газпромбанка. В этой статье я расскажу, как тематическое моделирование и мягкая кластеризация помогают нам извлекать ценные инсайты из клиентских отзывов.

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

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

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

Читать далее

Как декомпозиция повышает точность распознавания текста: опыт с фотографиями СТС

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров15K

Привет! Меня зовут Наталия Вареник, я DS-инженер в Авито, занимаюсь моделями распознавания изображений. Расскажу про один из наших проектов — пайплайн для распознавания номеров с фотографии свидетельства транспортного средства (СТС). В статье описала особенности задачи и рассказала, как мы решали её с помощью декомпозиции. 

Материал будет полезен начинающим и мидл-DS-инженерам, которые хотят узнать больше про декомпозицию задачи на этапах разметки и построения моделей. 

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

Читать далее

LLM-судья: как LLM отсекает правду от лжи?

Время на прочтение28 мин
Количество просмотров2.3K

LLM-as-a-judge — распространённая техника оценки продуктов на основе LLM.

Популярность этой техники обусловлена практичностью: она представляет собой удобную альтернативу дорогостоящей человеческой оценке при анализе открытых текстовых ответов.

Оценивать сгенерированные тексты сложно, будь то «простой» саммари или диалог с чат-ботом. Метрики типа accuracy плохо работают, поскольку «правильный» ответ может быть сформулирован множеством способов, не обязательно совпадающих с образцом. Кроме того, стиль или тон — субъективные характеристики, которые сложно формализовать.

Люди способны учитывать такие нюансы, но ручная проверка каждого ответа плохо масштабируется. В качестве альтернативы появилась техника LLM-as-a-judge: для оценки сгенерированных текстов используются сами LLM. Интересно, что LLM одновременно являются и источником проблемы, и её решением!

Читать далее

Федеративное обучение: потенциал, ограничения и экономические реалии внедрения

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров709

Федеративное обучение (Federated Learning, FL) становится всё более заметным элементом технологической повестки в условиях ужесточающихся требований к конфиденциальности данных и законодательных ограничений на их передачу. На прошлой неделе при поддержке канала @noml_community мы поговорили с коллегами (Дмитрий Маслов, Михаил Фатюхин, Денис Афанасьев, Евгений Попов, Роман Постников, Павел Снурницын) о Federated Learning. Получилось неожиданно интересно и полезно. Много говорили о кейсах, чуть меньше - о практических аспектах реализации, особенностях работы с данными и о специфике конфиденциальных вычислений. С большим удовольствием пообщались с коллегами по цеху и основными экспертами этой отрасли. 

https://www.youtube.com/watch?v=JpApLfde38I&list=WL&index=1&t=12s

Мой вывод - FL как технология и как предмет сделали большой шаг вперед к тому, что бы технологии и потребности рынка “пересеклись” в точки эффективности и кажется что такой момент уже близко.

Читать далее