Объясните связь между библиотеками spark, такими как SparkSQL, MLib, GraphX ​​и Spark Streaming - PullRequest
0 голосов
/ 07 мая 2018

Объясните связь между библиотеками, такими как SparkSQL, MLib, GraphX ​​и Spark Streaming, и базовой платформой Spark

1 Ответ

0 голосов
/ 09 мая 2018

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

GraphX, MLlib, Spark Streaming и Spark SQL - это модули, построенные на основе этого движка, каждый из которых имеет различную цель . Каждая из этих библиотек имеет новые объекты и функции, которые обеспечивают поддержку определенных типов структур или функций.

Например:

  • GraphX ​​- это распределенный модуль обработки графов , который позволяет представлять граф и применять эффективные преобразования, разбиения и алгоритмы, специализированные для такого рода структур.
  • MLlib - это распределенный модуль машинного обучения поверх Spark, который реализует определенные алгоритмы, такие как классификация, регрессия, кластеризация, ...
  • Spark SQL вводит понятие DataFrames , наиболее важной структуры в этом модуле, которая позволяет применять операции SQL (например, select , , где , groupBy , ...)
  • Spark Streaming - это расширение ядра Spark, которое принимает данные в мини-пакетах и выполняет преобразования этих мини-пакетов данных. Spark Streaming имеет встроенную поддержку для работы с платформами Kafka, Flume и других

Spark ecosystem

Вы можете комбинировать эти модули в соответствии с вашими потребностями. Например, если вы хотите обработать большой граф для применения алгоритма кластеризации, вы можете использовать представление, предоставленное GraphX ​​, и использовать MLlib для применения K-средних для этого представления.

Doc

...