欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

SparkAPI详解之用大白话解释RDD、partition、count、collect

程序员文章站 2023-03-19 22:59:09
RDD定义: 任何数据在Spark中都被转换为RDD。 一个RDD可以看成是一个数组 不过是分到各个分区,分布在不同的机器上,可并行处理。 分区的定义:  一个RDD有多个...

RDD定义:

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

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

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

分区的定义: 

一个RDD有多个RDD分区 

一个RDD分区只在一个机器上 

一个机器可有多个RDD分区 

由数据转换为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