Обновить
69.62

Data Engineering *

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

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

Повышение эффективности аналитических баз данных: кейс «Комус» и Arenadata

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

Хабр, привет! Современные высоконагруженные системы требуют точной настройки и регулярного мониторинга, чтобы обеспечить стабильную производительность в условиях постоянно растущих объёмов данных. Когда речь идёт о крупной аналитической базе данных, развёрнутой в облачной среде, оптимизация её работы становится критически важной задачей. В прошлой статье мы уже рассказывали о типичных ошибках при работе с Arenadata DB (ADB), о том, как их избежать и значительно повысить производительность кластера. Сегодня же поделимся реальным опытом на примере компании «Комус» — лидера в области B2B-ритейла, которая обратилась к Arenadata за проведением комплексного аудита своего кластера ADB.

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

Что там с нагрузкой на кластер?

Оптимизация скриптов для витрин данных: от суток к часам

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

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

Читать далее

Пишем отложенные сообщения для ВК на питоне

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

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

Читать далее

Синхронизация Cookie между SSP и DSP: как это работает и почему это важно для ваших рекламных кампаний

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

Как рекламодатели определяют, что вы – тот же пользователь на разных сайтах? Почему одна реклама «следит» за вами, а другая исчезает бесследно? Все дело в синхронизации идентификаторов между SSP и DSP – сложном, но крайне важном процессе, который влияет на точность таргетинга и стоимость рекламы.

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

Читать далее

Оптимизация дашбордов в Superset

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров6.1K
В этой статье я бы хотела поделиться опытом в оптимизации дашбордов в Apache Superset. Мы в Газпромбанке перешли на этот BI-инструмент относительно недавно. В основном мы работаем в нем с движком Impala.

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

У коллег накопился большой опыт в оптимизации SQL-запросов (о чем недавно также вышла статья) и в стандартах разработки витрин. Но конкретно в работе с построением дашбордов есть своя специфика, которая не всегда учитывается, когда речь заходит об оптимальности работы. Superset так же проводит все расчеты на стороне источника через запросы к БД, как это происходит в обычных IDE. Только он преобразует конечный результат в графики, что скрывает от наших глаз сложные запросы, которые иногда там формируются.

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


Читать дальше →

Работа с библиотеками, которые не установлены в Airflow

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

Данные библиотеки можно использовать при работе со SparkOperator:

1. Создание виртуального окружения с необходимыми библиотеками

2. Создание задачи в даге и установка окружения в SparkSubmit

Читать далее

Настройка PostgreSQL для LLM

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

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

Пока звучит странно, не правда ли? Что я имею в виду? Я имею в виду повышение эффективности создания любых SQL-запросов в базу данных с использованием LLM (ChatGPT, DeepSeek, Llama и других).

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

Читать далее

Оценка больших языковых моделей в 2025 году: пять методов

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

Большие языковые модели (LLM) в последнее время стремительно развиваются и несут в себе потенциал для кардинального преобразования ИИ. Точная оценка моделей LLM крайне важна, поскольку:

Компании должны выбирать генеративные AI-модели для внедрения в работу. Базовых моделей LLM сейчас множество, и для каждой есть различные их модификации.

После выбора модели будет проходить fine-tuning. И если производительность модели не измерена с достаточной точностью, пользователи не смогут оценить эффективность своих усилий.

Таким образом, необходимо определить:

Оптимальные методы оценки моделей

Подходящий тип данных для обучения и тестирования моделей

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

Читать далее

Positional Bias: Что это такое и как с ним жить? Учимся правильно предсказывать CTR

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

Поговорим про такого зверя, как positional bias. Разберёмся на примере задачи по ml system design — предсказание вероятности клика по товару в поисковой выдаче.
Рассмотрим основные подходы к решению: дисконтирование таргета, добавление «позиции» как фичи и другие подходы, используемые в рекомендательных системах и поисковых алгоритмах.

Читать далее

9.000.000 рублей прибыли в первый месяц: профессиональный подход к аналитике маркетплейсов

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

Мощный инструмент аналитики, который буквально перевернул наш подход к работе с маркетплейсами. Благодаря ему мы смогли выйти на прибыль в 9 млн рублей уже в первый месяц использования!

Читать далее

В закладки: что нужно знать и уметь дата-инженеру

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

Хабр, привет! Меня зовут Саша Сайков, я дата-инженер в PepsiCo и старший ревьюер на курсах «Инженер данных» и «Инженер машинного обучения» в Яндекс Практикуме. Раньше работал в американском стартапе, IT-интеграторе «Синимекс» и как аутстафф-сотрудник в Сбере. В этом материале я расскажу, что, на мой взгляд, должен знать и уметь дата-инженер — и с помощью каких книг, статей и курсов всему этому можно научиться.

Читать далее

Как медленно меняющиеся измерения помогают сохранить контекст изменений в данных

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

В мире данных изменения — это неизбежность. Но как отслеживать и сохранять историю изменений, чтобы аналитика оставалась точной и релевантной? В нашей новой статье мы подробно разбираем концепцию медленно меняющихся измерений (Slowly Changing Dimensions, SCD) — ключевого инструмента для работы с изменяющимися данными в хранилищах и аналитических системах.

Вы узнаете, что такое медленно меняющиеся измерения и зачем они нужны, а также познакомитесь с разными типами SCD, такими как Type 1, Type 2 и Type 3. Мы рассмотрим их ключевые различия и приведем практические примеры использования: от простого обновления данных до сохранения полной истории изменений. Вы поймете, как выбрать подходящий тип SCD для ваших задач и избежать типичных ошибок.

Статья будет полезна аналитикам, разработчикам и всем, кто работает с данными и стремится сделать их управление более эффективным. Погрузитесь в мир SCD и узнайте, как превратить изменения данных в мощный инструмент для анализа!

Читать далее

Бенчмаркинг AI-агентов: оценка производительности в реальных задачах

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

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

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

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

Читать далее

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

Как не утонуть в данных: выбираем между DWH, Data Lake и Lakehouse

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

Привет, Хабр! Меня зовут Алексей Струченко, я работаю архитектором информационных систем в Arenadata. Сегодня хотелось бы поговорить о хранилищах данных — их видах, ключевых особенностях и о том, как выбрать подходящее решение. В эпоху цифровой трансформации данные стали одним из самых ценных активов для компаний любого масштаба и сферы деятельности. Эффективное хранение, обработка и анализ больших объёмов данных помогают организациям принимать обоснованные решения, повышать операционную эффективность и создавать конкурентные преимущества.

Однако с ростом объёмов данных и усложнением их структуры традиционные методы хранения сталкиваются с ограничениями. В этой статье мы подробно рассмотрим подходы к хранению данных: Data Warehouse (DWH), Data Lake и относительно новую концепцию Lakehouse. Разберем их особенности, различия, преимущества и недостатки, а также предложим рекомендации по выбору каждого подхода.

Всплыть

Data Engineering — это не Software Engineering

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

Это мой вольный перевод статьи "Data Engineering is Not Software Engineering", с рядом моих правок, дополнений, а так же сокращений (так как автор склонен повторять одно и то же, но иными словами или излишне "разжевывать" очевидные вещи). Мне кажется, автор действительно поднял очень важную тему, которую я "чувствовал" по своей практике, но не мог сформулировать так точно, как это сделал он.

Мало кто задумывается, что дата-инженерия и разработка ПО имеют значительные различия. Поэтому распространено мнение, что некое отставание дата-инженерии в части внедрения современных методов разработки, таких как Agile, Test Driving Development и т.д. обусловлено лишь отставанием в освоении этих передовых практик.

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

Читать далее

YTsaurus SPYT: как мы перешли от форка Apache Spark к использованию оригинальной версии

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

Всем привет! Меня зовут Александр Токарев, я работаю в Yandex Infrastructure и занимаюсь интеграцией Apache Spark (далее просто Spark) с YTsaurus. В этой статье я расскажу про то, как мы сначала форкнули и пропатчили Spark, а потом вернулись к использованию оригинальной версии и поддержали совместимость с множеством других версий.

YTsaurus — это разработанная Яндексом система для хранения и обработки больших объёмов данных. Она активно развивается с 2010 года, а в 2023 году была выложена в опенсорс. Подробнее почитать про историю создания и выход YTsaurus в опенсорс можно в статье Максима Бабенко.

В какой‑то момент мы решили подружить YTsaurus и Spark. Так и родился проект SPYT powered by Apache Spark (далее просто SPYT), который активно развивается с 2019 года. Основательница проекта Саша Белоусова уже рассказывала, как были реализованы SPI Spark для работы со структурами данных YTsaurus — это набор классов, интерфейсов, методов, которые мы расширяем или реализуем. Во многом эта статья и моё выступление на HighLoad++ 2024 являются продолжением её доклада.

Читать далее

В ClickHouse одна плоская таблица лучше, чем несколько соединенных таблиц

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

Данная статья о том, что в системе ClickHouse использование одной плоской таблицы (включая денормализованные таблицы) вместо нескольких таблиц, объединённых с помощью JOIN-операций, значительно повышает скорость выполнения запросов

Читать далее

Код устареет, принципы — останутся: подборка книг для мидлов и сеньоров в Data Science

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

Привет! Меня зовут Марк Паненко, и я Chief Data Science в Ozon Банке. Сегодня я хочу поговорить не о моделях или фреймворках, а о том, что останется с вами — даже когда Python 3 сменится на Python 4, а PyTorch уступит место новым инструментам. О принципах — ну и о книгах, которые научат видеть их за строками кода.

Это вторая часть книжной подборки — в первой книги для джунов.

Читать далее

Трансформация платформы данных: от пары кубов до хранилища > 30 Тб и 1000 ETL-процессов

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

Привет, Хабр! Меня зовут Наталья Горлова, я архитектор данных. Несколько лет назад мы в CDEK поняли, что продукты, на которых работало хранилище, перестали нас устраивать: не устраивала гибкость разработки и скорость поставки данных. C тех пор произошло множество изменений, которыми хочется поделиться с сообществом.

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

Читать далее

Обучение моделей timm. Связка с fastai

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

Разберемся как обучать модели timm с использованием Fastai! Покажу как я решил эту задачу с примером кода и объяснениями.

Читать далее