Технологии больших данных активно обсуждают в отрасли как минимум последние пять лет. Казалось бы, этого времени достаточно для перехода больших данных из области спекуляций в практическую плоскость, в класс технологий продуктивного использования, однако в прошлом году аналитики Gartner исключили Big Data из числа прорывных технологий и из графика Hype Cycle (цикла зрелости технологий). В отрасли даже заговорили о «смерти больших данных».
Означает ли это, что технология устаревает, так и не достигнув стадии зрелости и достаточно широкого использования? Вовсе нет. Просто понятие «большие данные» (Big Data), куда подчас стали относить едва ли не все, что связано с хранением и анализом данных, оказалось слишком размытым и нечетким.
На перепутье
Тем временем технологии и платформы для больших данных продолжают быстро развиваться. В настоящее время крупные вендоры – производители серверов и СХД, разработчики программного обеспечения – фокусируют внимание на конкретных направлениях больших данных, активно взаимодействуют с сообществом Open Source, выпуская совместные решения. Чтобы можно было проще и эффективнее работать с технологиями больших данных, они дополняют линейки продуктов недостающими функциями и оптимизируют существующие.
Интересное направление – интеграция данных. Например, она позволяет пользователям с помощью привычных инструментов (SQL, BI и др.) работать с данными Hadoop. Системные архитекторы в результате получают возможности выбора места наиболее эффективного хранения тех или иных данных – в реляционной СУБД или в Hadoop.
Хотя базы данных позволяют работать как со структурированными, так и с неструктурированными данными, в некоторых случаях, Hadoop применять выгоднее. Например, Hadoop обычно используется для анализа петабайтов неструктурированных данных, в то время как СУБД традиционно демонстрируют свои лучшие качества в задачах анализа структурированных данных – транзакций, сведений о клиентах, данных о звонках и пр.
Другое направление – ускорение и оптимизация доступа к данным, что особенно важно при преобразовании или перемещении больших объемов данных. Инструменты Open Source не всегда оказываются эффективными по производительности. Разработанные вендорами оптимизированные решения позволяют в несколько раз ускорить передачу данных между разными местами и технологиями хранения.
Большое значение в больших данных приобретает безопасность. Если традиционные реляционные СУБД давно имеют достаточно сильные и гибкие встроенные механизмы безопасности, то Hadoop изначально не был рассчитан на развертывание в сложной корпоративной многопользовательской среде. Для этой цели применяются «наложенные» средства безопасности корпоративного уровня. Например, если пользователи обращаются к данным Hadoop через СУБД, то все параметры безопасности и разграничения доступа настраиваются на уровне базы данных.
Как правило, большие данные собираются из разных источников, имеют неунифицированные форматы. Стоит ли тратить время на подготовку этих данных? Новейшие инструменты класса Big Data Discovery дают возможность получить примерное представление о содержимом данных, увидеть какие-то закономерности, даже если данные практически не структурированы, и тем самым оценить полезность данных и необходимость дальнейшей работы с ними. Это направление получает развитие во всем мире. Например, компания-автопроизводитель может на основе собираемых от клиентов откликов выявить некие закономерности и скрытые дефекты, анализируя жалобы и отзывы клиентов.
Данные в облаках
Все чаще инструменты для больших данных предлагаются не только в локальной версии, когда продукт развертывается в дата-центре заказчика, но и облачной (в публичном облаке). Например, заказчик может развернуть программно-аппаратный комплекс для работы с большими данными и их анализа «у себя» или арендовать его в облаке.
Развивается и «облачная бизнес-аналитика» (Cloud BI). Мощные вычислительные комплексы в дата-центре провайдера могут справиться с очень сложными аналитическими задачами. Облака позволяют получить ИТ-ресурсы и не заниматься жизненным циклом серверов и обновлением ПО.
Но как передать в облако большие массивы данных? Проще всего накапливать и анализировать их непосредственно в облаке. Есть также продукты для загрузки данных в облака и интеграции данных, по заданным правилам периодически собирающие данные из разных источников и помещающие их в указанное место, в том числе в облако.
Кроме того, существуют решения, которые умеют читать логи базы данных и тем самым получают оповещения обо всех изменениях в ней. Они могут при определенных изменениях в БД копировать эти изменения в облачную БД, тем самым синхронизируя локальные и облачные данные в реальном времени. А если в облаке и локально у заказчика работают одни и те же продукты, не возникает проблем совместимости, упрощается миграция данных.
Облачная модель избавляет заказчика от необходимости планировать покупку серверов, позволяет начать с небольших объемов. Поэтому интерес к облачным сервисам больших данных растет.
От теории к практике
Хотя использование больших данных и не стало массовым, появляется все больше примеров практического применения таких технологий. Большие данные – уже объективная реальность.
Опросы говорят о том, что 38% респондентов применяют большие данные, в основном в таких областях как маркетинг и продажи (53%), общее руководство компанией (49%), финансы (42%) и логистика (37%). В основном это крупные компании. Предприятиям SMB обычно хватает традиционных технологий, да и генерируют они гораздо меньше данных.
Если в 2012 году компании старались понять и осознать, что это за технологии, что они дают, то с 2013 года интерес сместился к примерам внедрения, а с 2014 года началось практическое использование технологий больших данных. Сегодня их развертывают, по крайней мере, на уровне пилотных проектов, практически все крупные российские телекоммуникационные компании, банки, ритейл. В последнее время заказчики стали интересоваться решениями, упрощающими ИТ-инфраструктуру для больших данных.
Например, многоузловой кластер Hadoop достаточно трудоемок в обслуживании. Готовые к развертыванию программно-аппаратные комплексы – это поддержка корпоративного уровня с единой «точкой входа». Решается проблема поддержки и оптимизации при работе с сотнями терабайт данных. Кроме того, оптимизированные комплексы скрывают сложности технологии, позволяют прозрачно работать с разными источниками данных, интегрировать данные «на лету», унифицировать их.
Примеры внедрения
Некоторые российские интернет-компании использовали технологии обработки больших данных еще до появления этого термина. В настоящее время анализ больших данных задействован во многих проектах Mail.Ru: с его помощью компания анализирует поведение пользователей, таргетирует рекламу, оптимизирует поиск. «Рамблер» также применяет эти технологии для поиска, таргетинга рекламы, персонализации контента, блокировки спама, развивает контентную аналитику. С 2012 года целый ряд проектов по большим данным реализует «Яндекс».
Интересен опыт компании Wargaming.net. Команда компании-разработчика видеоигр World of Tanks и World of Warships оставила «данные в табличках» далеко позади и накопила солидный опыт в решении проблем с дизайном, автоматизации отчетности для руководства, расширении пользовательской базы и увеличении продаж благодаря новым технологиям анализа данных.
Телеком-операторы используют аналитику больших данных для оптимизации затрат и улучшения обслуживания абонентов, прогнозирования нагрузки на сеть. «Мегафон» предлагает также отдельный сервис анализа пассажироперевозок для транспортных компаний. «Вымпелком» задействовал анализ больших данных для мониторинга качества обслуживания клиентов, подбора сервисов и тарифов, борьбы с мошенничеством, прогнозирования обращений в колл-центр, оценки кредитоспособности абонентов (скоринга).
«Альфа-банк» применяет эти технологии для анализа соцсетей, оценки кредитоспособности и прогнозирования оттока клиентов, персонализации контента. И это далеко не полный список крупных проектов на российском рынке, где задействованы технологии больших данных.
Перспективы больших данных
Технологии больших данных переживают бум, а удешевление хранения и обработки данных открывает новые возможности для анализа. Появляются перспективные технологии, которых раньше не было даже в теории.
По прогнозам IDC, к 2017 году основой общекорпоративной стратегии работы с большими данным и их анализа станет унифицированная архитектура платформ для управления данными, причем унификация будет охватывать технологии управления, анализа и поиска данных. Это должно помочь решить одну из основных проблем проектов больших данных – проблему сбора данных и обеспечения их качества, а также использовать более сложные архитектуры источников данных.
Ведущие вендоры развивают концепцию использования больших данных в корпоративных средах, обеспечивая совместную работу технологий Hadoop, NoSQL и SQL, а также их безопасное применение в любой модели, будь то публичное, частное облако, или инфраструктура предприятия. Можно задействовать навыки пользователей баз данных – знания Hadoop для запросов не требуется.
Интересные перспективы открывает интернет вещей в сочетании с облачными технологиями. Используя компактные Java-приложения, можно встраивать в различные интеллектуальные датчики достаточно сложные алгоритмы, собирать и обрабатывать большие массивы данных в облаке. Пока компании думают, где это можно использовать. Но несомненно, что интернет вещей и облака позволят создать прорывные технологии больших данных.