Apache Apex 中的操作员生命周期是啥?
Posted
技术标签:
【中文标题】Apache Apex 中的操作员生命周期是啥?【英文标题】:What is the operator lifecycle in Apache Apex?Apache Apex 中的操作员生命周期是什么? 【发布时间】:2016-04-22 23:04:19 【问题描述】:从 users@apex.incubator.apache.org 转发
什么时候调用算子的构造函数?文档说在操作员的生命周期中只有一次,但我想知道“生命周期”的定义是否跨越顶点应用程序的启动/停止/崩溃(由于编码错误)?
【问题讨论】:
【参考方案1】:给定的运算符具有以下生命周期,如下所示。生命周期跨越算子实例的执行周期。如果操作员失败,生命周期将按如下方式重新开始。算子状态检查点每隔几个窗口周期性地出现一次,如果失败,它会成为最后一个已知的检查点。
→ Constructor is called
→ State is applied from last known checkpoint
→ setup()
→ loop over
→ beginWindow()
→ loop over
→ process()
→ endWindow()
→ teardown()
【讨论】:
【参考方案2】:算子有一个生命周期。构造函数 --> 应用检查点状态 --> setup() --> loop beginWindow() --> loop process() for each input port --> endWindow() --> tearDown()。当操作员恢复时,周期是相同的。 checkpointed 状态是算子崩溃前最后一个已知检查点的状态。
【讨论】:
以上是关于Apache Apex 中的操作员生命周期是啥?的主要内容,如果未能解决你的问题,请参考以下文章