2017-08-27 67 views
0

如何在写入apache beam(2.1.0)中的文本文件之前检查pcollection是否为空?确定pcollection是否为空

我在这里要做的是将一个文件分解成指定数字的集合,这个集合通过ValueProvider作为参数传递给管道。由于此ValueProvider在管道施工时间不可用,因此我声明一个不错的26号(总字母数,这是用户可以输入的最大数量),使其可用于.withOuputTags()。所以我得到26个元组标签,在写入文本文件之前,我必须从中检索pcollections。所以在这里,只有少数由用户输入的标签会被填充,其余都是空的。因此,我想在应用TextIO.write()之前忽略某些标签返回的空白集合。

回答

0

看起来实际上你想写一个集合到多组文件中,其中一些集合可能是空的。执行此操作的正确方法是使用DynamicDestinations API - 请参阅TextIO.write().to(DynamicDestinations),该软件将在Beam 2.2.0中提供,应在接下来的几周内将其削减。同时,如果你想使用它,你可以在HEAD上自己创建Beam的快照。

+0

谢谢!如果只是几周的问题,将等待。 – Bluecrow