Python Apache Beam,固定Windows到底如何工作?

问题描述 投票:0回答:2

我正在使用SubPub将数据发布到BEAM。我一直试图以60秒的间隔使用固定窗口,但是当我发布数据时,数据会立即显示在屏幕上。不应该每60秒打印一次吗?

代码是这样的:

objects = lines | 'Ex' >> beam.ParDo(ExtractorAndCounter())
windowed_lines = (
            objects
            | beam.WindowInto(window.FixedWindows(60))
            | 'print' >> beam.Map(print))

而ExtractorAndCounter是一个简单的解析器,仅此而已。

python apache-beam
2个回答
0
投票

在梁模型中,“下一次应用分组变换”时使用示例中的固定窗口作为PCollection的开窗功能。例如,GroupByKey或Combine。映射是元素明智的,而不是分组变换。

在以下链接的第7.1节中有一些不错的信息。

7.1 Windowing


0
投票

所以问题似乎是我没有适当地处理从窗户出来的东西。一旦在下面添加了GroupByKey,然后在“打印”后,它便开始正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.