从 users@apex.incubator.apache.org 转发
什么时候调用运算符的构造函数?文档说在操作员的生命周期中只有一次,但我想知道“生命周期”的定义是否跨越顶点应用程序的启动/停止/崩溃(由于编码错误)?
从 users@apex.incubator.apache.org 转发
什么时候调用运算符的构造函数?文档说在操作员的生命周期中只有一次,但我想知道“生命周期”的定义是否跨越顶点应用程序的启动/停止/崩溃(由于编码错误)?
给定的运算符具有以下生命周期,如下所示。生命周期跨越算子实例的执行周期。如果操作员失败,生命周期将按如下方式重新开始。操作员状态检查点每隔几个窗口定期出现一次,并且在发生故障时它成为最后一个已知的检查点。
→ Constructor is called
→ State is applied from last known checkpoint
→ setup()
→ loop over {
→ beginWindow()
→ loop over {
→ process()
}
→ endWindow()
}
→ teardown()
算子有一个生命周期。构造函数 --> 应用检查点状态 --> setup() --> loop {beginWindow() --> loop {process() for each input port} --> endWindow()} --> tearDown()。当操作员恢复时,周期是相同的。检查点状态是算子崩溃前最后一个已知检查点的状态。