Я пытаюсь выполнить какую-то фильтрацию файла последовательности и сохранить его в другом файле последовательности, например:
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]],
Насколько мне известно, SequenceFileOuputFormat расширяет FileOutputFormat, который расширяет OutputFormat, но я что-то упускаю.
Не могли бы вы помочь?
Я поднял проблему с командой Spark на https://issues.apache.org/jira/browse/SPARK-25405