Дерево выбора решения для «больших данных»

В настоящее время существует множество решений для хранения и анализа «больших данных» (Big Data). В этой статье мы рассмотрим упрощенное дерево выбора решения в зависимости от имеющихся требований.

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

Вот список наиболее важных продуктов, которые Майкрософт предлагает для использования в локальных центрах обработки данных (ЦОД) и в «облаке»: Analytics Platform System (APS), Apache HBase, Apache Spark, Apache Storm, Azure Data Lake Analytics (ADLA), Azure Data Lake Store (ADLS), Azure Document DB, Azure Stream Analytics (ASA), Azure SQL DB, Azure SQL DW, Hortonworks Data Platform (HDP), HDInsight, Spark Streaming и так далее. Как вы можете видеть, их достаточно много, поэтому требуется некоторый формальный способ выбора правильного решения для решения задач «больших данных».

«Большие данные» часто характеризуются как решение как минимум одной из трех проблем («3V»), поэтому выбор правильного решения зависит от того, какую из этих проблем мы пытаемся разрешить:

  • Объем данных (volume): требуется хранить и делать запросы к сотням терабайт данных и более, и объем данных постоянно растет. Система обработки данных должна масштабироваться, чтобы обрабатывать увеличивающийся объем данных, обычно за счет распределения нагрузки между множеством серверов.
  • Скорость (velocity): необходимо собирать данные в ускоренном темпе от различных типов устройств, от быстро растущего количества пользователей, а также от растущего количества устройств и приложений в расчете на пользователя. Системы обработки должны возвращать результаты в пределах небольшого промежутка времени, часто почти в реальном времени.
  • Разнообразие (variety): ситуация, когда данные не соответствуют какой-либо схеме данных – полуструктурированные или неструктурированные данные.

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

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

big-data-dt-rus-v1-08-2

Для решения одной из трех категорий задач больших данных предназначенные соответствующие группы решений:

  • Хранилища данных (ХД или DWH – Data Warehouse) – это центральные реляционные репозитории данных, загруженных из одного или более отличающихся источников данных. В них хранятся текущие и исторические данные, и они используются для различных аналитических задач в организациях. Используйте ХД если у вас есть структурированные реляционные данные с заранее спроектированной схемой данных.
  • Обработка сложных событий (Complex Event Processing, CEP) – это метод отслеживания и обработки потоковых данных из множества источников событий, метод идентификации наиболее значимых событий или их комбинации, и последующей выработки соответствующих заключений, а также способ быстрой реакции на эти события. Используйте «CEP» если вам нужно обработать сотни тысяч событий в секунду.
  • «NoSQL»-системы предоставляют механизм хранения и извлечения нереляционных данных. Характеристики «NoSQL»: простота структуры, горизонтальное масштабирование кластеров. Структуры данных используемые «NoSQL» базами данных (например, ключ-значение, широкие колонки, графы, документы) являются более гибкими, и поэтому их сложнее хранить в реляционных базах данных. Используйте «NoSQL» системы если у вас есть нереляционные, полуструктурированные или неструктурированные данные, и схема данных не определена.

Подробнее в следующих выпусках… (пока детализация доступна в английской версии статьи)

Регистрация на Хакатон по Azure ML

21-22 мая 2016 года пройдет очередная практическая конференция «Хакатон по Azure Machine Learning».

В течение двух дней Вы будете работать над:

  • прогнозированием остатков и оборота по кредитным картам клиентов одного из крупнейших банков;
  • решением реальных бизнес-задач других компаний.

У Вас будет уникальная возможность:

  • попробовать создать и развернуть аналитическое решение с помощью облачной службы машинного обучения Azure Machine Learning;
  • научиться применять R, Python или .NET в задачах машинного обучения с Azure ML;
  • обработать и визуализировать данные с помощью сервиса облачной аналитики Power BI.

Лучшие проекты получат ценные призы: смартфоны Nokia Lumia 640 и Nokia Lumia 930.

Место проведения: Москва, офис Майкрософт. ул. Крылатская 17/1

Стоимость участия: бесплатно.

Ссылка для регистрации

hackathon-ml

10.03.2016. Презентация платформы данных на базе SQL Server 2016

10 марта 2016 года состоится онлайн-трансляция мероприятия из Нью-Йорка, в рамках которого генеральный директор Microsoft Сатья Наделла и другие руководители корпорации презентуют новый SQL Server 2016 и расскажут о том, как с помощью анализа данных компании трансформируют свой бизнес и отрасль в целом.

У вас есть также возможность принять очное участие в презентации платформы управления данными на базе SQL Server 2016, которая пройдет 10 марта в 7 офисах Microsoft:

sql2016pres

Обновление (11.03.2016): запись события на русском языке доступна по ссылке.

02.03.2016. Встреча Advanced Analytics User Group

Приглашаем Вас принять участие во встрече Advanced Analytics User Group по теме «Предварительный анализ и очистка данных. Отбор и создание признаков», которая пройдет 2-го марта в Microsoft Technology Сenter.

Предварительная обработка является важным этапом, позволяющим повысить качество данных, а следовательно, эффективность обучения и, следовательно, точность предсказания. На данной встрече мы разберем, как в Azure ML:

  • осуществлять предварительный анализ данных и пользоваться описательной статистикой
  • отфильтровывать или исправлять поврежденные данные
  • работать с неполными данными и «аутсайдерами»
  • создавать новые признаки, оценивать «полезность» признаков и преобразовывать их.

Вышеперечисленные возможности будут рассмотрены на примере заданий первого и второго Хакатона с использованием встроенных блоков (SQL Transformation и другие), а также с помощью блоков R script и Python script.

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

Дата: 2 марта 2016 г
Время: 17.00-20.00
Место проведения: МТС, ул. Лесная, 9 «Деловой Центр Белые Сады», 5-й этаж, аудитория «Патриаршие пруды»
Язык встречи: русский
Докладчик: Алексей Пешехонов

rubi-aa

Регистрация на Хакатон по Azure Machine Learning

28-29 ноября 2015 года пройдет практическая конференция «Хакатон по Azure Machine Learning». Конференция рассчитана на разработчиков и людей, понимающих математические модели, которые хотят научиться или продемонстрировать свои умения:

  • разрабатывать на R или Python;
  • анализировать и готовить данные к обработке;
  • показывать результаты в понятном виде.

В течение двух дней на конференции можно будет поработать над решением практических задач от партнёров Microsoft. При наличии вопросов можно будет посоветоваться с экспертами Microsoft и техническими специалистами MVP.

Место проведения: Москва / Санкт-Петербург / Краснодар / Казань / Екатеринбург / Новосибирск.

Начало регистрации и сбор участников в 10:00. Начало мероприятия в 11:00.

Стоимость участия: бесплатно.

Ссылка для регистрации

hackathon-ml

Курсы edX по Machine Learning и Big Data

На обучающем ресурсе edX доступны бесплатные курсы Microsoft по темам:

edx-ms-courses

Azure Data Factory для перемещения и преобразования данных

Azure Data Factory (или Фабрика данных) – это интеграционный «облачный» сервис, который позволяет формировать и автоматизировать перемещение и преобразование данных с использованием локальных и «облачных» источников данных.

azure-df-flow

Azure Data Factory (DF) позволяет комбинировать сервисы в управляемые конвейеры потока данных (data flow pipelines). Для преобразования данных можно использовать следующие сервисы:

  • Azure HDInsight (Hadoop) и Azure Batch для обработки «больших данных»;
  • Azure Machine Learning для продвинутой аналитики и машинного обучения;
  • Azure Stream Analytics для обработки большого количества событий в «реальном времени» и т.д.

Примеры источников данных:

  • Azure Data Warehouse – для создания реляционного хранилища данных;
  • Azure Blob Storage – для дешевого хранения больших объемов неструктурированных и полу-структурированных данных
  • Azure Data Lake – для хранения и скоростной обработки «больших данных» и т.д.

Пример использования: Мониторинг и прогнозирование неполадок автомобилей с помощью Cortana Analytics Suite.

Дополнительно: Introduction to Azure Data Factory Service