3个案例教你用Spark解决Map Reduce问题!
来源:互联网 发布:开源数据展示平台 编辑:程序博客网 时间:2024/06/05 22:34
Spark是一个Apache项目,它被标榜为“快如闪电的集群计算”。它拥有一个繁荣的开源社区,并且是目前最活跃的Apache项目。
Spark提供了一个更快、更通用的数据处理平台。和Hadoop相比,Spark可以让你的程序在内存中运行时速度提升100倍,或者在磁盘上运行时速度提升10倍。同时spark也让传统的mapreducejob开发变得更加简单快捷。之前我们大圣众包小编也为大家整理过Spark书单和方法,而本文将简单介绍几个经典hadoop的mr按理用spark实现,来让大家熟悉spark的开发。
最大值最小值
求最大值最小值一直是Hadoop的经典案例,我们用Spark来实现一下,借此感受一下spark中mr的思想和实现方式。话不多说直接上code
预期结果:
max:1001min:2
思路和hadoop中的mr类似,设定一个key,value为需要求最大与最小值的集合,然后再groupBykey聚合在一起处理。第二个方法就更简单,性能也更好。
平均值问题
求每个key对应的平均值是常见的案例,在spark中处理类似问题常常会用到combineByKey这个函数,详细介绍请google一下用法,下面看代码:
我们让每个partiton先求出单个partition内各个key对应的所有整数的和sum以及个数count,然后返回一个pair(sum,count)在shuffle后累加各个key对应的所有sum和count,再相除得到均值.
TopN问题
Topn问题同样也是hadoop种体现mr思想的经典案例,那么在spark中如何方便快捷的解决呢:
思路很简单,把数据groupBykey以后按key形成分组然后取每个分组最大的2个。预期结果:
以上简单介绍了一下hadoop中常见的3个案例在spark中的实现。如果读者们已经接触过或者写过一些hadoop的mapreducejob,那么会不会觉得在spark中写起来方便快捷很多呢。
- 3个案例教你用Spark解决Map Reduce问题!
- spark算子map reduce小案例
- Map-Reduce和Spark
- map reduce解决数据不平衡问题
- 第137课: Spark面试经典系列之数据倾斜解决之Map 端Reduce及问题思考
- 教你写map-reduce--lesson1
- Spark RDD---api(map&reduce)
- Map Reduce个数问题
- Pig、Hive、Map Reduce 解决分组 Top K 问题
- Spark RDD API详解Map和Reduce
- Spark RDD API详解 Map和Reduce
- Spark RDD API详解 Map和Reduce
- Spark RDD API详解 Map和Reduce
- Spark RDD API详解 Map和Reduce
- Spark RDD 之 map和reduce
- hadoop(3)map reduce
- 十张图带你入门Map/Reduce
- 十张图带你入门Map/Reduce
- delete一个指针之后,要记得设置为NULL
- Axure 盗版使用被终结,我们该怎么办
- redis sentinel哨兵机制的源码分析
- 程序员值得一看的博客及网站
- 阿里云登入主页设置
- 3个案例教你用Spark解决Map Reduce问题!
- Linux运维之加密/解密原理、自建CA及搭建基于https的Apache
- Cenots6.4下mysql5.6安装及主从配置
- iOS 去掉粘贴文字中的换行(适配安卓)
- Vue.js中Directive知识
- ANSI C (5) —— 结构、联合、位字段、枚举
- CentOS7架设DNS服务器(Bind)
- Android webView详解
- dtd