📅  最后修改于: 2020-12-03 09:11:07             🧑  作者: Mango
火花组件
Spark项目由不同类型的紧密集成的组件组成。 Spark的核心是可以调度,分发和监视多个应用程序的计算引擎。
让我们详细了解每个Spark组件。
火花芯
- Spark Core是Spark的核心,并执行核心功能。
- 它包含用于任务计划,故障恢复,与存储系统交互以及内存管理的组件。
Spark SQL
- Spark SQL构建在Spark Core的顶部。它提供对结构化数据的支持。
- 它允许通过SQL(结构化查询语言)以及SQL的Apache Hive变体(称为HQL)(Hive查询语言)来查询数据。
- 它支持JDBC和ODBC连接,该连接在Java对象与现有数据库,数据仓库和商业智能工具之间建立关系。
- 它还支持各种数据源,例如Hive表,Parquet和JSON。
火花流
- Spark Streaming是一个Spark组件,它支持流数据的可伸缩和容错处理。
- 它使用Spark Core的快速调度功能来执行流分析。
- 它以小批量接收数据,并对该数据执行RDD转换。
- 它的设计确保为流数据编写的应用程序可以在不做任何修改的情况下重用于分析历史数据批次。
- Web服务器生成的日志文件可以视为数据流的实时示例。
图书馆
- MLlib是一个机器学习库,其中包含各种机器学习算法。
- 这些包括相关性和假设检验,分类和回归,聚类以及主成分分析。
- 它比Apache Mahout使用的基于磁盘的实现快9倍。
GraphX
- GraphX是用于处理图形和执行图形并行计算的库。
- 它有助于创建一个有向图,其中每个顶点和边都具有任意属性。
- 为了操纵图,它支持各种基本运算符,如子图,联接顶点和聚合消息。