RDD创建
1、从文件系统中加载数据创建RDD
val lines: RDD[String] = sc.textFile("G:/person.txt")
2、通过并行集合(数组)创建RDD
可以调用SparkContext的parallelize方法,从一个已经存在的集合(数组)上创建RDD
val lines: RDD[String] = sc.parallelize(Array("hello java","hello spark","hello scala"))
常用的RDD转换操作API
filter(func):筛选出满足函数func的元素,并返回一个新的数据集。
map(func):将每个元素传递到函数func中,并将结果返回为一个新的数据集。
flatMap(func):与map相似,但每个输入元素都可以映射到0或多个映射结果。
groupByKey():应用于(k,v)键值对的数据集时,返回一个新的(k,Iterable)形式数据集,例如有三个hello(hello,(1,1,1))
reduceByKey(func):应用于(k,v)键值对的数据集时,返回一个新的(k,v)形式数据集,其中每个值是将每个key传递到函数 func中进行聚合后的结果。
常用RDD的行动操作API
count():返回数据集中的元素个数。
collect():以数组的形式返回数据集中的所有元素。
first():返回数据集中第一个元素。
take(n):以数组的形式返回数据集中的前n个元素。
reduce(func):通过函数func(输入两个参数并返回一个值)聚合数据集中的元素。
foreach(func):将数据集中的每个元素传递到函数func中运行。