Spark API 详解/大白话解释 之 RDD、partition、count、collect

Hhanwen 2016-03-15

RDD定义:

任何数据在Spark中都被转换为RDD。

一个RDD可以看成是一个数组

不过是分到各个分区,分布在不同的机器上,可并行处理。


分区的定义: 
一个RDD有多个RDD分区 
一个RDD分区只在一个机器上 
一个机器可有多个RDD分区 
http://stackoverflow.com/questions/31359219/relationship-between-rdd-partitions-and-nodes


由数据转换为RDD:

举例:从普通数组创建RDD,里面包含了1到9这9个数字,它们分别在3个分区中。这个RDD一共9个元素,每个元素含有一个数字

val a = sc.parallelize(1 to 9, 3)

 举例:读取本地文件README.md来创建RDD,文件中的每一行就是RDD中的一个元素,分区是2

val b = sc.textFile("README.md",2)

 count( ) 

返回RDD的元素个数


collect( ) 
返回整个RDD

相关推荐