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

Data Engineering *

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

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

Специфические задачи Data Science в Банке

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

В течение последних пяти лет я проработал в Управлении Валидации моделей машинного обучения (machine learning, ML) в крупном банке и видел много «узких мест», которые возникают при разработке и валидации моделей.

В этой статье сначала предполагал рассмотреть основные информационные системы некоторого абстрактного Банка X, поскольку именно на базе уже сложившихся информационных систем строится работа дата-аналитиков, а также обучаются и работают ML-алгоритмы принятия решений. Но, когда начал писать, вдруг обнаружил, что на самом деле намного интереснее обсудить ряд тем и подзадач, которые всплывают при построении и валидации самых базовых моделей Банка, то есть моделей кредитного риска.
Читать дальше →

Apache Spark на Kubernetes: чем полезен Apache YuniKorn

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

Apache Spark на Kubernetes: чем полезен Apache YuniKorn 

Хотя Apache Spark предоставляет множество возможностей для разнообразных сценариев применения, его использование сопряжено с дополнительной сложностью и высокими затратами на обслуживание и администрирование кластера. В планировщике Kubernetes по умолчанию есть пробелы с точки зрения эффективного развертывания пакетных рабочих нагрузок на том же кластере, где также планируется длительная работа других сервисов. Для пакетных рабочих нагрузок из-за требуемого параллелизма вычислений в основном должно планироваться совместное и гораздо более частое выполнение. В этой статье мы подробно рассмотрим некоторые из этих пробелов и исследуем преимущества использования Apache YniKorn вместо стандартного планировщика.

Читать далее

ESP 8266: отправка данных на сайт методом Get запроса

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

Привет! Это мой первый пост здесь! Решил его написать, чтобы облегчить путь всем начинающим знакомство с ESP 8266. Много времени потратил чтобы разобраться с этой темой и что-то началось получаться. Изначально я отправлял данные в таблицу Googlesheets (об этом надо написать отдельный пост). Но потом захотелось сделать опорный проект - заготовку для дальнейшего развития. Итогом стала данная статья.

Итак, у нас есть ESP-01.

Read more

Как строилась Data-практика в EPAM

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

Компания EPAM давно работает с данными, первые крупные заказчики с проектами по Big Data появились в далёком 2001 году. В то время известные аналитические компании Gartner и Forrester, а также крупные поставщики Oracle, Microsoft и IBM отмечали, что компании должны двигаться в сторону Big Data, поскольку эти технологии незаменимы во всех областях, связанных с обработкой больших объёмов данных. С того времени команда экспертов EPAM постепенно росла, работая над всё более сложными проектами и предлагая проверенные решения и качественные продукты для работы с большими данными. Сегодня только в российском EPAM более 500 человек работают в Data-практике. О том, как всё начиналось, какие проекты встречались, какие провалы случались, к чему должны готовиться Data-специалисты и о том, какие вообще бывают Data-специалисты, я поговорила с руководителем Data-практики EPAM в России — Ильей Герасимовым

Читать далее

Повторяем когортный анализ. Комплексный подход — Python, SQL, Power BI

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

Добрый день уважаемые читатели! Данная статья является продолжением публикации "Повторяем когортный анализ, выполненный в Power BI, силами Python" (ссылка). Настоятельно рекомендую познакомиться с ней хотя бы бегло, иначе последующее повествование будет вам малопонятным. С момента ее выхода на Хабр прошло достаточно времени. Я основательно пересмотрел методологию решения подобных задач. Первым желанием было просто переписать старый материал, но после недолгих размышлений я пришел к выводу, что более разумным шагом будет оформить наработки в новую рукопись.

Какова основная причина моего "недовольства" Python и Power BI? Язык Python/R c тематическими библиотеками и Power BI (Tableau, Qlik) могут на 70-80% закрыть потребности бизнеса в расчете сложных метрик и построении визуализаций. Но только если речь идет об обработке относительно небольших датасетов с уже агрегированными данными. Если мы говорим о предварительном манипулировании данными в промышленном масштабе, то здесь игра переходит на сторону сервера с БД и используется SQL. Данный момент я не осветил в предыдущей публикации, поэтому решил ликвидировать это упущение здесь.

Читать далее

Нужно больше датасетов. Музыка, IT-скилы и котики

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

Привет, Хабр! Совсем недавно мы писали про открытый датасет, собранный командой студентов магистратуры «Наука о данных» НИТУ МИСиС и Zavtra.Online (подразделение SkillFactory по работе с университетами) в рамках первого учебного Дататона. А сегодня представим вам целых 3 датасета от команд, которые также вышли в финал.

Все они разные: кто-то исследовал музыкальный рынок, кто-то – рынок труда IT-специалистов, а кто-то и вовсе домашних кошек. Каждый из этих проектов актуален в своей сфере и может быть использован для того, чтобы что-то усовершенствовать в привычном ходе работы. Датасет с котиками, например, поможет судьям на выставках. Датасеты, которые необходимо было собрать студентам, должны были представлять собой MVP (таблица, json или структура каталогов), данные должны быть очищены и проанализированы. Посмотрим же, что у них получилось.

Приятного чтения!

SQL для аналитики — рейтинг прикладных задач с решениями

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

Привет, Хабр! У кого из вас black belt на sql-ex.ru, признавайтесь? На заре своей карьеры я немало времени провел на этом сайте, практикуясь и оттачивая навыки. Должен отметить, что это было увлекательное и вознаграждающее путешествие. Пришло время воздать должное.

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

Читать далее

Почему ваши приложения Spark работают медленно или выходят из строя

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

Вторая часть нашей серии «Почему ваши приложения Spark медленно работают или выходят из строя» следует за первой частью об управлении памятью и посвящена вопросам, возникающим при искажении данных и очистки памяти в Spark. Как и многие другие проблемы, связанные с производительностью Spark, симптомы нарастают по мере увеличения объема данных, обрабатываемых приложением.

Читать далее

Что такое фильтр Блума?

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

Всем привет! В этой статье я постараюсь описать, что такое фильтр Блума, рассказать о его назначении и показать сценарии, в которых его можно использовать. Я также реализую фильтр Блума на Python с нуля в целях облегчения понимания его внутреннего устройства.

Фильтр Блума. Что это?

Рецепт обучения нейросетей

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

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

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

Читать далее

Развертывание нескольких моделей машинного обучения на одном сервере

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

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

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

Чаще всего в таких случаях для развёртывания моделей пишут службу Flask и помещают её в контейнер Docker. Примеров одномодельных серверов машинного обучения очень много, но когда дело доходит до развёртывания нескольких моделей, у разработчика остаётся не так много доступных вариантов для решения проблемы.

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

Читать далее

Почему ваши Spark приложения медленно работают или не работают вообще. Часть 1: Управление памятью

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

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

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

В этой серии статей я хочу рассказать о некоторых наиболее распространенных причинах, по которым приложение Spark выходит из строя или замедляется. Первая и наиболее распространенная — это управление памятью.

Если бы мы заставили всех разработчиков Spark проголосовать, то условия отсутствия памяти (OOM) наверняка стали бы проблемой номер один, с которой все столкнулись. Это неудивительно, так как архитектура Spark ориентирована на память.

Некоторые причины OOM:

Need for speed. Пакетная обработка данных с TiSpark

Время на прочтение7 мин
Количество просмотров1.4K
TiSpark – это подключаемый модуль Apache Spark, который работает с платформой  TiDB  и отвечает на запросы сложной интерактивной аналитической обработки (OLAP). Этот плагин Spark широко используется для пакетной обработки больших объёмов данных и для получения аналитических инсайтов. Я старший архитектор решений в PingCAP и бывший разработчик TiSpark. В этом посте я объясню, как он работает и почему TiSpark лучше традиционных решений для пакетной обработки.

Приятного чтения!

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

Как предотвратить появление неверных данных в ваших идеальных конвейерах

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

Для команд специалистов DS сломанные конвейеры данных, шаткие информационные панели и пожарные учения в 5 часов утра – это норма, особенно потому, что рабочие процессы принимают всё больше и больше данных из разрозненных источников. Черпая вдохновение в разработке программного обеспечения, мы называем это явление простоем данных – но как упреждающе, в первую очередь предотвратить появление плохих данных?

В этой статье я поделюсь тремя ключевыми стратегиями, которыми пользуются некоторые лучшие компании Data Science, чтобы восстановить доверие к своим данным.
Приятного чтения!
Представьте, что у вас есть персональный ассистент, который работает круглые сутки, помогает следить за вашим самочувствием, рассказывает о возможных рисках для здоровья и подбирает индивидуальные рекомендации для физического и психологического благополучия. В Беларуси разрабатывают приложение Flo, которое должно стать таким помощником для женщин, и им уже пользуются 150 млн человек по всему миру. Постепенно к команде разработчиков присоединились люди из Литвы, Нидерландов, Великобритании и США. Под катом — история о том, как сделать целостное приложение о женском здоровье с искусственным интеллектом и вывести его на 1-ю строчку в категории «Здоровье и фитнес».
Читать дальше

Организуем платформу обработки потоковых данных из Kafka, Spark и Greenplum

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

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

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

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

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

EventNative – простой инструмент для записи потока событий в ClickHouse

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

Данные стали бесценным активом, позволяющим компаниям лучше понимать своих пользователей, прогнозировать их поведение и определять тренды. EventNative – проект с открытым исходным кодом, разработанный командой из Jitsu, который позволяет упростить сбор данных. EventNative поддерживает работу с несколькими хранилищами данных, и ClickHouse – одно из них.

В этой статье мы расскажем как настроить EventNative с ClickHouse, а также в ней приводятся советы по эксплуатации и повышению производительности и надежности.

Читать далее

Руководство по столбчатым форматам файлов в Spark и Hadoop для начинающих

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

Что из себя представляет «столбчатый формат файла»?

Этот термин часто используется, но я не уверен, что всем до конца ясно, что он означает на практике.

Определение из учебника гласит, что столбчатые (колоночные, многоколоночные, columnar) форматы файлов хранят данные по столбцам, а не по строкам. CSV, TSV, JSON и Avro — традиционные строковые форматы файлов. Файл Parquet и ORC — это столбчатые форматы файлов.

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

Читать далее

Аналитический движок Amazon Redshift + преимущества Облака

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

Аналитический движок Amazon Redshift + преимущества Облака


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


На связи Артемий Козырь из команды Аналитики, и я продолжаю знакомить вас с Wheely. В этом выпуске:


  • Основы гибких кластерных вычислений
  • Колоночное хранение и компрессия данных
  • Вместо индексов: ключи сегментации и сортировки
  • Управление доступами, правами, ресурсами
  • Интеграция с S3 или Даталейк на ровном месте
Читать дальше →

Как использовать функцию UNNEST в Google BigQuery для анализа параметров событий Google Analytics

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

Сегодня я расскажу о том, как использовать функцию `UNNEST` в Google BigQuery для анализа параметров событий и свойств пользователей, которые вы получаете вместе с данными Google Analytics.

Читать далее