spark编程模型(二十二)之RDD存储行为操作(Action Operation)——saveAsTextFile、saveAsSequenceFile、saveAsObjectFile

saveAsTextFile

  • def saveAsTextFile(path: String): Unit

  • def saveAsTextFile(path: String, codec: Class[_ <: CompressionCodec]): Unit

  • saveAsTextFile用于将RDD以文本文件的格式存储到文件系统中

  • codec参数可以指定压缩的类名

  • hdfs://保存到hdfs

  • file:///保存到本地文件系统

      var rdd1 = sc.makeRDD(1 to 10,2)
      scala> rdd1.saveAsTextFile("hdfs://oldsix1:9000/data/rdd/") //保存到HDFS
      
      scala> rdd1.saveAsTextFile("file:///data/rdd/") //保存到本地
      
      scala> rdd1.saveAsTextFile("hdfs://oldsix1:9000/data/rdd/",classOf[com.hadoop.compression.lzo.LzopCodec]) //指定压缩格式保存
    

saveAsSequenceFile

  • saveAsSequenceFile用于将RDD以SequenceFile的文件格式保存到HDFS上
  • 用法同saveAsTextFile

saveAsObjectFile

  • def saveAsObjectFile(path: String): Unit

  • saveAsObjectFile用于将RDD中的元素序列化成对象,存储到文件中

  • 对于HDFS,默认采用SequenceFile保存

      var rdd1 = sc.makeRDD(1 to 10,2)
      scala> rdd1.saveAsObjectFile("hdfs://oldsix1:9000/data/rdd/")
    
posted @ 2018-08-11 01:38  oldsix666  阅读(1217)  评论(0编辑  收藏  举报