第9章 运用Spark引擎
在本章,我们将向读者介绍Spark引擎以及Spark架构的基础知识,并让读者了解在实际使用中选用Spark的必要性和实用性。
本章主要包括以下内容
- Spark概述
- Spark的独特优势
- Spark用例
- Spark架构——引擎内部的运行模式
- Spark的语用概念
- Spark 2.x——数据框和数据集的出现
9.1 Spark概述
Apache Spark是一个高度分布式计算引擎,其计算的速度与可靠性可以得到保证。Spark基于Hadoop框架,在基于内存计算方面进一步增强,以满足交互式查询和接近实时流处理的需要。并行处理、集群和基于内存的处理等使得Spark拥有性能和可靠性方面的优势。Apache Spark主要的优势如下。
- 速度和效率:当它运行在传统的基于磁盘的HDFS之上时,由于内存计算和磁盘I/O的空间节省,速度提高了100倍。它将中间结果保存在内存中,从而节省了总执行时间。
- 可扩展性和兼容性:有多种交互API供开发人员选择,包含Java、Scala和Python API等,以实现开箱即用。
- 分析和机器学习:为所有机器学习和图计算提供了强大的支持。事实上,在基于大规模数据集开展复杂数据科学研究和人工智能建模等领域,Spark已经成为开发人员的首选。
Spark框架和调度器
Spark框架中的各个组件以及可部署的候选调度器如图9-1所示。
图9-1
图9-1包含了Spark生态系统的所有基本组件,尽管在一段时间内有些组件已经过时了,但本书在适当的时候也会让用户熟悉这些组件。以下是Spark框架的基本组成部分。 ...
Get 实时数据处理和分析指南 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.