作为我的数据流的一部分,我有一个CombineFn
,它返回一个dicts列表。我想将每个dict打印为avro文件作为记录。但是,当我将beam.io.WriteToAvro
应用于CombineFn
输出时,它会失败。
似乎完整的dicts列表被视为单个元素。有什么方法可以让它像对待元素一样对待它吗?
答案 0 :(得分:1)
希望有更好的方法可以做到这一点,但我可以通过应用以下DoFn
来打破列表:
class BreakList(beam.DoFn):
def process(self, element):
for e in element:
yield e