Все потоки
Поиск
Написать публикацию
Обновить
75.36

Data Engineering *

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

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

Простые вещи, которых я не знаю: юнит-тесты

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

В этом топике я не пытаюсь доказать, что тесты бесполезны. Это скорее мои размышления вслух и личная попытка нащупать их реальную ценность. Некоторые идеи в процессе всё-таки зацепили - но скорее как частные случаи, а не что-то универсальное.

Я программирую уже больше шести лет. На самом деле существенно больше (на свой первый аутсорс на PHP я попал примерно в 2016 году), но осознанно подходить к своей карьере я начал не сразу. За это время я вполне успешно поработал в довольно разных местах, от маленьких стартапов до международных компаний.

Недавно я проходил очередное собеседование, и на мой взгляд я неплохо держался. Как минимум до вопроса о том, как я покрываю свой код тестами. После него я стыдливо пробормотал о том, что знаю, как работает assert в python, и даже слышал про pytest. И что я с радостью начну писать тесты как только попаду к ним на проект, просто в наших проектах их не требовали. После чего мы плавно перешли к следующей теме, а оффер я так и не получил.

Пришлось разбираться, что я делаю не так

Хочешь своего AI-бота? Пошаговый план для новичков и не только

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

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

В результате, около 65% организаций заявляют об использовании генеративного ИИ как минимум в одной бизнес-функции на регулярной основе — почти в два раза больше, чем десять месяцев назад.

Читать далее

Data Mesh: ожидания vs реальность

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

Представьте: ваш бизнес растет, а вместе с ним и количество данных. Но вместо ценной аналитики — хаос: отчеты готовятся месяцами, данные разбросаны по Excel-файлам, а команда DWH не успевает закрывать запросы. Знакомо? Мы прошли через это и решили внедрить Data Mesh. Ожидания были амбициозные, но что получилось на самом деле?

Читать далее

Соединение SortMergeJoin в Apache Spark

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

Рассмотрим, как реализован SortMergeJoin в Apache Spark, и заодно заглянем в исходный код на GitHub. Spark написан на языке Scala, и вся логика работы оператора доступна в открытом репозитории проекта.

Читать далее

AI-агент говорит, что всё сделал. А ты уверен? Что нужно знать про оценку

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

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

Читать далее

Как мы внедрили LLM в рабочие процессы аналитиков на R — и сделали это бесплатно

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

В этой статье расскажу, как мы в команде аналитиков начали использовать большие языковые модели (LLM) в повседневных рабочих инструментах. Всё построено на R, и покажу на практике, как можно внедрить такие фичи у себя — без платных подписок, без OpenAI и без строчки кода на Python.

Читать далее

Как тестировать AI-агентов, чтобы не было больно

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

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

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

Читать далее

История исследования и анализа информации. Архитектура Data Mesh: концептуальные основы

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

С возникновением первых вычислительных машин предприятия осознали потребность в обработке и анализе информации.

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

Но по мере того как компании накапливали всё больше разнородных сведений, недостатки реляционных баз данных становились всё более явными.

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

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

Тем не менее, при внедрении таких аналитических инструментов компании всё ещё сталкивались с определёнными трудностями.

Архитектура сохраняла свою целостность, и одна команда специалистов занималась созданием платформы и интеграцией данных.

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

В данном контексте централизация оказалась ахиллесовой пятой крупных корпораций.

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

Подробный текст статьи

Текстовая трансляция ArenaDAY 2025

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

Хабр, привет! И добро пожаловать на прямую текстовую трансляцию конференции ArenaDAY 2025! Да, сегодня на официальном сайте идёт прямая видеотрансляция мероприятия, но мы решили провести ещё и текстовую — специально для тех, кто не может смотреть онлайн. Следите за обновлениями: мы оперативно публикуем самые интересные моменты, главные тезисы выступлений и цитаты спикеров!

Читать далее

Оцени, прежде чем доверять: как сделать AI-агента полезным

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

Часто недооцененным аспектом разработки AI-агентов остаётся этап оценки. Хотя создать proof of concept относительно просто, поиск оптимальной конфигурации для балансировки стоимости, скорости, релевантности и других параметров требует значительных временных затрат. Инструменты и фреймворки для оценки являются ключевыми элементами этой стадии оптимизации.

Читать далее

Нейросетевой подход для классификации событий отслеживаемых сверхширокополосным радаром

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

В данной статье речь пойдёт о том, как используя разные архитектуры нейронных сетей классифицировать данные полученные со сверхширокополосного радара " XETHRU by NOVELDA X4M02 290056-010 ". Моя работа основана на публикации " UWB-gestures, a public dataset of dynamic hand gestures acquired using impulse radar sensors " в которой подробно рассмотрена задача классификации человеческих жестов заснятых на сверхширокополосный радар при помощи свёрточной нейронной сети. Авторы оригинальной статьи выложили весь датасет собранный ими в открытый доступ, благодаря чему у меня появилась возможность воспроизвести их результат, а так же превзойти его применив архитектуры рекуррентных нейронных сетей и трансформеров.

Оригинальная статья:
https://www.researchgate.net/publication/350811193_UWB-gestures_a_public_dataset_of_dynamic_hand_gestures_acquired_using_impulse_radar_sensors https://www.nature.com/articles/s41597-021-00876-0
Данные:
https://figshare.com/articles/dataset/A_Public_Dataset_of_Dynamic_Hand-gestures_Acquired_using_Impulse-radar_sensors_/12652592
Мой GitHub с кодом:
https://github.com/DenissStepanjuk/UWB-Gestures-classification-with-Neural-Networks

Ознакомиться.

Как Apache Spark читает файлы: механизмы, оптимизации

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

Меня зовут Андрей Кучеров, и я Lead Data Engineer. Часть моей работы включает обучение команды. Я люблю делиться своим опытом, потому что в работе с данными мелочей не бывает - часто кажущиеся незначительными детали могут кардинально влиять на производительность всего пайплайна. Многие недооценивают важность правильного выбора форматов данных и тонкой настройки процессов чтения, а потом удивляются, почему их Spark-джобы работают медленно и потребляют слишком много ресурсов. Читаем далее что бы разобраться в теме ->

Читать далее

Три необсуждаемых вопроса о микросервисах и параллельной распределённой обработке данных — чтобы жить стало легче

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

Воркшоп для тех, кто впервые сталкивается с распределёнными системами.

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

Читать далее

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

Red Teaming для LLM: Полное пошаговое руководство по Red Teaming больших языковых моделей

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

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

Читать далее

Рынок дата-инженеров и прогноз на 2025

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

В этой статье вы сможете узнать в каком состоянии находится рынок дата-инженеров в 2024-ом и что с ним будет в 2025-ом.

Читать далее

Как перейти от ручной проверки данных к автоматической: решение ИЦ «Безопасный транспорт»

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

Об Инновационном центре

Инновационный центр «Безопасный Транспорт» создан в 2017 году на базе ЦОДД для работы с Big data и решения задач Транспортного комплекса Москвы. Команда экспертов изучает и анализирует потребности жителей столицы, а также разрабатывает и внедряет инновационные цифровые сервисы и решения для транспорта и дорог города.

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

Хранилище данных — сердце Транспортного комплекса

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

Для реализации концепции data driven нужно было собрать все эти данные в одном месте, а для этого была нужна отдельная команда и отдельное подразделение. С этого в 2017 году и началась история ИЦ, сердцем которого является хранилище данных. 

На данный момент данные хранилища Инновационного Центра используются во множестве информационно-аналитических продуктов.  В их числе — интерактивная аналитическая отчётность, цифровое мастер планирование города, Экологическая карта, Коммуникационная платформа, Карта аварийности, Справка загруженности и другие решения, направленные на улучшение и развитие Транспортного комплекса Москвы.

Читать далее