我正在尝试对序列文件进行某种筛选,并将其保存回另一个序列文件,例如:
val subset = ???
val hc = sc.hadoopConfiguration
val serializers = List(
classOf[WritableSerialization].getName,
classOf[ResultSerialization].getName
).mkString(",")
hc.set("io.serializations", serializers)
subset.saveAsNewAPIHadoopFile(
"output/sequence",
classOf[ImmutableBytesWritable],
classOf[Result],
classOf[SequenceFileOutputFormat[ImmutableBytesWritable, Result]],
hc
)
编译后,我收到以下错误:
Class[org.apache.hadoop.mapred.SequenceFileOutputFormat[org.apache.hadoop.hbase.io.ImmutableBytesWritable,org.apache.hadoop.hbase.client.Result]](classOf[org.apache.hadoop.mapred.SequenceFileOutputFormat])
required: Class[_ <: org.apache.hadoop.mapreduce.OutputFormat[_, _]] classOf[SequenceFileOutputFormat[ImmutableBytesWritable, Result]],
据我所知,SequenceFileOutputFormat扩展了fileoutputformat,后者扩展了outputformat,但我遗漏了一些东西。
你能帮忙吗?
我和spark团队在https://issues.apache.org/jira/browse/spark-25405
暂无答案!
目前还没有任何答案,快来回答吧!