Обновить
68.21

Data Engineering *

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

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

Как JOIN изменил наш подход к инфраструктуре данных в NAVER

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

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

Читать далее

Новости

Парсинг тарифов интернета и ТВ: Архитектура БД и бэкенд на SQL

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

За 5 лет работы в B2B и B2C сегментах у телеком-провайдеров я столкнулся с одной из проблем: абоненты годами сидят на архивных дорогих тарифах или пользуются услугами операторов, которые не идут на уступки, не снижают цены на тарифы, пользователи просто не знают, что в их же доме есть альтернативные провайдеры с тарифами более выгодными для них.

Я решил объединить свой опыт в телекоме с навыками в программировании. Так появилась идея по парсенгу тарифов. Цель — создать инструмент, который автоматически мониторит провайдеров, избавляя пользователей от ручного сравнения и помогая им находить оптимальные условия по тарифу.

Сейчас я работаю аналитиком БД, параллельно изучаю архитектуру, построение данных. Решил начать проект с проектирования структуру на PostgreSQL по схеме "Звезда". Таблицей фактов у меня будет таблица со связью города с провайдером, таблицы измерений – таблица с информацией о тарифах, городами и провайдерами.

Читать далее

Инструмент перехвата медленных запросов StarRocks

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели5.6K

Практическое руководство по построению сервиса перехвата медленных запросов в StarRocks: правила kill и пороги (full table scan, scan rows/bytes), анализ execution plan, интеграции с Grafana и Feishu, SQL-схемы и YAML-конфигурация для продакшена.

Читать далее

От парных котировок к абсолютным курсам — как мы построили фундамент веб-интерфейса AbsCur3 с 287 валютными парами

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

Попробуйте найти исторические курсы для пар вроде «доллар к афгани» или «евро к таджикскому сомони». Данные либо платные, либо их просто нет в виде готового датасета. Мы решили эту проблему в рамках своего проекта, хотя единственный подходящий API диктовал суровые условия: 8 запросов в минуту и 5000 дней за раз.

Получилось! Наш Python-скрипт аккуратно, чанк за чанком, собрал историю всех 287 пар за 4.5 часа, ни разу не превысив лимит. В статье делюсь техническими деталями, как выстроить такую загрузку, и уроками, которые мы извлекли.

Читать далее

Построение иерархии классов для множества объектов информационной модели

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели4.9K

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

ИТ-проекты – это далеко не только создание новых систем с нуля. Существенная часть специалистов занята поддержкой и сопровождением действующих систем. А когда в состав ИТ-системы добавляется новое ПО (или заменяется какой-то из её компонентов), актуальной задачей является перенос архивных данных и настройка взаимодействия нового софта с окружающим ландшафтом. При этом задачей-максимум является добавление новых свойств для системы, улучшающих пользовательский опыт или процессы администрирования и сопровождения. Ниже я расскажу, как мы провели классификацию объектов информационной модели при интеграции действующей системы расчета производственных показателей с внешней, вновь создаваемой системой управления НСИ.

Читать далее

Достижение целей с технической точки зрения

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

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

Таким образом, если задать текущее состояние строкой Sтек и желаемое состояние строкой Sцель, то достижение цели можно назвать: работу по переводу ситуации в строке Sтек в строку Sцель.

Читать далее

Ivory v1.4.0

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели6.9K

Ivory теперь поддерживает LDAP и OIDC/SSO наряду с базовой аутентификацией, что значительно упрощает интеграцию с существующей инфраструктурой идентификации. Для каждого провайдера предусмотрены возможности тестирования подключения, а пользователям можно настроить несколько вариантов входа.

Добавлена полная система разрешений для контроля доступа к определенным кластерам, запросам и настройкам. Новый интерфейс управления разрешениями позволяет администраторам предоставлять и отзывать доступ, а пользователи могут запрашивать необходимые им разрешения. Это делает Ivory подходящим для больших команд с разными уровнями доступа.

Читать далее

Директор спрашивает «почему маржа упала» — как ответить цифрами

Время на прочтение6 мин
Охват и читатели8.3K

Привет, аналитики!

Публикую 30 декабря — когда все нормальные люди режут оливье. Но если вы это читаете, значит, тоже из тех, кто 2 января откроет ноутбук проверить дашборды. Для нас и пишу.

В прошлой статье разбирали, какие метрики выбирать для ритейла. Допустим, вы собрали нужные KPI, построили дашборды - а директор спрашивает: «Маржа выросла на 3 млн. За счёт чего?»

Показать рост - просто. Объяснить причину - сложнее. Выросла выручка, но упала маржинальность. Увеличился трафик, но просела конверсия. Как это влияет на итог в рублях?

Расскажу про дашборд факторного анализа продаж. Он показывает не «было — стало», а раскладывает изменение маржи по каждому фактору: от трафика до среднего чека.

Сегодня рассмотрим:

Читать далее

Как продуктовый дизайнер может разгрузить бэкенд: проектирование для отказоустойчивости и производительности

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

Часто дизайнеры и разработчики живут в разных вселенных. Одни думают о пикселях и user flows, другие — о latency & database queries. Но именно на стыке этих дисциплин рождаются самые эффективные и надёжные продукты. Давайте посмотрим, как ваши дизайн-решения могут стать первым и самым важным рубежом обороны для бэкенда.

Смотреть принципы →

От онтологии оливье к онтологии Деда Мороза

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

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

В статье — новогодняя сказка про холодильник-портал, онтология оливье, OntoAI в роли верного Ланселота и честный разбор того, как из живой модели получается объяснимый план покупок. Без магии, но с причинно-следственными связями.

Читать далее

RAG — это не память. Разбираем архитектуру персистентных AI-агентов

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

Почему векторной базы/RAG недостаточно для качественной памяти ИИ-агентов. Приближаем поведение агента к человеческому с помощью архитектурных решений поверх LLM

Читать далее

Production-ready архитектура AI-агента. Часть 1: ReAct, Advanced RAG, Tools, Prompts

Время на прочтение9 мин
Охват и читатели11K

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

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

Поехали...

Читать далее

Trino в Авито два года спустя: от движка к полноценной экосистеме

Время на прочтение10 мин
Охват и читатели11K

Всем привет! Меня зовут Дмитрий Рейман, я техлид аналитической платформы Avito. Уже третий год мы занимаемся миграцией с Vertica на Trino. Изначально казалось, что это будет просто: перенесём запросы, перепишем коннекторы, чуть подправим пайплайны.

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

Читать далее

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

Когда один Excel-файл убивает 100-миллионный бизнес

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

Чем хорош малый бизнес, особенно на своем старте? Ему не нужны сложные инструменты: он в состоянии увидеть состояние дел расчетами «на коленке», а план действий уместить карандашом на трамвайном билетике.

А когда бизнес подрастает? Скажем, его месячная выручка становится 100М+, количество сотрудников исчисляется сотнями, а бизнес-процессы усложняются настолько, что перестают быть прозрачными, покрываются «туманом войны».

Эта история про то, как инструмент, понравившийся команде на старте бизнеса, довел её до убытков в десятки миллионов при росте оборотов, когда компания стала крупнее. И как прозрачность вернула контроль и разблокировала рост выручки на 50%.

Читать далее

Как создать переводчик для низкоресурсного языка: практическое руководство

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

Привет, Хабр! В продолжение моей предыдущей статьи о локальном переводчике на кабардинском языке хочу поделиться практическим опытом обучения моделей машинного перевода для низкоресурсных языков. Расскажу о том, с какими проблемами я столкнулся, как их решал, и покажу конкретный код, который помог улучшить качество перевода с BLEU 8 до 28 пунктов.

Читать далее

Есть ли жизнь после Vertica или миграция DWH в Lakehouse

Время на прочтение17 мин
Охват и читатели10K

Всем привет! Меня зовут Дмитрий Рейман, я техлид аналитической платформы Авито. Мы строим систему общего назначения, которая одновременно обслуживает ETL, витрины, BI, ad-hoc аналитику и продуктовые платформы.

И в какой-то момент мы столкнулись с неприятным эффектом: объём данных начал расти заметно быстрее, чем органический рост, на который мы ориентировались раньше. Модель классического on-prem DWH перестала масштабироваться линейно: борьба за ресурсы мешала давать гарантии готовности данных; локальные оптимизации давали всё меньший эффект; любой рост требовал масштабирования “по месту” и приводил к длительным простоям аналитики.

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

Читать далее

Взламывая вселенную паттернов: что гипотеза Римана может рассказать нам об иерархии признаков в компьютерном зрении?

Уровень сложностиСложный
Время на прочтение39 мин
Охват и читатели12K

Аннотация

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

Ключевая аналогия строится на идее глубинного порядка, скрытого в кажущемся хаосе. Распределение простых чисел выглядит стохастическим, но гипотеза Римана утверждает, что оно управляется строгим законом — положением нулей дзета-функции на критической линии (Re(s)=1/2). Параллельно, поток визуальных данных (пиксели) представляется хаотическим, однако глубокие нейронные сети (DNN) демонстрируют способность извлекать из него жесткую иерархию абстрактных признаков (края → текстуры → паттерны → части объектов → объекты). Возникает вопрос: является ли эта способность чисто эмпирическим феноменом, или за ней стоит некий неизвестный «закон организации признаков», подобный закону для простых чисел? Существует ли для пространства визуальных концепций своя «критическая линия» — фундаментальное ограничение, диктующее, какие иерархии признаков устойчивы, обобщаемы и эффективно вычислимы?

Работа структурирована вокруг трех центральных тем, исследуемых через призму этой аналогии:

Читать далее

DataHub + MCP: подключаем ИИ к управлению метаданными

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

Чем больше данных в компании, тем критичнее становится понимание того, где именно они хранятся и как изменяются при обновлениях. В «Островке» мы пользуемся дата-каталогами, но в какой-то момент решили пойти чуть дальше: объединили DataHub с генеративным ИИ через Model Context Protocol, чтобы сделать работу с метаданными более интерактивной и быстрой.

Теперь сотрудники могут получать развернутые ответы на сложные вопросы о таблицах, lineage и зависимостях данных, не тратя часы на ручной поиск и согласования. Получилась не просто автоматизация рутинных задач, а, по сути, инструмент self-service аналитики.

Под катом делимся опытом внедрения связки DataHub + MCP, рассказываем об архитектуре решения и показываем реальные примеры, как ИИ становится практическим помощником в управлении метаданными.

Читать далее

построение интеллектуальной системы вопросов и ответов и корпоративной базы знаний на базе StarRocks + DeepSeek

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

Типовые сценарии на базе StarRocks + DeepSeek. DeepSeek: генерация качественных эмбеддингов и ответов, StarRocks: высокоэффективный векторный поиск и хранение.Вместе они образуют основу для точных и масштабируемых AI‑решений.

Читать далее

Инструменты и методы синхронизации данных из распространенных СУБД в StarRocks

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

В статье разберем, как синхронизировать данные из Oracle, MySQL, SQL Server, PostgreSQL, Kafka и MongoDB в StarRocks. Сравним Flink+CDC+SMT, DataX, Routine Load и Python по применимости, ограничениям и удобству эксплуатации, а также дадим рекомендации по выбору под разные сценарии.

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