我有最初由mapreduce作业创建的hdfs数据文件,其输出设置如下所示,
job.setOutputKeyClass(BytesWritable.class);
job.setOutputValueClass(BytesWritable.class);
job.setOutputFormatClass(SequenceFileAsBinaryOutputFormat.class);
SequenceFileAsBinaryOutputFormat.setOutputCompressionType(job, CompressionType.BLOCK);
现在,我正尝试使用Flink DataSet API(版本1.5.6)读取这些文件,我调查了flink doc,但不知道如何做到这一点。
有人可以在这里阐明一下吗?非常感谢。
答案 0 :(得分:1)
我想您错过的是一个附加的依赖项:"org.apache.flink" %% "flink-hadoop-compatibility" % 1.7.2
添加此内容后,即可运行:
val env = ExecutionEnvironment.getExecutionEnvironment
env.createInput(HadoopInputs.readSequenceFile[Long, String](classOf[Long], classOf[String], "/data/wherever"))
在https://ci.apache.org/projects/flink/flink-docs-stable/dev/batch/hadoop_compatibility.html
中找到有关内容和方式的更详细的文档。希望有帮助