spark_API

1、概述

总的来讲,每一个spark驱动程序应用都由一个驱动程序组成,该驱动程序包含一个由用户编写的main方法,该方法会在集群上执行一些并行计算操作。Spark最重要的一个概念是弹性分布式数据集,简称RDD,RDD是一个数据容器,他将分布式在集群上各个节点上的数据抽象为一个数据集,并且RDD能够进行一系列的并行计算操作。可以将RDD理解为一个分布式的List,该List的数据为分布在各个节点上的数据。RDD通过读取Hadoop文件系统中的一个文件进行创建,也可以有一个RDD经过转换得到。用户也可以将RDD缓存到内存,从而高效的处理RDD,提高计算效率。另外,RDD有良好的容错机制。

Spark另外一个重要概念是共享变量。在并行计算时,可以方便的使用共享变量。在默认情况下,执行Spark任务时会在多个节点上并行执行多个task,Spark将每个每个变量的副本分发给各个task。在一些场景下,需要一个能够在各个task间共享的变量。Spark支持两种类型的共享变量:

广播变量:将一个只读变量缓存到集群的每个节点上。例如,将一份数据的只读缓存分发到每个节点。

累加变量:只允许add操作,用于计数、求和。

2、引入spark

groupId = org.apache.spark
artifactId = spark-core_2.10
version = 1.6.0


groupId = org.apache.hadoop
artifactId = hadoop-client
version = <your-hdfs-version>

import org.apache.spark.SparkContext
import org.apache.spark.SparkConf

3、

猜你喜欢

转载自www.cnblogs.com/jinb/p/9653155.html