正确设置项目后,我需要读取/导入几个.bsq
文件到我的环境中。我尝试使用env.readFile()方法,如下所示:
DataSet<T> data = env.readFile(*insertFileInputFormatHere*, filePath);
但我无法得到合适的FileInputFormat
。由于它是抽象的,我不能拥有自己的实例。我应该扩展abstract class FileInputFormat
并使用我自己的扩展来实例化FileInputFormat
吗?还是有另一种我不认识的方式?
答案 0 :(得分:6)
似乎.bsq
文件是二进制格式,其中不存在Flink或Hadoop InputFormat(我包括Hadoop InputFormats,因为Flink也支持Hadoop IF)
因此,您必须实现自己的InputFormat
来读取文件。我建议您从Flink的org.apache.flink.api.common.io.FileInputFormat
扩展您自己的InputFormat。
要使用您自己的输入格式,您必须将其称为
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
env.createInput(new MyInputFormat());