确定 pcollection 是否为空
Determine if a pcollection is empty or not
在 apache beam(2.1.0) 中写入文本文件之前如何检查 pcollection 是否为空?
我在这里要做的是将文件分成指定数量的 pcollections,这些 pcollections 通过 ValueProvider 作为参数提供给管道。由于此 ValueProvider 在管道构建时不可用,我声明了一个不错的 26 号(字母总数,这是用户可以输入的最大编号)以使其可用于 .withOuputTags()
。所以我得到 26 个元组标签,在写入文本文件之前我必须从中检索 pcollections。所以在这里,只有少数用户输入的标签会被填充,其余的都是空的。因此,我想在应用 TextIO.write()
.
之前忽略某些标签返回的空 pcollections
看来你真的想把一个集合写到多组文件中,其中有些组可能是空的。执行此操作的正确方法是使用 DynamicDestinations
API - 请参阅 TextIO.write().to(DynamicDestinations),它将在 Beam 2.2.0 中提供,应该会在接下来的几周内被删除。同时,如果你想使用它,你可以自己在 HEAD 构建 Beam 的快照。
在 apache beam(2.1.0) 中写入文本文件之前如何检查 pcollection 是否为空?
我在这里要做的是将文件分成指定数量的 pcollections,这些 pcollections 通过 ValueProvider 作为参数提供给管道。由于此 ValueProvider 在管道构建时不可用,我声明了一个不错的 26 号(字母总数,这是用户可以输入的最大编号)以使其可用于 .withOuputTags()
。所以我得到 26 个元组标签,在写入文本文件之前我必须从中检索 pcollections。所以在这里,只有少数用户输入的标签会被填充,其余的都是空的。因此,我想在应用 TextIO.write()
.
看来你真的想把一个集合写到多组文件中,其中有些组可能是空的。执行此操作的正确方法是使用 DynamicDestinations
API - 请参阅 TextIO.write().to(DynamicDestinations),它将在 Beam 2.2.0 中提供,应该会在接下来的几周内被删除。同时,如果你想使用它,你可以自己在 HEAD 构建 Beam 的快照。