欢迎回家
我们一直在改变

Spark 组件

Spark组件使Apache Spark快速可靠。 构建了很多这些Spark组件来解决使用Hadoop MapReduce时出现的问题。 Apache Spark具有以下组件:

  • Spark Core
  • Spark Streaming
  • Spark SQL
  • GraphX
  • MLlib (Machine Learning)

Spark Core
Spark Core是大规模并行和分布式数据处理的基础引擎。 核心是分布式执行引擎,Java,Scala和Python API为分布式ETL应用程序开发提供了一个平台。 此外,在核心上构建的其他库允许用于流式传输,SQL和机器学习的各种工作负载。 它负责:

  • 内存管理和故障恢复
  • 在群集上调度,分发和监视作业
  • 与存储系统交互

Spark Streaming

Spark Streaming是Spark的组件,用于处理实时流数据。 因此,它是核心Spark API的补充。 它支持实时数据流的高吞吐量和容错流处理。 基本流单元是DStream,它基本上是一系列用于处理实时数据的RDD(弹性分布式数据集)。

Spark SQL

Spark SQL是Spark中的一个新模块,它使用Spark编程API实现集成关系处理。 它支持通过SQL或Hive查询查询数据。 对于那些熟悉RDBMS的人来说,Spark SQL将很容易从之前的工具过渡到可以扩展传统关系数据处理的边界。

Spark SQL通过函数编程API集成关系处理。 此外,它为各种数据源提供支持,并且使用代码转换编织SQL查询,从而产生一个非常强大的工具。

以下是Spark SQL的四个库。

  • Data Source API
  • DataFrame API
  • Interpreter & Optimizer
  • SQL Service

GraphX
GraphX是用于图形和图形并行计算的Spark API。 因此,它使用弹性分布式属性图扩展了Spark RDD。

属性图是一个有向多图,它可以有多个平行边。 每个边和顶点都有与之关联的用户定义属性。 这里,平行边缘允许相同顶点之间的多个关系。 在高层次上,GraphX通过引入弹性分布式属性图来扩展Spark RDD抽象:一个定向多图,其属性附加到每个顶点和边。

为了支持图形计算,GraphX公开了一组基本运算符(例如,subgraph,joinVertices和mapReduceTriplets)以及Pregel API的优化变体。 此外,GraphX包含越来越多的图算法和构建器,以简化图形分析任务。

MlLib (Machine Learning)
MLlib代表机器学习库。 Spark MLlib用于在Apache Spark中执行机器学习。

原文链接https://www.aboutyun.com/forum.php?mod=viewthread&tid=24883

赞(0)
未经允许不得转载:91coding » Spark 组件
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

91CODING 小白轻松上手,大牛稳健进步

关于我们免责声明