大数据分布式计算工具Spark数据计算实战讲解(filter方法,distinct方法,sortby方法)(3)

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取


##  filter方法


功能:过滤想要的数据进行保留



from pyspark import SparkConf, SparkContext
import os
os.environ[‘pyspark_python’] = “D:/python/JIESHIQI/python.exe”
#创建一个sparkconf类对象
conf = SparkConf().setMaster(“local[*]”).setAppName(“test_spark_app”)

#基于sparkconf类对象创建sparkcontext类对象
sc = SparkContext(conf=conf)

#准备一个rdd
rdd = sc.parallelize([1,2,3,4,5])
#对rdd的数据进行过滤
rdd2 = rdd.filter(lambda num: num % 2 == 0)

print(rdd2.collect()) #[2, 4]


##  distinct算子


功能:对rdd数据进行去重,返回新rdd



from pyspark import SparkConf, SparkContext
import os
os.environ[‘pyspark_python’] = “D:/python/JIESHIQI/python.exe”
#创建一个sparkconf类对象
conf = SparkConf().setMaster(“local[*]”).setAppName(“test_spark_app”)

#基于sparkconf类对象创建sparkcontext类对象
sc = SparkContext(conf=conf)

#准备一个rdd
rdd = sc.parallelize([1,2,3,4,5,2,1,3,4,5])
#对rdd的数据进行过滤

rdd2 = rdd.filter(lambda num: num % 2 == 0)

print(rdd.distinct().collect())
#[1, 2, 3, 4, 5]


## sortby算子


功能:对rdd数据进行排序,基于你指定的排序依据



from pyspark import SparkConf, SparkContext
import os
os.environ[‘pyspark_python’] = “D:/python/JIESHIQI/python.exe”
#创建一个sparkconf类对象
conf = SparkConf().setMaster(“local[*]”).setAppName(“test_spark_app”)

#基于sparkconf类对象创建sparkcontext类对象
sc = SparkContext(conf=conf)
#读取文件信息
rdd = sc.textFile(“D:/hello.txt”)
#取出全部的单词
word_rdd = rdd.flatMap(lambda x: x.split(" "))
print(word_rdd.collect())
#[‘apple’, ‘bean’, ‘banana’, ‘spark’, ‘haoop’, ‘python’, ‘java’, ‘go’, ‘c++’]

#将所有单词都转换成二元元组,单词为key,value设置为1
rdd2 = word_rdd.map(lambda word: (word, 1))
print(rdd2.collect())
#[(‘apple’, 1), (‘bean’, 1), (‘banana’, 1), (‘spark’, 1), (‘haoop’, 1), (‘python’, 1), (‘java’, 1), (‘go’, 1), (‘c++’, 1)]

#分组并求和
rdd3 = rdd2.reduceByKey(lambda a, b: a+b)
print(rdd3.collect())

#对结果进行排序
final_rdd = rdd3.sortBy(lambda x: x[1],ascending=True,numPartitions=1)
print(final_rdd)



## 练习案例


需求,复制以上内容到文件中,使用Spark读取文件进行计算:


•各个城市销售额排名,从大到小


•全部城市,有哪些商品类别在售卖


•北京市有哪些商品类别在售卖



img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

需要这份系统化资料的朋友,可以戳这里获取

  • 15
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值