关闭

Spark map 处理表格数据

97人阅读 评论(0) 收藏 举报
分类:
Spark <wbr>map <wbr>处理表格数据

总结:
- Spark 中 map函数会对每一条输入进行指定的操作,然后为每一条输入返回一个对象;
- 而flatMap函数则是两个操作的集合——正是“先映射后扁平化”:
   操作1:同map函数一样:对每一条输入进行指定的操作,然后为每一条输入返回一个对象
   操作2:最后将所有对象合并为一个对象

使用map对表格数据进行变换常用方法

地区代码 地区名称 所属城市 所属省份
1000 北京市 1000 1000
1027 密云县 1000 1000
1028 延庆县 1000 1000
1100 天津市 1100 1100
1121 宁河县 1100 1100
1123 静海县 1100 1100
1125 蓟 县 1100 1100
1200 河北省 1200 1200
1210 石家庄市 1210 1200
1211 井陉县 1210 1200
1212 鹿泉市 1210 1200
1213 正定县 1210 1200
1214 栾城县 1210 1200

 val textFile = sc.textFile("xrli/citycode") 
    val sp = textFile.map{ line => 
      val fields = line.split("\\t")                      //map中的一个临时变量
     (fields(0),fields(1),fields(2),fields(3))         //每行变成一个数组
    }
      
    val city = sp.filter(x => x._1 == x._3 || x._3=="NA").map(x => (x._2,x._1))
    city.saveAsTextFile("xrli/city") 


map(func):对调用map的RDD数据集中的每个element都使用func,然后返回一个新的RDD,这里是一个
(地区名称,所属城市)

(北京市,1000)
(天津市,1100)
(河北省,1200)
(石家庄市,1210)
(唐山市,1240)






0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:34032次
    • 积分:437
    • 等级:
    • 排名:千里之外
    • 原创:76篇
    • 转载:14篇
    • 译文:0篇
    • 评论:3条
    最新评论