Sandbox DB: универсальная песочница для погружения в Big Data, аналитику и визуализацию

Запускайте PostgreSQL, ClickHouse, Airflow, Superset и другие инструменты одним кликом: учите, экспериментируйте, осваивайте новое!
Обсуждаем вопросы сбора и подготовки данных
Запускайте PostgreSQL, ClickHouse, Airflow, Superset и другие инструменты одним кликом: учите, экспериментируйте, осваивайте новое!
Вопрос, чем заменить Power BI, стал актуален для многих пользователей одной из самых популярных BI-платформ. С точки зрения синтаксиса DAX и удобства работы с моделью данных наиболее очевидной альтернативой является Visiology. Но у этой платформы до недавнего времени не было своего ETL-инструментария. Недавно вендор представил свой Self-Service ETL, и у меня возник логичный профессиональный интерес к его тестированию. В этой статье я делюсь своими исследованиями возможностей SS ETL от Visiology по сравнению с Power Query.
Привет, Хабр! Я Павел Куницын, главный специалист по анализу данных и машинному обучению в ПГК Диджитал. Мы занимаемся разработкой цифровых продуктов в сфере железнодорожных грузоперевозок: интерактивной карты вагонного парка, оптимизатора ремонтов и других решений. В большинстве из них мы применяем машинное обучение.
О том, как мы подходим к этому, я и мои коллеги рассказываем в нашем блоге на Хабре. Например, мы работаем с MLflow, который помогает анализировать результаты и вести учет экспериментов. Но несмотря на доступную автоматизацию, на этапе экспериментов могут возникать определённые сложности. Расскажу о наиболее частых проблемах.
Давайте представим стратегию, зародившуюся в военной сфере, где команды притворяются врагами друг друга, чтобы проверить оборонительные механизмы. Этот подход, известный как red teaming, оказался чрезвычайно ценным и теперь нашёл новое применение. Сегодня, когда искусственный интеллект занимает всё больше места в нашей повседневной жизни, использование метода red teaming для тестирования этих систем становится необходимым. Red teaming для моделей-LLM помогает убедиться, что они не только эффективны в работе, но и безопасны и надежны.
Всем привет! Меня зовут Саттар Гюльмамедов и я работаю в команде ETL платформы DataOps в МТС. Марк Твен как-то написал «Слухи о моей смерти сильно преувеличены» — про Big Data сейчас можно сказать то же самое. Волна хайпа, которую многие пытались оседлать, прошла. Но, как и значительная часть инженерных достижений, работа с большими данными стала рутиной, помогающей развиваться другим направлениям в ИТ.
В экосистеме МТС мы строим для Big Data отдельную платформу, где есть инструменты для хранения и оценки данных, анализа и построения отчетов. Но все начинается с их загрузки и обработки. Получение и преобразование данных — как раз задача библиотек и сервисов, которые делает моя команда. Многие знают мем о перекладывании JSON. А мы как раз делаем инструменты для тех случаев, когда такие задачи уже не столь тривиальны и нужно разобраться с разными типами данных, разными структурам, хранящимися к тому же в разных форматах, и все это нужно сделать в рамках одного процесса.
В этом материале я расскажу про наши решения и условия, лежащие в их основе. Одним наш опыт поможет спланировать эволюцию своих инструментов, другим снимет страх перед сложным стеком технологий Big Data, а третьи просто развлекутся.
Дисклеймер:
чтобы не отклоняться от темы, я не буду подробно описывать концепции ETL и ELT (они хорошо разобраны тут, тут и тут). Наши инструменты следуют парадигме «E[TL]+», т. е. позволяют выполнять трансформации данных как в процессе переноса, так и в целевом хранилище.
Про нашу платформу в общих чертах писал мой коллега Дмитрий Бодин в своей публикации «Customer Happiness: как не только разработать, но и внедрить новый продукт внутри крупной компании». Я продолжу начатый им рассказ и добавлю подробностей о компоненте ETL, его составляющих и нашей команде.
Поделюсь с коллегами практикой создания Docker-сборок на базе Spark разных версий, которые могут запускаться как Spark Kubernetes Executors для параллельного выполнения Spark-задач в кластере.
В нашем конкретном случае сборки включают Pyspark и Cassandra Connector, однако вы можете использовать этот материал как набор практических примеров, чтобы сконструировать собственные Docker-сборки для Spark на другом стеке или с другими приложениями.
В рамках поставленной задачи мне понадобилось подготовить, как минимум, пару Docker-сборок: одну для поддержки легаси кода и другую вполне современную для последующей миграции. Ниже я расскажу об этапах создания таких Docker-сборок, погружаясь в детали по ходу дела.
Когда новичок пытается построить свою первую вопросно-ответную LLM систему, он быстро узнаёт, что базовый RAG - это для малышей и его нужно "прокачивать" модными техниками: Hybrid Search, Parent Document Retrieval, Reranking и десятки других непонятных терминов.
Глаза разбегаются, наступает паралич выбора, ладошки потеют.
А что, если попробовать их все?
Я решил потратить на подготовку к соревнованию 200+ часов и собственноручно проверить каждую из этих методик.
Получилось настолько удачно, что я выиграл конкурс во всех номинациях.
Теперь рассказываю, какие техники оказались полезными, а какие нет, и как повторить мой результат.
Итак, у нас есть данные, и есть требования к ним. От кого? От тех, кто будет ими пользоваться. Если те, кто ставит задачу говорят что "данные плохие" и не могут сформулировать критерии к качеству данных, им можно их подсказать, подсмотрев в предыдущей статье. Таким образом, управление качеством данных - это, в первую очередь, методология, которая обеспечивает некий уровень качества в отношении выбранных данных.
Управление качеством данных - это постоянный процесс. Да, для начала неплохо разобраться с уже имеющимися данными, но наша задача сделать так, чтобы все новые данные, попадающие в систему, проверялись, валидировались, насыщались и, в итоге, соответствовали предъявляемым к ним требованиям. Управление качеством, кстати, является важной частью управления Нормативно-Справочной информацией, MDM (Master Data Management).
Как же сделать так, чтобы данные попадали в системы уже "чистыми"? Думаю, что самый оптимальный способ - это правильно настроить поля ввода, не допуская ввод заведомо некорректный значений, а также предлагать автозаполнение по возможности: например, выбор адреса доставки предлагать из КЛАДР, а данные о компании автоматически заполнять используя специальные сервисы. Таким образом, и людям надо будет вводить меньше информации, и вероятность ошибки будет гораздо меньше.
При подготовке статьи что главное? Источники! А что может быть источником надежнее, чем стандарты ISO? Давайте посмотрим, есть ли стандарты "качества данных"? Есть! ISO/TS 8000 и даже соответствующий ГОСТ 56214. Что ж, читаем определения:
3.1.3
качество
(quality): Степень соответствия совокупности присущих характеристик объекта требованиям (3.1.2).
Примечания: 1 Термин "качество" может применяться с прилагательными, такими как "плохое", "хорошее" или "превосходное".
Так. Хватит ГОСТов на сегодня. Итак, есть данные, у них есть качество - характеристика, показывающая степень пригодности данных к использованию, и которое может быть "плохим", "хорошим" или "превосходным". На самом деле, есть 7 основных качественных характеристики: точность, полнота, непротиворечивость, достоверность, своевременность, уникальность и доступность.
В статье описан алгоритм обсчета когортного анализа по датасету транзакций платежей пользователей с реализацией на Python.
Привет! Меня зовут Кирилл Сергеев, я ML-инженер в Циане. В этой статье я расскажу, как мы решили задачу дедупликации объявлений о недвижимости, разработав систему на основе трёх моделей. Эта система автоматически находит и объединяет дублирующиеся объявления, помогая пользователям видеть только актуальную и уникальную информацию.
Материал будет полезен ML-инженерам и специалистам по обработке данных, которым интересно, как мы подошли к решению этой задачи: какие методы использовали, какие проблемы возникли и как мы их преодолели.
Что такое «Каталог Данных»? Это список «чистых» и готовых к использованию данных, которые можно использовать для интеграции или формирования витрин данных – Datamart для построения отчетности или дашбордов, или для предоставления аналитикам и бизнес-пользователям («Гражданским Аналитикам») для самостоятельно (Self-Service) аналитики, когда они смогут самостоятельно построить необходимую им отчетность, не прибегая к помощи специалистов по управлению данными или, тем более, ИТ-отдела, для которого управление данными и разработка отчетности явно не является приоритетной задачей.
Каталогизация данных, в свою очередь предполагает наличие программного продукта для хранения списка каталогизированных данных и их описания (метаданных) — «Каталога Данных».
Но дело в то, что еще до формирования каталога данных и проектов по очистке данных должны быть другие проекты: в первую очередь я говорю про бизнес-глоссарий, в котором бизнес расписывается кровью, что означает тот или иной показатель.
Если говорить про Data Governance, то это, в первую очередь, не продукты, а огромная методология управления жизненным циклом данных, и только потом – технологии. Близко к идеалу считается методология DAMA-DMBOK, и у любого специалиста по данным это должна быть настольная книга. К сожалению, в подавляющем большинстве случаев, когда люди начинают задумываться про управление данных, она попросту неприменима, так как она показывает «правильное» управление данными больших предприятий, до неё еще надо «дорасти», при этом точечно применяя сначала простые приемы, с возможностью расширения методик управления данными как «вширь», на другие отделы, так в «вглубь» на все процессы, связанные с управлением данными (Data Management): получением («добычей»), обработкой, хранением, извлечением и использованием информации. Без подобного управления жизненным циклом данных получим картину как в последнем исследовании Makves, что 40% данных никогда не используется: к ним не зафиксировано ни одного обращения за 5 лет.
Найти «Ценность в данных» становится искусством, так как на предприятии растут «Кладбища данных» вместо «Хранилищ данных».
Сейчас зачастую под Data Governance имеют в виду две части, это Data Quality – управление качеством данных, и Data Linage – «понять, откуда пришли данные, как они изменялись и можно ли им доверять». Если данные методологии использовать «в лоб», то это очень сильно замедлит разработку и перегрузит команду по управлению данными.
Суть моего труда заключается в том, чтобы определить функцию для нахождения n-ого числа Фибоначчи с линейной сложностью поиска. Вот какие методы я попробовал:
Возможно получится по простым данным постоить полином большой степени, используя метод неопределённых коэффициентов и использовать его для подсчёта последующих значений последовательности.
Воркшоп для тех, кто впервые сталкивается с распределёнными системами.
В этой статье на примере решения несложного архитектурного кейса я покажу, что ответов только на 3 вопроса при проектировании систем распределённой параллельной обработки данных будет достаточно для обеспечения жёстких нефункциональных требований.
Хабр, привет! Современные высоконагруженные системы требуют точной настройки и регулярного мониторинга, чтобы обеспечить стабильную производительность в условиях постоянно растущих объёмов данных. Когда речь идёт о крупной аналитической базе данных, развёрнутой в облачной среде, оптимизация её работы становится критически важной задачей. В прошлой статье мы уже рассказывали о типичных ошибках при работе с Arenadata DB (ADB), о том, как их избежать и значительно повысить производительность кластера. Сегодня же поделимся реальным опытом на примере компании «Комус» — лидера в области B2B-ритейла, которая обратилась к Arenadata за проведением комплексного аудита своего кластера ADB.
В этой статье мы детально разобрали, как с помощью анализа и оптимизации удалось выявить точки роста, подготовить кластер к текущим и будущим нагрузкам и предложить план улучшений. Мы рассмотрим технические детали аудита, проблемы, с которыми пришлось столкнуться, и эффективные практики, позволившие повысить производительность аналитической базы данных.
В 2022 году я присоединился к команде Газпромбанка в должности дата-инженера. В мои обязанности входила поддержка витрин данных для машинного обучения. Главной проблемой, с которой мне пришлось столкнуться, оказалось непомерно долгое время обработки данных при использовании устаревших скриптов. Например, расчет среза одной из витрин занимал более суток! Причина крылась в неоптимизированных скриптах, которые изначально разрабатывались для гораздо меньших объемов данных. Со временем объем обрабатываемой информации значительно увеличился, что закономерно привело к драматическому ухудшению производительности. В этой статье поделюсь своим опытом решения проблемы и расскажу о подходах, которые помогли сократить время выполнения с суток до нескольких часов.
Данная проблема возникла у меня, когда мне нужно было уехать загород на несколько недель, при этом во время отъезда нужно было отправить сообщение в ВК, а доступа в интернет я не имел бы. Поискав информацию в интернете, я ничего не смог найти про отложенные сообщения в ВК, поэтому у меня остался только один вариант - придумать как реализовать свои отложенные сообщения для ВК.
Как рекламодатели определяют, что вы – тот же пользователь на разных сайтах? Почему одна реклама «следит» за вами, а другая исчезает бесследно? Все дело в синхронизации идентификаторов между SSP и DSP – сложном, но крайне важном процессе, который влияет на точность таргетинга и стоимость рекламы.
В статье мы разберем, как работает этот механизм, какие проблемы он решает и почему его роль становится критически важной в эпоху блокировки сторонних cookie. Узнайте, какие технологии помогают маркетологам обходить ограничения браузеров и повышать эффективность рекламных кампаний.