4.RDD操作
一、 RDD创建
- 从本地文件系统中加载数据创建RDD
2.从HDFS加载数据创建RDD
启动hdfs
上传文件
查看文件
加载
停止hdfs
3.通过并行集合(列表)创建RDD
输入列表、字符串、numpy生成数组
二、 RDD操作
转换操作
1.filter(func)
显式定义函数
lambda函数
2.map(func)
- 字符串分词
显式定义函数
lambda函数
2. 数字加100
显式定义函数
lambda函数
3.字符串加固定前缀
显式定义函数
lambda函数
3. flatMap(func)
- 分词
2.单词映射成键值对
4.reduceByKey()
1.统计词频,累加
2.乘法规则
5.groupByKey()
(1)单词分组
(2)查看分组的内容
(3)分组之后做累加 map
6.sortByKey()
(1)词频统计按单词排序
7.sortBy()
(1)词频统计按词频排
三、行动操作
1.foreach(print)
foreach(lambda a:print(a.upper())
2.collect()
3.count()
4.take(n)
5.reduce()
数值型的rdd元素做累加与reduceByKey区别:
reduce:将RDD中元素前两个传给输入函数,产生一个新的return值,新产生的return值与RDD中下一个元素(第三个元素)组成两个元素,再被传给输入函数,直到最后只有一个值为止。
redeceByKey:对元素为KV对的RDD中Key相同的元素的Value进行binary_function的reduce操作,因此,Key相同的多个元素的值被reduce为一个值,然后与原RDD中的Key组成一个新的KV对。