Spark 框架模块-了解
整个Spark 框架模块包含:Spark Coke、 Spark SQL、 Spark Streaming、 Spark GraphX、 Spark MLlib,而后四项的能力都是建立在核心引擎之上 。
Spark Core
实现了 Spark 的基本功能,包含RDD、任务调度、内存管理、错误恢复、与存储系统交互等模块。数据结构:RDD
Spark SQL
Spark 用来操作结构化数据的程序包。通过 Spark SQL,我们可以使用 SQL操作数据。数据结构:Dataset/DataFrame = RDD Schema
官网:http://spark.apache.org/sql/
Spark Streaming
Spark 提供的对实时数据进行流式计算的组件。提供了用来操作数据流的 API。 数据结构:DStream = Seq[RDD]
官网:http://spark.apache.org/streaming/
Spark MLlib
提供常见的机器学习(ML)功能的程序库。包括分类、回归、聚类、协同过滤等,还提供了模型评估、数据导入等额外的支持功能。 数据结构:RDD或者DataFrame
官网:http://spark.apache.org/mllib/
Spark GraphX
Spark中用于图计算的API,性能良好,拥有丰富的功能和运算符,能在海量数据上自如地运行复杂的图算法。数据结构:RDD或者DataFrame
官网:http://spark.apache.org/graphx/
在Full Stack 理想的指引下,Spark 中的Spark SQL 、SparkStreaming 、MLLib 、GraphX 几大子框架和库之间可以无缝地共享数据和操作,这不仅打造了Spark 在当今大数据计算领域其他计算框架都无可匹敌的优势,而且使得Spark 正在加速成为大数据处理中心首选通用计算平台。
Structured Streaming
Structured Streaming结构化流处理模块针对,流式结构化数据封装到DataFrame中进行分析。
Structured Streaming是建立在SparkSQL引擎之上的可伸缩和高容错的流式处理引擎,可以像操作静态数据的批量计算一样来执行流式计算。当流式数据不断的到达的过程中Spark SQL的引擎会连续不断的执行计算并更新最终结果。简而言之,Structured Streaming提供了快速、可伸缩、可容错、端到端精确的流处理。
官网:http://spark.apache.org/docs/2.4.5/structured-streaming-programming-guide.html