Apache Spark со структурированной потоковой передачей


Был выпущен Apache Spark 2.2, в котором структурированная потоковая передача больше не является экспериментальной. Соответствующий выпуск PySpark также доступен в pypi.

Spark — это механизм обработки данных Apache для обработки и анализа больших объемов данных. Он реализован на Scala и Java, работает в кластере и, пока в кластере достаточно оперативной памяти для хранения анализируемых данных, обеспечивает отличную производительность. По данным Apache, он улучшает производительность Hadoop MapReduce, выполняя программы до 100 раз быстрее в памяти и в 10 раз быстрее на диске. Все больше и больше проектов могут выполняться поверх Spark, включая GraphX для анализа графов, Spark SQL для запросов к структурированным данным внутри программ Spark; Spark Streaming для масштабируемых отказоустойчивых потоковых приложений; и MLib для алгоритмов машинного обучения.

Apache Spark 2.2.0 — третий выпуск в линейке 2.x. Улучшение заголовка — это удаление экспериментального тега из структурированной потоковой передачи. Это API, представленный в прошлом году в экспериментальной версии. API позволяет вам выразить потоковые вычисления так же, как вы бы выразили пакетные вычисления для статических данных.

Механизм Spark SQL позаботится о его постепенном и непрерывном запуске и обновит окончательный результат по мере поступления потоковых данных. Вы можете использовать Dataset / DataFrame API в Scala, Java, Python или R для выражения потоковых агрегатов, окон времени событий и соединений потока с пакетом. Структурированная потоковая передача обеспечивает простой способ создания приложений сквозной потоковой передачи, которые реагируют на данные в режиме реального времени, а такие аспекты, как обслуживание запросов или взаимодействие с пакетными заданиями, обрабатываются как часть потокового приложения.

В новом выпуске также добавлена поддержка Apache Kafka 0.10 как для чтения, так и для записи с использованием потокового и пакетного API. Новые функции также были добавлены в SparkR, Python, MLlib и GraphX. MLib и GraphX имеют новые алгоритмы для хеширования с учетом местоположения, многоклассовой логистической регрессии и персонализированного pageRank. SparkR теперь поддерживает ряд распределенных алгоритмов, в частности

ALS

Изотоническая регрессия

Многослойный классификатор персептронов

Случайный лес

Модель гауссовой смеси

LDA

Мультиклассовая логистическая регрессия

Деревья с градиентным усилением

Структурированный потоковый API для R

функции столбцов to_json, from_json для R

Многостолбцовый ок. Квантиль в R

Другое главное улучшение заключается в том, что PySpark (API-интерфейс Spark Python, который предоставляет модель программирования Spark для Python) теперь доступен в pypi и может быть установлен с помощью pip install.


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