Чего ожидать от Hadoop 3.0? В каких направлениях развивается стратегия Hortonworks? И какие можно привести примеры инноваций с участием больших данных на основе Open Source?

На прошлой неделе в Мюнхене прошла конференция DataWorks EMEA — одно из самых значимых событий в сфере больших данных как на региональном, так и на мировом уровне. В ходе этого мероприятия, совместно организованного компаниями Hortonworks и Yahoo, освещались все самые последние и важные новинки из мира Open Source для работы с большими данными, а также разбиралось множество практических примеров из этой области. Также всем участникам конференции предоставили возможность получить углубленное представление о текущем положении дел в Hortonworks и об их планах на будущее.

Hadoop 3.0 появится со дня на день

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

В любом случае нельзя упустить случая подсмотреть, что они там готовят, тем более, когда об этом рассказывает не кто-нибудь, а один из основателей Hadoop. Так что когда слово взял Санджай Радиа, один из учредителей Hortonworks, член комитета по руководству проектом Hadoop и архитектор файловой системы HDFS (Hadoop Distributed File System, распределенная файловая система Hadoop), вся аудитория слушала его очень внимательно.

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

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

Ключевые новшества Hadoop 3.0 сосредоточены в области управления ресурсами и поддержки контейнеров в системе YARN (Yet Another Resource Negotiator, букв. «очередной диспетчер ресурсов»), а также в области репликации данных в HDFS. Радиа красочно описал ряд улучшений, которые готовятся в этих направлениях, причем каждое из них стоило бы отдельно рассмотреть в подробностях.

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

Группа улучшений относится к работе HDFS. И хотя термин erasure coding (хранение данных с помощью избыточности) подавляющему большинству людей, кроме избранных инженеров, ни о чем не говорит, последствия его реализации в файловой системе HDFS осчастливит многих — от топ-менеджеров до простых системщиков, и не только. Erasure coding — это усовершенствованный метод управления вводом-выводом и репликацией данных в распределенных файловых системах, и благодаря его внедрению HDFS станет более надежной, вот только места на диске будет занимать больше и скорость обмена данными может пострадать.

Алгоритмы erasure coding распараллеливают операции чтения-записи в файловой системе, за счет чего сокращается время задержки. За это придется заплатить большей нагрузкой на пропускную способность сети и дополнительными усилиями по восстановлению данных в случае сбоев, к тому же это решение отличает более высокая стоимость реализации. По этой причине в версии Hadoop 3.0 начнут с поддержки относительно простых вариантов erasure coding, а позже будут двигаться дальше в этом направлении.

Еще один набор улучшений относится к работе YARN и его возможностям. YARN — это менеджер ресурсов Hadoop, и его появление в Hadoop 2.0 стало ключевой предпосылкой более эффективного функционирования кластеров Hadoop. Теперь же YARN понемногу совершенствуется: в него вносят ряд улучшений в таких областях, как диспетчеризация, поддержка длительно работающих сервисов, эластичность, сервисы хронологии событий и (внимание!) контейнеры.

В то время как все остальные улучшения, несмотря на свою важность, мало понятны неспециалистам, к контейнерам привлекается так много всеобщего внимания, что их появление не останется незамеченным. К примеру, поддержка длительно работающих сервисов была обусловлена необходимостью в консолидации инфраструктуры. Говоря простым языком, теперь YARN сможет управлять даже теми ресурсами и сервисами, которые функционируют вне Hadoop-кластера. Это, в том числе, относится и к контейнерам Docker, но данное новшество было придумано не для галочки и громких слов. Оно означает, что теперь все, что может работать внутри контейнера, также сможет работать и внутри Hadoop-кластера. То есть речь идет о любых программных средствах, начиная с Tensorflow, заканчивая самим YARN — и это реальные примеры, на которые сослался Радиа. Эта возможность используется внутри Hortonworks в качестве замены OpenStack.

Вместо того, чтобы заниматься управлением и конфигурированием ресурсов с помощью платформы OpenStack, инженеры Hortonworks используют этот метод многослойной реализации YARN для выделения одного кластера внутри другого — при таком подходе можно расширять как количество выделяемых кластеров, так и их вложенность. Радиа упомянул, что такой метод, с их точки зрения, более дешевый, надежный и устойчивый, чем использование OpenStack.

Хортон высиживает яйцо (название детской книги доктора Сьюза о слоненке Хортоне)

«Вы хотели, чтобы мы добавили поддержку Docker — мы вас услышали», — таков был посыл от Радиа. Но здесь есть один нюанс, который может пролить свет на более глобальную стратегию Hortonworks.

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

В MapR это реализовали на базе платформы Mesosphere, и, по словам разработчиков MapR и Mesos, это не потребовало каких-то особых усилий по интеграции. Так почему же Hortonworks, к примеру, не пошла тем же путем?

Просмотрев рекламный ролик Hadoop 3.0, сразу становится ясно: если контейнеры сами приходят в Hadoop, то Hadoop незачем самому стремиться к контейнерам. При обсуждении этой теории технический директор Hortonworks Скотт Нау высказался намеками: «Контейнеры... хмм, я и не думал, что мы их уже готовы обсуждать на данный момент».

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

Подобно отважному слоненку Хортону, в честь которого была названа компания, Hortonworks решила стоять на своем, невзирая на критику. Но теперь создается впечатление, что они все-таки высидели это яйцо и спешат поведать об этом миру. Hortonworks обзавелась новыми сотрудниками, намереваясь продолжать реализацию своей стратегии и одновременно транслируя следующие заявления.

Во-первых, «у нас все хорошо, спасибо, что спросили, а в будущем будет еще лучше». В этом плане Hortonworks может похвалиться кое-какими цифрами: более тысячи клиентов и свыше 2100 партнеров по всему миру, к тому же это первая компания, которой удалось добиться ежегодного дохода в 100 млн. долл. всего за четыре года.

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

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

  • IoT: уже занимаемся, см. проекты NiFi и MiNiFi.
  • Облака: уже занимаемся совместно с AWS и Azure, а в будущем будут и другие партнеры.
  • Обработка потоковых данных: уже занимаемся, см. Storm + Spark.
  • ИИ: намерены заниматься, благо данные представляют для этого основание.

В-третьих, «мы все делаем по-своему, и у нас прекрасно получается». В Hortonworks пригласили нового президента и операционного директора Раджа Верму, который недавно перешел из компании TIBCO. Он откровенно говорит на многие темы, и, учитывая его 23-летнюю карьеру в проприетарном ПО, которая предшествовала приходу в Hortonworks, интересно послушать, что его больше всего впечатляет на сегодняшний день.

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

На DataWorks выбрали «героев данных»

Наглядный тому пример — в ходе конференции DataWorks был организован ряд очень ценных сессий с участием приглашенных специалистов и пользователей, тематика которых охватывала как глубокое погружение в узкоспециальные технические решения, так и разбор примеров из бизнеса. Из числа клиентов Hortonworks, коих насчитывалось больше тысячи, некоторые были отмечены званием «герой данных». Среди них: Радж Верма (Hortonworks), Далджит Рехал (Centrica), Тобиас Бюргер (BMW Group), Рене Кастберг (DNV GL), Джо Моррисси (Hortonworks).

BMW Group была награждена за свою архитектуру, при создании которой немаловажная роль была отведена Hortonworks Data Platform (HDP). Автопоизводитель пользуется этой архитектурой внутри корпорации, чтобы управлять структурированными данными с датчиков и из серверных логов, а на выходе проводить серийный и потоковый анализ, а также интерактивный анализ с применением SQL-запросов и анализ на базе ИИ и глубинного обучения. Все эти виды анализа применяются для ведения свыше 100 рабочих проектов с участием 125 тыс. сотрудников по всему миру.

Centrica, занимающаяся поставкой энергоресурсов и сопутствующими услугами, была награждена за свою стратегическую концепцию. Компания обрабатывает структурированные данные с датчиков, данные об истории посещения сайтов, геолокационные данные, логи серверов и данные из соцсетей, а затем на их основе проводит серийный, поисковый, потоковый анализ, а также интерактивный анализ с применением SQL-запросов и анализ на базе ИИ и глубинного обучения. Centrica использует данные, полученные из своих программных средств, для оценки истории клиентов, их нужд и общего уровня удовлетворенности, а также для формирования более точных, «умных» счетов за газ и электричество.

DNV GL работает в секторе услуг для судоходной, нефтегазовой и энергетической отраслей, и награду свою получила за прикладную реализацию сбора и обработки данных. В компании разработали платформу под названием Veracity, куда их клиенты могут направлять свои данные. Большая часть данных поступает с датчиков, установленных на крупных физических объектах — судах, нефтяных платформах, турбинах, трубопроводах и электросетях. С помощью Veracity клиенты могут получить в удобном для себя виде различную метрику, причем особое внимание уделяется качеству и непрерывности данных.

Выше перечислены лишь некоторые из рассмотренных практических примеров, многие из которых впечатляли скоростью внедрения на производстве, а также уровнем сотрудничества и командного духа. Например, Danske Bank сообщил о том, что в течение года перешел практически с нулевого уровня аналитики на использование прогнозной аналитики. Инженеры Hortonworks сделали доклад на тему того, как благодаря сотрудничеству с ними корпорации Netflix удалось добиться производительности, аналогичной сервису Amazon EMR, используя при этом службу S3 в облаке AWS, и есть основания полагать, что скоро они обойдут EMR по производительности (возможно, речь идет о PaaS-сервисе Genie от Netflix, занимающемся управлением ресурсами и рабочей нагрузкой в Hadoop-кластерах).

Так что MapR может пока насладиться своим первенством, скажем, в части постоянных контейнеров, ведь в Hortonworks уверены, что скоро смогут наверстать упущенное, подключив к этому все сообщество Open Source. И пусть их главный конкурент Cloudera пытается сосредоточиться на технологиях более высокого уровня — в Hortonworks крайне скептически относятся к этому шагу, вплоть до того, что называют его признаком слабости.

Но, разумеется, и в королевстве Hortonworks не все так уж радужно. В том, что касается обработки потоковых данных, то здесь замыслы и коммерческие предложения компании несколько запутанны. Hortonworks сильно отстает с вычислительной системой Storm: популярность ее растет не так быстро, как у Spark, и альтернативных подходов, как у Flink, в ней не предлагается. Но ведь Hortonworks поставляет и Storm, и Spark, к тому же она содействовала в разработке Flink. Странно, правда? Отвечая на вопрос касательно их стратегии, Нау отметил, что компании приходится оказывать техподдержку всем своим пользователям, вне зависимости от выбираемых ими платформ.

По части анализа данных и искусственного интеллекта Hortonworks гораздо менее многословна, чем ее конкуренты. Об их стратегии в этом направлении Нау высказался многообещающе: эта тема есть у них на повестке дня, и нам стоит скоро ожидать новостей от компании в этой сфере. Насколько скоро? Когда они посчитают нужным. По всей видимости, это не слишком-то определенный ответ, и, возможно, к тому времени, как Hortonworks решится действовать, их время уже будет упущено.