RDD 中action的saveAsTextFile和saveAsObjectFile详解 -- (视频笔记)

 

saveAsTextFile
将RDD中的每个元素变为(null,element.toString)
每个分区都会存储成一个block,基本都是一一映射。
sc.textFile("hdfs://hadoop-1:9000/data/test/test.dat").flatMap(_.split(" ")).map(word=>(word,1)).reduceByKey(_+_).saveAsTextFile("/data/test/word_count_result.dat")
结果直接存储在hdfs中

saveAsObject
现将RDD转为数组,然后序列化,然后将结果变换为(null,byteWritable)
sc.textFile("hdfs://hadoop-1:9000/data/test/test.dat").flatMap(_.split(" ")).map(word=>(word,1)).reduceByKey(_+_).saveAsObjectFile("/home/datauser/word_count_result.dat")
结果直接存储在hdfs中

posted @ 2015-12-29 14:15  逸新  阅读(3512)  评论(1编辑  收藏  举报