如何在 Apache Flink Streaming 0.10.0 中将 OVERWRITE 指定为 writeAsText?
How to specify OVERWRITE to writeAsText in Apache Flink Streaming 0.10.0?
我在 scala 中有一个方法
counts.writeAsText(path_to_file)
文件已存在时抛出异常提示指定
File or directory already exists. Existing files and directories are not overwritten in NO_OVERWRITE mode. Use OVERWRITE mode to overwrite existing files and directories.
。但是我没有在DataStream class中找到接受org.apache.flink.core.fs.FileSystem.WriteMode
的方法。只有一个接受Long毫秒的签名。
Scala API 当前缺少相应 WriteMode
参数的重载。这是一个错误,将被修复。
同时,您始终可以通过 fs.overwrite-files
配置参数来控制 Flink 的默认覆盖行为。如果您在 flink-conf.yaml
中将此参数设置为 fs.overwrite-files: true
,则写入文件将始终覆盖。
对应JIRA issue的状态可以查看here.
请注意:此问题现已修复。你可以打电话给.writeAsText(filePath, org.apache.flink.core.fs.FileSystem.WriteMode.OVERWRITE)
我在 scala 中有一个方法
counts.writeAsText(path_to_file)
文件已存在时抛出异常提示指定
File or directory already exists. Existing files and directories are not overwritten in NO_OVERWRITE mode. Use OVERWRITE mode to overwrite existing files and directories.
。但是我没有在DataStream class中找到接受org.apache.flink.core.fs.FileSystem.WriteMode
的方法。只有一个接受Long毫秒的签名。
Scala API 当前缺少相应 WriteMode
参数的重载。这是一个错误,将被修复。
同时,您始终可以通过 fs.overwrite-files
配置参数来控制 Flink 的默认覆盖行为。如果您在 flink-conf.yaml
中将此参数设置为 fs.overwrite-files: true
,则写入文件将始终覆盖。
对应JIRA issue的状态可以查看here.
请注意:此问题现已修复。你可以打电话给.writeAsText(filePath, org.apache.flink.core.fs.FileSystem.WriteMode.OVERWRITE)