JdbcIO.Write.withResults和Wait.on与具有FixedWindow的无界PCollection

问题描述

我正在尝试实现类似于this question中概述的管道,但是与BEAM-6732中提到的情况不同,我的来源是发布/订阅订阅,而不是使用Wait.on写入另一个表,我试图用它来确定写入何时完成,生成消息并路由到发布/订阅主题。

我尝试使用默认窗口,但是根据Wait.on的文档,它不适用于无限制的集合,尝试手动定义一个固定的窗口,并允许较低的延迟,但这似乎并没有工作,请找到下面使用的窗口。 JDBCIO.write之后的步骤似乎总是停滞不前,即等待步骤没有输出。

Window.into(FixedWindows.of(Duration.standardSeconds(10)))
    .triggering(
        Repeatedly.forever(
            AfterProcessingTime.pastFirstElementInPane().plusDelayOf(Duration.standardMinutes(1))
                .orFinally(AfterWatermark.pastEndOfWindow())
        )
    ).withAllowedLateness(Duration.standardMinutes(2)).discardingFiredPanes();

正在寻找可能存在问题的建议,以及对发布/订阅源使用较低的allowedLateness会带来的影响,这不能保证订购。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)