文件名是否包含要拾取的tetFileStream的编号?仅当文件名包含数字时,我的程序才会获取新文件。忽略所有其他文件,即使它们是新文件。是否有任何设置需要更改以获取所有文件?请帮忙
答案 0 :(得分:0)
没有。它会扫描目录以查找窗口中显示的新文件。如果您正在写入S3,请使用您的代码直接写入,因为文件在最终关闭()之前不会出现 - 无需重命名。相反,如果您正在处理针对普通文件系统的文件流源,则应创建扫描目录并在最后重命名 - 否则可能会读取正在进行的工作文件。一旦阅读:永远不要重读。
答案 1 :(得分:0)
花了几个小时分析堆栈跟踪后,我发现问题是S3地址。我提供的是“s3:// mybucket”,它适用于Spark 1.6和Scala 2.10.5。在Spark 2.0(和Scala 2.11)上,它必须以“s3:// mybucket /”提供。可能是一些与Regex相关的东西。现在工作正常。感谢您的帮助。