Как Apache Spark осветил мир технологий и затмил своих собратьев по большим данным

Важные новости

Как Apache Spark осветил мир технологий и затмил своих собратьев по большим данным

Интервью Большие данные больше не называют «новой нефтью». Он вышел из моды как с точки зрения ажиотажа, так и потому, что его основополагающая технология — Apache Hadoop — была превзойдена облачным хранилищем BLOB-объектов, таким как AWS S3. Однако родственный проект, родившийся в эпоху больших данных, стал более влиятельным в современном мире LLM и интернет-систем данных.

Прошло около 10 лет с момента выпуска Apache Spark 1.0, и The Register связался с первоначальным автором Матеем Захарией. Он написал код в рамках своей докторской диссертации в Калифорнийском университете в Беркли, прежде чем проект был передан в дар Apache Foundation.

«Тогда я не предполагал, что это будет так популярно и широко использоваться», — сказал он. «Сегодня его использование все еще растет, судя по всему, что мы видим: разработчики, загрузки, группы встреч и так далее».

Spark начался как академический проект в 2010 году, когда Захария – румынско-канадец National – увидел необходимость усовершенствования зарождающейся технологии под названием MapReduce, модели программирования на основе Java для управления большими данными в кластерах в распределенной файловой системе Hadoop.

«В то время в веб-компаниях — в основном в Google, Yahoo и Microsoft — происходили все эти вычислительные процессы, требующие больших объемов данных», — сказал он. «Существовали также такие платформы распределенных вычислений, как MapReduce, и мне было очень интересно узнать о них больше и предоставить возможность такого рода параллельных вычислений гораздо большему количеству пользователей».

Хотя MapReduce был способом взломать большие проблемы с данными на обычном оборудовании, оно действительно было ориентировано на инженеров-программистов, объяснил Захария.

«Их подход сильно отличается от подхода тех, кто занимается, например, просто интерактивным анализом. Представьте, что если вы хотите использовать что-то вроде Microsoft Excel, вы можете очень быстро получить необходимые результаты. Вы не создаете что-то, что будет управлять вашим бизнесом. , но эти ранние фреймворки создавались для инженеров, и они не выполняли за вас распределение, устранение неисправностей и планирование. Вам приходилось писать все это вручную.»

Захария черпал вдохновение у исследователей, использующих большие данные для машинного обучения или, например, для обнаружения новых вирусов. «Это действительно интересные варианты использования, когда им не придется садиться, изучать Java и тратить много недель на создание приложения. Мы хотели максимально облегчить им работу», — сказал он.

< р>Частью плана по расширению привлекательности было внедрение новых языков программирования. Помимо Java, пользователи могут работать в Scala, статистическом языке R, C# и Python, языке общего назначения высокого уровня, получившем широкую популярность в машинном обучении. Де-факто стандарт языка баз данных SQL был добавлен в 2014 году.

Мало того, что план Захарии сработал, в 2010 году Spark стал открытым исходным кодом под лицензией BSD, а позже был передан в дар Apache Software Foundation, став ведущим программным обеспечением. проект уровня в 2013 году.

В то же время Захария стал соучредителем Databricks, изначально основанной на предоставлении Apache Spark в качестве сервиса в облаке. За десять лет с момента основания компания расширилась и стала предоставлять так называемую платформу озер данных, объединяющую как исследовательские озера данных, так и более упорядоченные системные запросы хранилища данных с SQL. Ранее в этом году она запустила собственную большую языковую модель DBRX, каталог данных с открытым исходным кодом (Unity) и инструменты для создания, развертывания и мониторинга решений AI и ML в Mosaic AI.

Хотя Spark остается частью основного предложения Databricks, его сила заключается в независимости от поставщика. Все основные поставщики облачных технологий — AWS, Google, Azure, Oracle и IBM — предлагают Spark как услугу, а независимые поставщики, такие как Qubole, предоставляющий озеро данных с открытым исходным кодом, также предлагают его.

Prasad Поре, старший директор и аналитик Gartner по данным и аналитике, сказал, что Spark широко используется для обработки и подготовки данных, а также для аналитики. «Когда дело доходит до обработки больших объемов данных, Apache Spark представляет собой очень проверенную, надежную и отказоустойчивую технологию. Благодаря этому Spark довольно хорошо принят на рынке либо через поставщиков, либо в качестве управляемого предложения, либо через реализация с открытым исходным кодом.»

Секрет успеха заключается в способности обрабатывать данные в памяти (где MapReduce записывал их на диск) и гарантировать, что распределенная обработка не прервется.

«Обработка в памяти обеспечила огромный прирост производительности. над пакетными заданиями», — рассказал Поре The Register.. «Это было главное ценностное предложение. Отказоустойчивость также является очень важным элементом, когда речь идет об обработке больших объемов данных. Представьте, что вы обрабатываете 10 ТБ данных, и по какой-то причине пакет выходит из строя. Вам нужно знать, что есть ошибка. -толерантный механизм. В случае сбоя узла он должен иметь возможность автоматического восстановления. Это надежная архитектура Spark».

Хотя Захария больше не вносит код непосредственно в проект, он помогает управлять им и консультирует его. Команда Databricks, работающая над Spark.

Он сказал, что, сделав проект открытым исходным кодом в первые годы его существования, он способствовал созданию «большой экосистемы библиотек», которая помогла платформе «стать лучше» для всех. «Упростить расширение библиотек — это хорошо», — сказал он.

Но одну вещь, которую он хотел бы представить с самого начала, — это своего рода обратную совместимость между приложениями и Spark. Он сказал, что сообщество работает над Spark Connect, который позволит клиентским приложениям, написанным для Spark, стать независимыми от сервера версий и стоящего за ним кластера.

«Мы сейчас над этим работаем. Это круто. , но мне бы хотелось, чтобы мы сделали это в самом начале, если бы мы об этом подумали», — сказал он.

Он пообещал, что после Spark 4.0, выход которого ожидается в июне, никому не придется обновлять свои приложения на новую версию Spark. «Конечно, они могут писать новые приложения, чтобы воспользоваться преимуществами новых функций», — сказал он.

Хотя Spark, возможно, родился в эпоху больших данных и Hadoop, он жизненно важен для последних тенденций. в вычислительной технике. Захария сказал, что все крупнейшие компании LLM в мире подготовили свои данные с помощью Spark. «Это один из вариантов использования, который нас волнует. Было действительно интересно видеть, что люди с ним делают». ®

Новости сегодня

Последние новости