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

Data Engineering *

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

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

Построение потоковой stateful обработки данных на Akka

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

В одном из исследовательских проектов нам с коллегами пришла идея совместить Akka Stream, Akka event sourcing (typed persistence) и Akka cluster sharding для реализации stateful stream processing. На мой взгляд, получилось достаточно интересное и лаконично решение, которым я бы и хотел с вами поделиться.

Читать далее

Spark Structured Streaming graceful shutdown — Что в этом сложного и как это правильно делать?

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

И почему shutdown требует отдельной статьи, а не вызова метода stop

Ну начну с того, что за метод stop такой.

Из документации, существует 2 метода которые собственно отвечают за остановку Structured stream.
query.stop() // Остановить запрос(stream)query.awaitTermination() // заблокировать пока запрос(stream) не прекратиться по причине вызова stop() или ошибки

Уже только по наличие 2ух методов мы может догадаться что метод stop() асинхронный. Что лично меня навело на мысль, что ни какой проблемы нет и graceful shutdown иметься из коробки.

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

Останавливает выполнение этого запроса если он активен. Вызов блокируется до того как прекратиться выполнение query execution threads или по timeout(время не не выйдет, время задается в конфигурации).

И вот тут опытный Java/Scala разработчик по идее должен был напрячься.

Какой то Thread, уж больно напоминающий java thread по названию, прекратиться по сигналу. Да и в добавок к этому еще один, дополнительный, метод который ждет завершения. Это же thread.interupt() скажите вы, и будете правы - так что ни про какой graceful вообще речь идти не может.

Что же делать?

Над чем задуматься перед тем, как брать ML-задачу в работу

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

В Контуре мы решаем самые разные задачи с помощью машинного обучения: распознаем документы и ищем подделки паспортов, анализируем банковские транзакции, предсказываем вероятность банкротства компаний, классифицируем товары, автоматически отвечаем на вопросы в чате, развиваем собственный speech-to-text… и еще десятки проектов, которые привносят в продукты новые фичи или помогают оптимизировать процессы.

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

В этой статье я приведу ответы на вопросы, над которыми стоит задуматься в самом начале, если вдруг вам пришла в голову идея "прикрутить к проекту ML-фичу" (добавить ложечку Data Science / AI / другие модные названия).

Читать далее

Открыта регистрация на митап про DataScience 29 июля

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

29 июля Ростелеком проведет митап, посвященный искусственному интеллекту, науке о данных и машинному обучению. Встреча будет интересна специалистам в управлении данными, CDO, а также представителям бизнеса и ИТ-специалистам смежных направлений.

Участники узнают, как запускались решения Data Science в Ростелекоме, Газпромбанке, «Леруа Мерлен» и «Утконос online». В конце встречи состоится круглый стол, посвященный промышленным подходам к продвинутой аналитике.

Программа, спикеры и ссылка на регистрацию под катом.

Читать далее

«От категорий к векторам» или нестандартное кодирование категориальных данных. Часть 1

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

Привет, Хабр! С вами Артём, аналитик больших данных МегаФона. На работе занимаюсь рекомендательными системами и интересуюсь NLP. Эти две вещи и привели меня к рассматриваемой тут теме, так что садитесь поудобнее, и поехали. Кстати, к статье прилагается код, ищите ссылки внутри.

В путь

Пять правил эффективной организации хранилища данных

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

Хаос — естественное состояние Вселенной. В закрытых системах постепенно растет энтропия, и этого не изменить. Хранилище данных по своей природе тоже тяготеет к хаосу, но можно поддерживать в нем порядок.

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

Читать далее

История длиною в год: как мы на Greenplum 6 (DWH) мигрировали

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

Привет, Хабр! Сегодня расскажем о том, почему и как мы решили мигрировать на Greenplum шестой версии с Greenplum пятой версии. Сразу скажем, что мы каждый день обрабатываем огромное количество данных — шутка ли, у одного из наших клиентов 80 млн пользователей, из которых каждый день активны до 90 тысяч из 178 стран.

Читать далее

Как и зачем мы сделали Spark-коннектор к Greenplum

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

Всем привет! Меня зовут Андрей, я работаю системным архитектором в Arenadata. В этой статье расскажу, как и зачем мы сделали свой инструмент для обмена данными между Arenadata DB (аналитическая MPP-СУБД на базе Greenplum) и фреймворком для распределенной обработки данных Apache Spark (входит в экосистему Arenadata Hadoop).

Читать далее

Как мы анализировали на хакатоне схемы севооборота

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

Привет, Хабр! Периодически мы делаем посты о проектах наших студентов магистратуры «Наука о данных» НИТУ МИСиС и Zavtra.Online — подразделения SkillFactory по работе с университетами, эти проекты создаются на внутренних хакатонах. Ребята уже за неделю собирали датасеты по коммерческим объектам, музыкальным трекам, вакансиям и даже котикам, пробовали кластеризовать транспорт и побеждали букмекеров с помощью ИИ. Сегодня делимся новым учебным проектом наших студентов об анализе схем севооборота. Далее речь идёт от лица команды.

Читать далее

Эволюция данных: от больших к бесконечным

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

“Блиц, блиц, скорость без границ!” - помните этого очень смешного и очень н-е-е-е-с-п-е-ш-н-о-г-о ленивца по имени Блиц из мультфильма Зверополис? Он всплывает в памяти всякий раз, когда мы сталкиваемся с чьей-то медленной работой или реакцией. На самом деле Блицу требовалось всего 10 секунд на каждую фразу или операцию. Согласитесь, 10 секунд - не так уж и много. В реальной жизни нам часто приходится ждать куда дольше и ожидание выглядит совсем не так смешно. Ждать - неприятно и очень дорого. 

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

Читать далее

Хранилище комплексных данных о клиентах и его синхронизация с Hubspot при помощи BigQuery, dbt, Looker и Hightouch

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

Компания Rittman Analytics — партнер по внедрению сегментного подхода в маркетинге. С помощью сервисов Segment Personas и Segment Connections мы соединяем все элементы цифрового маркетинга и формируем единую картину взаимодействия с клиентами и посетителями для задействованных цифровых каналов.

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

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

Читать далее

Обзор Databrick. Что облачный продукт может дать начинающим специалистам

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

Добрый день, уважаемые читатели! Данная публикация посвящена Databricks и она получилась не совсем обычный по двум причинам.

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

Во-вторых, чтобы обзор продукта был максимально комплексным и технически взвешенным я с самого начала планировал написать материал в соавторстве с инженером данных и специалистом в сфере data science. В таком случае была бы возможность донести до читателей концепцию Delta Lake и рассказать о нюансах машинного обучения. Но предложение не нашло отклика в сердцах коллег по цеху, поэтому итоговый результат получился в стиле: “Я художник - я так вижу!”) Это была преамбула, а теперь настало время познакомиться поближе с Databricks.

Читать далее

Большая подборка телеграмм-каналов для аналитиков

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

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

Можно, конечно, подписаться на «стоковые» группы и каналы, которые каждый день публикуют по 10-20 постов с «полезным» материалом. Но, признайтесь, это просто самообман: во-первых, столько информации в день просто невозможно пропустить через себя - это только и надо, что статьи читать, а есть же еще работа/учеба. Во-вторых, «полезность» этих статей сомнительна - не каждый пост от умного индуса можно считать полезным, увы :(

Так как же быть? Ответ прост - читать авторские каналы, где реальные специалисты делятся информацией, которую они для себя считают полезной!

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

Сохраняйте себе и подписывайтесь на ребят - они это точно заслужили! :)

Читать далее

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

Общего решения из коробки — нет, или Тестируем PySpark MLlib

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

Андрей Гаврилов работает в компании EPAM software инженером и занимается data-инженерными задачами. Пишет на Python, работает с Big Data и изучает Data Science — потому что невозможно заниматься Big Data на Python, не касаясь при этом Data Science.

И однажды он захотел выяснить, насколько модуль Spark, связанный с machine learning —  рабочий. Имеет ли  смысл его применять, когда мы мигрируем какое-то решение — например, Scikit-learn — на Spark. На конференции Russian Python Week 2020 он рассказал о своем эксперименте, а сегодня — самая суть для вас.

Обозначим задачу: есть пайплайн, написанный с привычными для Data Scientist фреймворками типа Scikit-learn. Это нужно перенести в кластер Spark’а. Посмотрим, в чем тут может быть проблема. 

Читать далее

Ломай дату полностью: сравниваем подходы к качеству данных у крупных компаний (Lyft, Shopify) на Data Quality Meetup

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

Привет, Хабр! Современный высокотехнологичный бизнес немыслим без глубокой аналитики и отработки гипотез с помощью ML. Однако это накладывает особые требования на качество данных: все мы знаем, что ерунда на входе = ерунда на выходе. Прекрасно понимая, что стоит на кону у большого бизнеса, мы организовали большой митап, посвящённый подходам к качеству данных в больших компаниях уровня Lyft и Shopify. 

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

Далее краткий пересказ докладов Datafold, Lyft, Shopify и HealthJoy. Текст будет интересен в первую очередь дата-инженерам и тем, кто обеспечивает хранение, предоставление и тестирование данных.

Заходите

Интеграционные тесты для Хранилища Данных – Настраиваем Slim CI для DWH

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

Привет! На связи Артемий – Analytics Engineer из Wheely.

В условиях постоянно растущей сложности аналитических инструментов и распределенной команды не просто возможно, но и необходимо повышать скорость поставки (T2M) и качество (Quality) выводимого в продуктив функционала. Фокус сегодняшней публикации – внедрение практик интеграционного тестирования с учетом современного аналитического стека.

С практическими примерами и рекомендациями будут рассмотрены следующие аспекты:

– Специфика аналитических приложений и пространство для DevOps практик

– Рецепт для внедрения Continuous Integration шаг за шагом

– Slim CI: оптимизируем и ускоряем процессы

Велком под кат, если словосочетания Continuous Integration, Integration Testing, Time to Market вызывают у вас здоровый энтузиазм и интерес.

Поехали!

[Dota 2] Предсказание победителя матча в live с помощью машинного обучения

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

Привет! На связи zmax505, я бы хотел рассказать о своём опыте по созданию проекта по MOBA игре Dota 2. Мы с iory разработали модель машинного обучения, которая анализирует матч в live и на основе различных данных предсказывает предполагаемого победителя встречи.

Читать далее

Что такое базовые методы компрессии нейронных сетей и где этому учат

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

Сегодня нейросетевые подходы составляют большую часть решений задач в области компьютерного зрения, но при этом работа инженеров в этой области не ограничивается обучением state-of-the-art архитектур на своих данных. Часто такие задачи требуют анализа видео или фотографий в режиме реального времени или с минимальной задержкой на конечных устройствах без возможности горизонтального масштабирования. Это может быть редактирование фотографий на смартфонах или же анализ качества продукции на производстве с помощью микрокомпьютеров. 

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

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

Мы можем оптимизировать следующие показатели:

Узнать про оптимизацию!
Если вы попытаетесь найти перевод термина Data Scientist на русский язык, то, скорее всего, увидите что-то вроде «аналитик базы данных», или «специалист по анализу данных», или даже «программист-аналитик». По сути это логическая ловушка, потому что, в зависимости от ситуации, это могут быть как один человек, так и три разных отдела. Мы со Сбером решили расставить точки над «i» в этой теме и узнать, как именно вы представляете себе работу Data Scientist’а. Понять, как всё устроено конкретно у вас на рабочем месте, и выяснить, какие роли могут скрываться за общим термином Data Science. Результаты опроса мы подведём в отдельном посте, так что следите за обновлениями.
А пока поехали!

Следующий этап: построение конвейера данных от периферии до аналитики

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

В данной статье рассматриваются данные о производстве, эксплуатации и продажах продукции производителя подключенных транспортных средств. Эти данные проходят разные этапы и преобразования, которые обычно характерны для крупной производственной компании, находящейся на переднем крае современных технологий. В рамках блога мы будем рассказывать о вымышленной компании по производству подключенных транспортных средств (электромобилей) - The Electric Car Company (ECC). Для этого ECC использует платформу данных Cloudera Data Platform (CDP). Она применяет Cloudera Data Platform  для прогнозирования событий и контроля процесса производства автомобилей на своих заводах по всему миру.

Читать далее