Spark操作——行动操作(二)

  • 集合标量行动操作

  • 存储行动操作

 

存储行动操作

  • saveAsTextFile(path: String): Unit

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

    将RDD以文本文件的格式保存到文件系统中,codec参数用于指定压缩类型

  • saveAsSequenceFile(path: String, codec: Option[Class[_ <: CompressionCodec]] = None): Unit

    将RDD以Sequence的文件格式保存到HDFS文件系统中

  • saveAsObjectFile(path: String): Unit

    将RDD的元素序列化成对象,保存到文件系统中。

scala> var rdd = sc.makeRDD(1 to 10, 2)
rdd: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[82] at makeRDD at <console>:24

// 输出两个文件,因为分区个数为2,每个分区对应一个文件
scala> rdd.saveAsTextFile("/Users/lyf/Desktop/output")
  • saveAsHadoopFile(F <: OutputFormat[K, V])(path: String)(implicit fm: ClassTag[F]): Unit

  • saveAsHadoopFile(F <: OutputFormat[K, V])(path: String, codec: Class[_ <: CompressionCodec])(implicit fm: ClassTag[F]): Unit

  • saveAsHadoopFile(path: String, keyClass: Class[_], valueClass: Class[_], outputFormatClass: Class[_ <: OutputFormat[_, _]], codec: Class[_ <: CompressionCodec]): Unit

  • saveAsHadoopFile(path: String, keyClass: Class[_], valueClass: Class[_], outputFormatClass: Class[_ <: OutputFormat[_, _]], conf: JobConf=……, codec: Option[Class[_ <: CompressionCodec]]=None): Unit

    saveAsHadoopFile操作将RDD存储到HDFS上,支持旧Hadoop API,可以指定outputKeyClass、outputValueClass以及压缩格式

  • saveAsHadoopDataset(conf: JobConf): Unit

    saveAsHadoopDataset将RDD存储到除了HDFS的其他存储中,比如Hbase。JobConf中通常需要设置5个参数:输出路径、Key的类型、Value的类型、输出格式以及压缩相关的参数

 

  • saveAsNewAPIHadoopFile[F <: OutputFormat[K, V]](path: String): Unit

  • saveAsNewAPIHadoopFile(path: String, keyClass: Class[_], valueClass: Class[_], outputFormatClass: Class[_ <: OutputFormat[_, _]], conf: Configuration=self.context.hadoopConfiguration): Unit

    新版的Hadoop API,功能通saveAsHadoopFile。

 

  • saveAsNewAPIHadoopDataset(conf: Configutation): Unit

    新版的Hadoop API,功能通saveAsHadoopDataset

 

 

参考:

[1] 郭景瞻. 图解Spark:核心技术与案例实战[M]. 北京:电子工业出版社, 2017.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值