К открывшейся 6 июня в Сан-Франциско конференции Spark Summit ряд игроков в области обработки больших данных подготовили объявления, касающиеся Open-Source-платформы Apache Spark для обработки больших данных с предварительной их загрузкой в оперативную память.
MapR и Microsoft представили свои новые дистрибутивы Spark. Отметим, что оба дистрибутива фактически базируются на Hadoop, а не на самостоятельных кластерах Spark. Но обе компании выделяют в названиях своих докладов слово Spark, и их дистрибутивы ориентированы на использование именно этой платформы.
Spark из Редмонда
Дистрибутив Microsoft ранее уже существовал в формате предварительной версии, и теперь выпускается в свет официально. Хотя его первоначальный вариант, представленный почти год назад, был построен вокруг HDInsight (дистрибутива Hadoop на базе облака Microsoft) для Windows, компания изменила намерения и переработала дистрибутив под Linux. Поскольку в него упакована среда веб-приложения Jupyter Notebook вместе с нижележащими ядрами, которые позволяют обрабатывать код, написанный на Python и Scala, любой пользователь Microsoft с аккаунтом Azure теперь очень легко может получить в свое распоряжение кластер и, кликнув по нужной ссылке, познакомиться с комплектом учебных материалов и тут же начать работу со Spark.
Microsoft также сообщила об интеграции Spark со своим сервисом Power BI (включая интеграцию Spark Streaming) и представила локально устанавливаемые продукты R Server for HDInsight и R Server for Hadoop.
MapR выводит Spark на передний план
MapR, хотя и использовала код свободной версии Apache Spark, скрупулезно интегрировала Spark для работы с собственным дистрибутивом Hadoop и его уникальными компонентами с закрытым исходным кодом, включая Map-FS, совместимый с HDFS, MapR-DB, совместимый с HBase, и MapR Streams, совместимый с API проекта Apache Kafka.
Напрямую к Spark, минуя MapReduce
По словам Джека Норриса из MapR, многие пользователи, знакомясь с учебными материалами компании, начинают сразу со Spark вместо того, чтобы сперва изучать основы Hadoop. А один из сотрудников Microsoft пояснил мне, что Hadoop-нативный MapReduce фактически мертв (он выразился иначе, но смысл тот же) и что Spark во многом стал новым стандартом.
Эта парадигма Spark-first в настоящее время довольно распространена в сфере больших данных. Я не уверен, что это правильно, особенно потому, что Apache Tez представляет собой очень сильную пост-MapReduce платформу, которая продолжает поддерживать существующие компоненты экосистемы Hadoop типа Hive и Tez. Тем не менее, если достаточно много заказчиков хотят иметь Spark-центрический дистрибутив, вендорам надо на это реагировать.
Не замена, а ассимиляция
В любом случае стоит отметить, что, предлагая новые дистрибутивы, и MapR, и Microsoft поддерживают все более типичную конфигурацию: Spark поверх Hadoop (то есть YARN и HDFS), зачастую вместе с Kafka. И обе компании предоставляют желающим возможность использовать остальную часть стека Hadoop (Hive, Pig, HBase).
Эта схема становится фактическим стандартом. И хотя в будущем, вероятно, появится ряд других решений, которые смогут в чем-то перевесить Spark, дальнейший путь вперед выглядит как эволюция структуры стека больших данных в кумулятивной форме (когда новые компоненты дополняют старые), а не в форме полного вытеснения (когда весь стек перекраивается и заменяется).