Apache Wayang превращает обработку данных в кроссплатформенную задачу

Большинство платформ обработки данных построены на едином механизме выполнения. Не Апачи Ваянг.

На прошлой неделе Apache Software Foundation представил платформу обработки данных Wayang как проект Apache верхнего уровня.

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

Для организации с большим количеством систем данных это программное обеспечение является чем-то вроде швейцарского армейского ножа, способного выполнять различные типы работ в зависимости от текущих потребностей. Он говорит как на SQL, так и на Java.

«В Wayang пользователи могут указать любое приложение для обработки данных, используя один из API Wayang, а затем Wayang может выбрать платформу(ы) обработки данных, например Postgres или Apache Spark, которая лучше всего подходит для приложения», — поясняется на сайте GitHub. «Wayang будет организовывать выполнение, тем самым скрывая различные API-интерфейсы, специфичные для конкретной платформы, и координируя межплатформенное взаимодействие».

Wayang можно использовать для выполнения объединенных запросов SQL к различным реляционным базам данных. Или он может выбрать наиболее экономичную платформу обработки для данного задания, а затем запустить это задание. Для получения оптимальных результатов можно даже разбить задание на несколько платформ.

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

(Создатель Ваянга, доктор Хорхе-Арнульфо Киане-Руис, неожиданно скончался в 2023 году.)

Новый статус проекта, «в сочетании с сильным импульсом сообщества, позволяет нам улучшить проект и привлечь еще больше разработчиков», — сказала Зои Кауди, председатель Apache Wayang PMC, в своем заявлении.

Трехслойная абстракция Ваянга

Трехуровневая архитектура Wayang объединяет абстракцию между приложением и поддерживающими системами данных, где она может принимать основанные на правилах решения о том, какие системы должны выполнять данное задание, а затем координировать эти задания.

Обработка данных происходит на уровне платформы, но выбор платформы осуществляется через Wayang.

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

Кросс-платформенный оптимизатор автоматизирует выбор системы данных. Пользователю не нужно беспокоиться о конкретной платформе, используемой для выполнения задачи.

Это позволяет приложению использовать и объединять несколько механизмов обработки в один конвейер. Например, Apache Flink, Apache Spark и Tensorflow можно использовать вместе в одном задании. Затем Ваянг организует работу.

Один рабочий процесс, несколько механизмов

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

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

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

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

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

Ваянг Нангьян).

Фреймворки, которые Wayang в настоящее время поддерживает:

  • Апач Флинк
  • Апач Жираф
  • ГрафЧи
  • Java-потоки
  • JDBC-шаблон
  • Постгрес
  • Апач Спарк
  • SQLite3

Коммерциализация Ваянга

Один из главных участников проекта, Каустуб Бидкар, помог запустить компанию Scalytics, занимающуюся этой технологией. Scalytics использует Wayang в качестве основы для функции интегрированной обработки данных в своей платформе Scalytics Streaming Intelligence, предназначенной для расширения платформы Databricks для периферийных платформ.

По словам компании, по сути, Wayang можно использовать для создания «виртуального озера данных».

«Конечная цель – повторить успех [database systems] для кросс-платформенных приложений: пользователи формулируют задачи анализа данных, не зависящие от платформы, а промежуточная система решает, на каких платформах выполнять каждую подзадачу с целью минимизации затрат, таких как время выполнения или денежные затраты», — отмечается в литературе компании.

Помимо Wayang, ASF также объявила, что платформа обмена сообщениями Apache Artemis теперь является Apache TLP.

ТЕНДЕНЦИОННЫЕ ИСТОРИИ YOUTUBE.COM/THENEWSTACK Технологии развиваются быстро, не пропустите ни одной серии. Подпишитесь на наш канал YouTube, чтобы смотреть все наши подкасты, интервью, демонстрации и многое другое. ПОДПИСАТЬСЯ Группа, созданная в Sketch. Джоаб Джексон — старший редактор The New Stack, специализирующийся на облачных вычислениях и системных операциях. Он освещал вопросы ИТ-инфраструктуры и ее развития более 30 лет, в том числе работал в IDG и Government Computer News. До этого он… Подробнее от Джоава Джексона

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *