我在Java中使用DataFlow(Apache Beam(。我有多个文件,每个文件都可能很大。目前我使用fileIo来读取每个文件,它可以并行读取所有文件,但我也想并行读取文件的每一行。我们可以在FileIO之后使用TextIo吗。如果可能的话,我们如何才能做到这一点,我已经搜索了,但没有找到任何解决方案。如有任何帮助,我们将不胜感激。
目前我正在使用以下代码来读取每个文件
PCollection<FileIO.ReadableFile> inputFiles = pipeline.apply("Poll Input Files", FileIO.match().filepattern(fullPath)).apply(FileIO.readMatches());
您可以使用fileIOmatch
转换和TextIO.readFiles()
来读取行。有关示例,请参见此处。