За последние несколько лет, в течение которых Hadoop приобрел статус доминирующей парадигмы в области обработки больших данных, стали очевидны некоторые факты.
Во-первых, распределенная файловая система Hadoop – подходящая платформа для хранения больших данных.
Во-вторых, фреймворк YARN, предназначенный для выделения и управления ресурсами, является предпочтительным для систем обработки больших данных.
В-третьих (возможно, это самое главное), не существует какого-либо одного фреймворка, позволяющего решить все задачи. Несмотря на то, что MapReduce – удивительная технология, она применима не в каждой ситуации.
Предприятиям, использующим Hadoop, необходимо множество аналитических инфраструктур и процессов, чтобы получить ответы на ключевые вопросы.
Им требуется подготовка данных, описательный анализ, поиск, прогнозный анализ и расширенные возможности, такие как машинное обучение и обработка графов.
Кроме того, компаниям необходим набор инструментов, соответствующий их текущему положению, позволяющий эффективно использовать навыки и другие ресурсы, которые уже есть в наличии. До настоящего времени не существовало единого фреймворка, удовлетворяющего всем этим критериям. Это фундаментальное преимущество Spark.
Хотя Spark является относительно молодым проектом, он соответствует всем вышеперечисленным требованиям и даже превосходит их. Перед вами пять причин, позволяющих убедиться в том, что мы вошли в эру Spark.
Благодаря Spark расширенная аналитика становится реальностью
Согласно данным последних опросов, в настоящее время только 20% респондентов используют расширенную аналитику в масштабах предприятия. Остальные 80% отмечают, что все их ресурсы уходят на простую подготовку данных и реализацию базовой аналитики. Некоторые data scientist’ы в этих компаниях тратят большую часть времени на реализацию описательной аналитики.
Spark представляет собой фреймворк для расширенной аналитики, непосредственно готовый к использованию. Он включает в себя:
- инструментарий для ускоренных запросов;
- библиотеку машинного обучения;
- модуль обработки графов;
- модуль потоковой аналитики.
Реализовать подобную аналитику посредством MapReduce почти невозможно, даже усилиями высококвалифицированных специалистов. Spark также освобождает data scientist’ов от задач подготовки данных и контроля качества и позволяет им заниматься другими вопросами. Благодаря Spark они, в том числе, могут обеспечивать правильную интерпретацию результатов анализа.
Spark многое упрощает
Основная критика Hadoop основывается на том, что его трудно использовать – еще труднее найти людей, способных это делать. Вместо того, чтобы требовать от пользователей понимания различных сложных подходов, таких как шаблоны проектирования Java и MapReduce, Spark доступен любому, кто разбирается в базах данных и обладает некоторыми навыками программирования на Python или Scala.
Благодаря этому компаниям легче найти людей, способных понять данные и разобраться в инструментах для их обработки. Это также позволяет вендорам ускорить разработку аналитических решений и быстрее доставлять клиентам последние инновации.
Spark «говорит» более чем на одном языке
На данном этапе уместно спросить: «Если бы SQL еще не существовал, создали бы мы SQL сегодня для решения задач анализа больших данных?» Вероятно, нет – как минимум, не один только SQL. Нам потребовалась бы большая гибкость при поиске необходимых нам ответов, больше возможностей для организации и извлечения данных, а также более быстрые способы переноса данных в аналитический фреймворк. Spark оставляет подход «только-SQL» позади, открывая для данных максимально быстрый и элегантный путь к анализу.
Spark ускоряет получение результатов
Поскольку темпы бизнеса продолжают расти, возрастает и потребность в результатах, получаемых в режиме реального времени. Spark обеспечивает параллельную обработку в оперативной памяти (in-memory), позволяющую получать результаты многократно быстрее, чем любой другой подход, требующий доступа к жесткому диску. Мгновенные результаты устраняют задержки, которые могут существенно замедлить инкрементную аналитику (incremental analytics) и соответствующие бизнес-процессы.
Когда вендоры начнут использовать Spark для создания аналитических решений, за этим последует существенная оптимизация рабочего процесса аналитиков. Сокращение времени, необходимого для получения ответов, означает, что аналитики могут работать итеративно, стремясь получить более точные и более полные ответы. Spark позволяет аналитикам делать то, что они и должны делать: находить максимально полезные ответы как можно быстрее.
Для Spark неважно, с каким вендором Hadoop вы работаете
Все основные дистрибутивы Hadoop сейчас поддерживают Spark, и на это есть серьезная причина. Spark – это решение, не зависящее от вендора. Это означает, что реализация не привязывает пользователя к какому-либо определенному поставщику. Поскольку Spark представляет собой ПО с открытым исходным кодом, предприятие может создавать аналитическую инфраструктуру на основе Spark, не беспокоясь о том, что в какой-то момент, возможно, потребуется сменить вендора Hadoop. Если такая смена произойдет, предприятие сохранит свою аналитическую систему.
Импульс, который приобрел Spark за очень короткое время, свидетельствует о том, насколько точно он соответствует запросам компаний, применяющих анализ больших данных. Сейчас мы находимся в самом начале «эры Spark». Поскольку предприятия начинают по-настоящему раскрывать потенциал Spark, можно ожидать, что он укрепит свои позиции в качестве одной из ключевых технологий для анализа больших данных.
По материалам: InfoWorld