Как стать автором
Обновить
78.61

Big Data *

Большие данные и всё о них

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

Пишем движок SQL на Spark. Часть 8: CREATE FUNCTION

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров460
В предыдущих сериях ( 1 2 3 4 5 6 7 Ы ) рассмотрели, как написать на Java собственный интерпретатор объектно-ориентированного диалекта SQL, заточенный на задачи подготовки и трансформации наборов данных, и работающий как тонкая прослойка поверх Spark RDD API.

Штука получилась довольно продвинутая, с поддержкой императивщины типа циклов/ветвлений/переменных, и даже с поддержкой пользовательских процедур. И в плане этой самой императивщины расширяемая: может импортировать функции из Java classpath, равно как и операторы выражений. То есть, если необходимо, можно написать функцию на Java, или определить новый оператор, и использовать потом в любом выражении на SQL.


Круто? Ещё как круто. Но как-то однобоко. Если в языке у нас поддерживаются функции, то почему бы не дать нашим пользователям определять их самостоятельно? Вот прямо через CREATE FUNCTION? Тем более, что вся необходимая для этого инфраструктура уже вовсю присутствует. Да и процедуры на уровне интерпретатора у нас уже поддерживаются ведь…



Функция для затравки.

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

Новости

Пятый, юбилейный выпуск исследования «BI-круг Громова»

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

Пятый, юбилейный выпуск нашего исследования «Круги Громова» выходит в момент, когда рынок отечественных BI-платформ переживает волну бурного роста и трансформации. За два года, прошедшие с публикации предыдущего отчёта, импортозамещение перестало быть формальностью и стало стратегической необходимостью: доля внедрений российских BI-систем выросла почти в восемь раз, а зарубежных — упала до 23 %[1]. На этом фоне особенно важны объективные ориентиры, позволяющие ИТ-директорам и бизнес-пользователям выбрать платформу, которая останется актуальной на ближайшие несколько лет. Именно такую навигационную карту мы и предлагаем.

Читать далее

MCP-серверы: зачем они нужны и почему о них скоро будут говорить все

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

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

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

Читать далее

Проблемы БД или почему большой продакшн спасут только массовые расстрелы запросов

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

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

Привет, Хабр! Именно так считает наш сегодняшний гость – Дмитрий Немчин, руководитель направления эксплуатации инфраструктуры данных в Т-банке и по совместительству член программного комитета Data Internals, профессиональной конференции
по инженерии, базам и системам хранения и обработки данных.

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

Читать далее

Многорукие бандиты: когда классическое тестирование не работает

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

Привет, Хабр! Мы команда ЖЦК, занимаемся машинным обучением в ВТБ. Сегодня расскажем про алгоритмическую магию, которая творится прямо у нас под носом. Авторами проекта этой магии в ВТБ стали дата-сайентисты Дмитрий Тимохин, Василий Сизов, Александр Лукашевич и Егор Суравейкин. Речь пойдет не о хитрых нейросетях с их миллионами параметров, а о простом подходе, который помог им и команде сэкономить много времени на решении задач, в которых раньше использовались классические методы тестирования. 

Читать далее

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

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

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

Читать далее

Грязные данные для вечного сияния чистого ИИ

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

Эпиграф: Это хуже чем преступление. Это ошибка

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

При этом согласно дорожной карте по развитию общего искусственного интеллекта от OpenAI, состоящей из 5 уровней, мы сейчас находимся на 1 уровне, когда ИИ только советует, а решение и ответственность остаётся за человеком. На следующем уровне он сможет рассуждать на уровне и вместо человека, а на третьем сможет действовать.

Скачок развития больших языковых моделей и нейросетей (технологий в основе ИИ) привёл к тому, что ИИ уже сейчас может говорить, рисовать картины, водить машину и даже пылесосить и мыть полы. Даже дети уже оживляют фотографии с помощью нейросетей.

Справедливо будет сказать, что все мы, согласно опросу ВЦИОМ, возлагаем на него большие надежды:

1. уменьшим затраты времени на рутину

2. повысим производительность труда

3. улучшим качество жизни

4. вырастет уровень безопасности

5. победит мировая революция

Одна из важных отраслей для применения ИИ - Здравоохранение.

В России принята Национальная стратегия в области искусственного интеллекта до 2030 года, в соответствии с которой, должны быть: "сняты отдельные административно-правовые барьеры, препятствовавшие внедрению технологий искусственного интеллекта в отдельных областях, включая здравоохранение, транспорт, государственно-частное партнёрство и другие области;"

Читать далее

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

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

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

Читать далее

Spark on Kubernetes: наш путь к автоматизации через кастомный оператор Airflow

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

Всем привет! Меня зовут Дмитрий Третьяков, я ML Engineer в компании «Лента». Мы регулярно запускаем PySpark-приложения в Kubernetes-кластере, используя Airflow. Этот процесс важен для нашей ежедневной работы с данными, но в какой-то момент мы столкнулись с тем, что стандартный подход через SparkKubernetesOperator стал сдерживать развитие: не хватало гибкости, возникали сложности в сопровождении и процесс настройки был излишне сложным для разработчиков.

Читать далее

Что скрывается за MCP-сервером и почему он может заменить RAG

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

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

Читать далее

Apache Flink для начинающих: архитектура, библиотеки и применение

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

Apache Flink — это фреймворк и распределенный движок обработки данных, поддерживающий какпакетную (ограниченную), так и потоковую (неограниченную)обработку данных. Это значит, что с его помощью можно обрабатывать как статичные (неизменяемые) данные, так и данные, поступающие в реальном времени.

Читать далее

В Москве идет Datafest 2025

Время на прочтение5 мин
Количество просмотров786

Примерно через каждый день проходит то или иное событие в Москве в даты с 25 мая по 2 июня 2025 года. Видимо, мероприятия от организаторов Data Fusion не одноразовое, и что-то подобное планируется проводить ежегодно, поэтому интересно посмотреть программу данного фестиваля.

Читать далее

Шпаргалка по установке драйверов NVIDIA на ML сервер

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

Данный материал предназначен для быстрой и последовательной установки драйверов NVIDIA, в том числе для видеокарт 50xx серии, а также настройки NVIDIA Container Toolkit. Эта инструкция актуальна для Linux-систем на базе Ubuntu и других Debian-совместимых дистрибутивов.

Читать далее

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

От точечных решений к экосистеме: как «Национальная Лотерея» улучшает качество данных

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

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

Читать кейс

Как мы храним 20000+ метрик и миллиарды комбинаций разрезов в одной таблице

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

Привет! Меня зовут Влад Божьев, я старший разработчик юнита АБ-тестирования Авито. Один из наших ключевых инструментов – M42, сервис для визуализации метрик. Он позволяет быстро проверять гипотезы, анализировать отклонения и оценивать инициативы.

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

В нашем семантическом слое данных больше  20 000 метрик, и есть десятки разрезов для каждой из них. Под катом рассказываю, как мы храним терабайты данных и автоматизируем добавление новых разрезов в отчёт M42.

Читать далее

Массивы вместо self-join: как писать быстрые запросы в ClickHouse

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

Привет, Хабр! Я — Максим Шитилов, продуктовый аналитик в каршеринг-сервисе Ситидрайв. Каждый день мы обрабатываем большие объёмы данных, и ClickHouse — один из наших ключевых инструментов. Если вы когда-либо пытались связать события с временными интервалами или рассчитать метрику за определённое окно после события, то наверняка сталкивались с типичной конструкцией на self-join. Вроде бы работает, но запрос становится громоздким, ресурсоёмким и плохо масштабируется.

В этой статье я расскажу, как решать такие задачи проще и эффективнее — с помощью массивов, arrayFilter и arrayMap. Покажу, как отказаться от self-join’ов без потери точности, ускорить обработку и упростить код. Примеры — из реальных бизнес-кейсов: телеметрия, аренды, GMV и события, которые нужно связать между собой по времени. Так как схожих решений на просторах интернета я не нашёл, предлагаю назвать этот подход «Array Join Pattern». Если метод окажется полезным для сообщества, то такой паттерн легко будет найти другим аналитикам и девам.

Читать далее

# Автоматизация цифрового маркетинга с помощью ИИ: системный подход, который работает

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

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

Читать далее

Долгожданный релиз Airflow 3

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

Привет, Хабр! Я Георгий Новожилов, инженер данных в «ДАР» (ГК «КОРУС Консалтинг»).

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

22 апреля 2025 года компания Apache выпустила новую версию своего оркестратора, которая была в разработке последние 4 года. Среди ключевых изменений — новый интерфейс, обновлённая и защищённая архитектура, а также стабильный интерфейс разработки.

В этой статье предлагаю рассмотреть, какие ещё нововведения нам привезли в масштабном обновлении Apache Airflow 3.0.0.

Читать далее

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

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

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

Читать далее

Иногда приходится¹ копаться² в кишках³ Apache Spark

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

¹ …просто потому, что другого варианта добиться необходимого результата тупо не существует.
² и да, довольно-таки глубоко.
³ нет, серьёзно!



Давайте рассмотрим следующий бизнесовый кейс.


Дано: реально большие данные. Очень много датасетов по много терабайтов каждый, — в сумме объём тянет на петабайты. Лежат в облаке, но это не важно. Важно, что мы эти данные покупаем в «сыром» виде, каким-то образом «готовим», а потом перепродаём конечному потребителю.


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


Довольно-таки сложный, продвинутый ETL у нас. Поясню на типичном примере.

Читать дальше →
1
23 ...

Вклад авторов

Работа

Data Scientist
56 вакансий