This question already has answers here:
Write and read raw byte arrays in Spark - using Sequence File SequenceFile

(2个答案)


3年前关闭。




当前,我们在Pig中有一个实现,可以从记录中生成序列文件,其中记录的某些属性被视为序列文件的键,并且与该键对应的所有记录都存储在一个序列文件中。随着我们不断发展 Spark ,我想知道如何在 Spark 中做到这一点?

最佳答案

saveAsSequnceFile将数据另存为序列文件。

val a=sc.parallelize(List(1,2,3,4,5)).map(x=>(x,x*10)).saveAsSequenceFile("/saw1")

$ hadoop fs -cat /sqes/part-00000
SEQ org.apache.hadoop.io.IntWritable org.apache.hadoop.io.IntWritableZ      tTrh7��g�,��
2[cloudera@quickstart ~]$

读取序列文件使用sc.sequenceFile
 val sw=sc.sequenceFile("/saw1/part-00000", classOf[IntWritable],classOf[IntWritable]).collect

10-08 17:44