前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我们并没有觉得MapReduce速度慢,直到Spark出现

我们并没有觉得MapReduce速度慢,直到Spark出现

作者头像
Michael阿明
发布2021-09-06 10:01:34
2380
发布2021-09-06 10:01:34
举报
文章被收录于专栏:Michael阿明学习之路

learn from 从0开始学大数据(极客时间)

Spark 拥有更快的执行速度 更友好的编程接口 迅速抢占 MapReduce 的市场份额,成为主流的大数据计算框架

代码语言:javascript
复制
val textFile = sc.textFile("hdfs://...")
// 根据 HDFS 路径生成一个输入数据 RDD
val counts = textFile.flatMap(line => line.split(" "))
						// 每一行文本用空格拆分成单词
                 .map(word => (word, 1))
    // 每个单词进行转换,word => (word, 1),生成 <Key, Value> 的结构
                 .reduceByKey(_ + _)
       // 相同的 Key 进行统计,统计方式是对 Value 求和,(_ + _)
counts.saveAsTextFile("hdfs://...")
// 将这个 RDD 保存到 HDFS

RDD 是 Spark 的核心概念,是弹性数据集(Resilient Distributed Datasets)的缩写

MapReduce 面向过程的大数据计算

Spark 将大规模数据集合抽象成一个 RDD 对象,然后在这个 RDD 上进行各种计算处理,得到一个新的 RDD,继续计算处理,直到得到最后的结果数据。

Spark 可以理解成是面向对象的大数据计算。 在进行 Spark 编程的时候,思考的是一个 RDD 对象需要经过什么样的操作,转换成另一个 RDD 对象

RDD 上定义的函数分两种

  • 转换(transformation)函数,返回值还是 RDD
  • 执行(action)函数,不再返回 RDD
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/02/26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档