文档章节

spark中flatmap和map的区别

牧师-Panda
 牧师-Panda
发布于 2017/08/18 01:04
字数 143
阅读 31
收藏 0

假设有一个序列,里面装了一些人

val persons = Seq(john, mary, alice, bob)

每个人有一个朋友列表,可以这么访问:

person.friends

比如mary.friends可能返回Seq(harry, hermione, ron)

那么我们用map的话,可以把persons里面的每一个元素都变成朋友列表:

persons.map(person=>person.friends)

seq(
    seq(harry, hermione, ron)
    seq(sam, frodo)
    seq()
    seq(jamie, tyrian, cersei)
)

然而你希望只需要访问一层就可以得到对象序列,这时候就可以用flatmap解决

persons.flatmap(person=>person.friends)

seq(
    harry, hermione, ron,
    sam, frodo,
    jamie, tyrian, cersei
)

 

© 著作权归作者所有

共有 人打赏支持
牧师-Panda
粉丝 30
博文 146
码字总数 180044
作品 0
浦东
最最简单的~WordCount¬

sc.textFile("hdfs://....").flatMap(line =>line.split(" ")).map(w =>(w,1)).reduceByKey(+).foreach(println) 不使用reduceByKey sc.textFile("hdfs://....").flatMap(l=>l.split(" ")).m......

雪童子
2015/10/21
0
0
[Kafka与Spark集成系列二] Spark的安装及简单应用

版权声明:本文为博主原创文章,未经博主朱小厮允许不得转载。 https://blog.csdn.net/u013256816/article/details/82082019 下载Spark安装包是安装的第一步,下载地址为http://spark.apache...

朱小厮
08/26
0
0
Spark与Hadoop计算模型的比较分析

Spark与Hadoop计算模型的比较分析 最近很多人都在讨论Spark这个貌似通用的分布式计算模型,国内很多机器学习相关工作者都在研究和使用它。   Spark是一个通用的并行计算框架,由UCBerkele...

jmppok
2015/03/25
0
0
java写Spark程序之PairFaltMapFunction

PairFaltMapFunction 类似java8的flatmap方法,会返回一个value为集合的map. 在这里需要注意的是实现PairFaltMapFunction Java版本 spark2.0以下 JavaPairRDD<String, Integer> wordPairRDD......

那年的暖风
今天
0
0
Spark: Transformation和Action

本文提供的是0.7.3版本中的action和transformation接口,RDD提供了两种类型的操作:transformation和action 1,transformation是得到一个新的RDD,方式很多,比如从数据源生成一个新的RDD,从...

hanzhankang
2014/02/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

区块链教程以太坊源码分析chain-indexer区块链索引一

兄弟连区块链教程以太坊源码分析chain-indexer区块链索引一 chain_indexer 区块链索引 chain_indexer.go 源码解析 chain_indexer 顾名思义, 就是用来给区块链创建索引的功能。 之前在eth协议...

兄弟连区块链入门教程
12分钟前
1
0
社会化分享插件集成分享

一.前提摘要 社会化分享每个app必备的推广需求,无论是拉新,邀请,游戏奖励,等等都离不开分享的影子,下面我们介绍下社会化分享的插件; 首先要说下,现在的社交App,社区App等,国内外的...

佳妮
12分钟前
1
0
IOC 之 Spring 统一资源加载策略

统一资源:Resource org.springframework.core.io.Resource 为 Spring 框架所有资源的抽象和访问接口 它继承 org.springframework.core.io.InputStreamSource接口 作为所有资源的统一抽象,S...

职业搬砖20年
13分钟前
1
0
Python爬虫实战入门一:工具准备

一、基础知识 使用Python编写爬虫,当然至少得了解Python基本的语法,了解: 基本数据结构 数据类型 控制流 函数的使用 模块的使用 不需要过多过深的Python知识,仅此而已。 个人推荐《Pytho...

糖宝lsh
17分钟前
1
0
Hanlp中使用纯JAVA实现CRF分词

Hanlp中使用纯JAVA实现CRF分词 与基于隐马尔可夫模型的最短路径分词、N-最短路径分词相比,基于条件随机场(CRF)的分词对未登录词有更好的支持。本文(HanLP)使用纯Java实现CRF模型的读取与...

左手的倒影
19分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部