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

В настоящее время существует множество решений для хранения и анализа «больших данных» (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

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

Давайте рассмотрим сценарий продвинутой аналитики, демонстрирующий как авто-дилеры, страховые компании и производители автомобилей могут использовать Cortana Analytics Suite включая Power BI в решении для получения аналитики реального времени и предсказаний работоспособности автомобилей и поведенческих шаблонов при вождении для улучшения качества езды, улучшения автомобилей и маркетинговых компаний.

Архитектура решения приведена на следующем рисунке:

CCArchitecture

Потоковые данные с датчиков автомобиля по сети Интернет поступают в Event Hub. Далее они поступают на вход Azure Stream Analytics (ASA).

В ASA настроены три постоянных запроса над входным потоком данных, каждый из которых обогащаются информацией о параметрах автомобилей из каталога автомобилей, хранящегося в Azure Blob Storage:

  1. Запрос №1 содержит данные по каждому автомобилю для отражения в реальном времени в Power BI.
  2. Запрос №2 отправляет данные по автомобилям в хранилище Blob Storage (это «большие данные» с точки зрения объемов информации; такие объемы выгодно хранить в Azure Blog Storage, т.к. в этом случае стоимость хранения минимальна).
  3. Запрос №3 агрегирует информацию по каждой модели и городу для сохранения в реляционном хранилище Azure DW для последующего отражение исторической отчетности.

Компонент решения Azure Data Factory выполняет интеграционную задачу. На основании файла, сгенерированного в ходе выполнения запроса №2 в ASA, в Blob Storage формируются три таблицы с выделением сведений об эффективности использования горючего, об агрессивности вождения и о возможных аномалиях.

CC-demo-ADF

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

CC-demo-ADF-hive

Выборка данных об аномалиях направляется в сервис Azure Machine Learning, где формируется прогноз по возможному выходу автомобилей из строя. Благодаря этому прогнозу можно проактивно заказывать требуемые компоненты на замену и выполнять техническое обслуживание автомобилей (это сводит к минимуму простои оборудования).

Пример пакета по выбору и обучению модели для обнаружения аномалий приведен на следующем снимке экрана.

CC-demo-AML

Далее информация из файлов в Blob Storage направляется в хранилище Azure Data Warehouse и отражается на информационных панелях Power BI. Другая часть данные поступает напрямую из ASA и отражается в Power BI в «реальном времени».

CC-demo-powerbi

Используемые в сценарии технологии: Event Hub, Azure Stream Analytics, Azure Machine Learning, Azure Data Factory, HDInsight, Azure Storage, Azure DW, и Power BI.

Трансляция докладов SQL Saturday

Приглашаем Вас завтра на online-трансляцию технологического субботника SQLSaturday, которая пройдет 17 октября 2015 г. с 10.00 до 18.00 (МСК).

Подключайтесь к трансляции

sqlsaturday
У Вас будет уникальный шанс прослушать почти два десятка докладов по ключевым темам платформы управления данными от признанных экспертов индустрии, включая:

  • Особенности практического применения In-Memory OLTP в SQL Server 2014.
  • Примеры использования AlwaysOn для обеспечения катастрофоустойчивости приложений MS.
  • Принципы и методика консолидации серверов БД MS SQL Server на предприятии.
  • Мобильная бизнес-аналитика: Datazen и Power BI.
  • Обзор сценариев использования продвинутой аналитики (Azure ML).

И, конечно же, мы приоткроем завесу над SQL Server 2016, представив его революционные технологии, устанавливающие новые стандарты в области хранения, обработки и визуализации данных.

Дополнительная информация и полная программа доступны на сайте мероприятия.

Пакет Cortana Analytics

Cortana Analytics – это полностью управляемый пакет решений в «облаке» (Microsoft Azure) по обработке «больших данных» и продвинутой аналитике, который позволяет трансформировать данные организаций (полученных из бизнес- и пользовательских приложений, а также с сенсоров и устройств) в обоснованные управленческие решения (в виде рекомендаций для персонала) или действия (например, в автоматизированных системах).

Cortana Analytics Suite Goal

Cortana Analytics Suite включает следующие продукты и возможности (также см. рисунок ниже):

  • Сконфигурированные бизнес-сценарии: рекомендации, прогнозирование, предотвращение ухода клиентов и т.д.;
  • Персональный цифровой ассистент: Cortana;
  • Распознавание персональных взаимодействий и намерений: распознавание лиц, комьютерное зрение, распознавание речи и анализ текстов;
  • Информационные панели и визуализация: Power BI;
  • Машинное обучение и аналитика: Azure Machine Learning, Azure HDInsight (развитие системы Hadoop), Azure Stream Analytics (анализ потоковых данных — «облачный» вариант технологии StreamInsight);
  • Хранилища больших данных: Azure Data Lake (репозитарий «больших данных» на базе HDFS), Azure SQL Data Warehouse (масштабируемое хранилище данных — «облачный» вариант APS-PDW);
  • Управление информацией: Azure Data Factory (оркестровки по обработке данных), Azure Data Catalog (облачный каталог данных), Azure Event Hubs.

Продукты и возможности в составе Cortana Analytics Suite

Подробнее: официальный сайт пакета Cortana Analytics.