2

原文地址:

http://blog.52sox.com/Spark-d...

在大数据的时代,数据的各种术语层出不穷,比如数据仓库、数据湖,还有比较热门的Hadoop、Spark,让人眼花缭乱。在这里,我们主要介绍的是Spark,从宏观的角度来介绍Spark到底是什么。
我们将解决如下几个简单的问题:

  • Spark是什么
  • Spark的组成
  • Spark的用户和用途

下面我们分别进行叙述。

Spark是什么

首先,我们开始第1个简单的问题,Spark是什么?
Spark是什么,Spark是1个用来实现快速通用的集群计算的平台。
在速度方面,Spark扩展了广泛使用的MapReduce计算模型,高效地支持更多计算模型,包括交互式查询和流处理,并能够在内存中进行计算。
总的来说,Spark适用于各种各样原先需要在多种不同的分布式平台下的场景,包括批处理、交互式查询、流处理。并通过1个统一的框架支持这些不同的计算,大大减轻了原先需要对各种平台分别管理的负担。
另外,Spark还提供了丰富的接口(支持Python、Java、Scala)和程序库外,还能与其他大数据工具密切配合使用,例如运行在Hadoop集群上。

Spark的组成

Spark项目包含多个紧密集成的组件,其核心是1个可以对很多计算任务、多个工作机器或计算集群上的应用进行调度、分发以及监控的计算引擎。
其各个组件主要包括:

  • Spark Core,Spark的基本功能,包括任务调度、内存管理、错误恢复与存储系统交互等模块,另外还有RDD(对弹性分布式数据集,resilient distributed dataset)的API定义
  • Spark SQL,Spark操作结构化的程序包,用于数据的查询
  • Spark Streaming,提供对实时数据进行流式计算的组件
  • MLib,提供常见机器学习功能的程序库
  • GraphX,进行并行图计算的程序库
  • 集群管理器,提供Hadoop YARN,Apache Mesos的支持

Spark的用户和用途

Spark主要面向两大目标人群:

  • 数据科学家
  • 工程师

可以用于以下两方面:

  • 数据科学,更多的主要是数据分析领域,例如统计、机器学习建模、数据转换
  • 数据处理,通过丰富的接口来快速实现常见的任务以及应用的监视、审查和性能调优

参考书籍:

《Learning Spark:Lightning-fast Data Analysis》P1-6

我勒个去
1.9k 声望161 粉丝

是1个执着、低调的人