Spark 基础
本文来自 B站 黑马程序员 - Spark教程 :原地址
什么是Spark
什么是Spark 1.1
定义:Apache Spark是用于大规模数据(large-scala data)处理的统一(unified)分析引擎
Spark最早源于一篇论文 Resilient Distributed Datasets:A Fault-Tolerant Abstraction for In-Memory Cluster Computing,该论文是由加州大学柏克莱分校的Matei Zaharia 等人发表的。论文中提出了一种弹性分布式数据集(即RDD)的概念。
翻译过来:RDD是一种分布式内存抽象,其使得程序员能够在大规模集群中做内存运算,并且有一定的容错方式。而这也是整个Spark的核心数据结构,Spark整个平台都围绕着RDD进行。
什么是Spark 1.2
定义:Apache Spark是用于大规模数据(large-scala data)处理的统一(unified)分析引擎
简而言之,Spark借鉴了MapReduce 思想发展而来,保留了其分布式并行计算的优点并改进了其明显的缺陷,让中间数据存储在内存中提高了运行速度,并提供丰富的操作数据的API提高了开发速度。
什么是Spark 1.3
统一分析引擎?
Spark是一款分布式内存计算的统一分析引擎。
其特点就是对任意类型的数据进行自定义计算。
Spark可以计算:结构化,半结构化,非结构化等各种类型的数据结构,同时也支持使用Python,java,Scala,R以及SQL语言去开发应用程序计算数据。
Spark的适用面非常广泛,所以,被称之为统一的(适用面广)的分析引擎(数据处理)
Spark 历史
Spark 历史 1.1
Spark 是加州大学伯克分校AMP实验室(Algorithms Machines and People Lab)开发的通用大数据处理框架
Spark的发展历史,经历过几大重要阶段,如下图所示: