当我重命名apacheapex应用程序时,kafka操作符的语义会改变吗?

oprakyz7  于 2021-06-07  发布在  Kafka
关注(0)|答案(2)|浏览(473)

我假设在重命名应用程序的那一刻,kafka操作符的语义将完全改变,并可能最终由应用程序代码从“initialoffset”读取,这是正确的吗?
如何维护“应用程序名”定义的语义?
应用程序代码的每次部署是否都会产生一个新的应用程序,或者只是使用@applicationannotation(name=“”)示例来定义这个含义?

7gcisfzg

7gcisfzg1#

您可以始终使用-originalappid启动应用程序。操作员应该从原始应用程序停止的位置继续。如果您使用的是kafka 0.9运算符,并且启动的应用程序名称相同,则可以将initialoffset设置为“application\u or\u latest”或“application\u or\u earliest”,因此该运算符应该从上次运行时处理的偏移处继续。不同之处在于,如果指定-originalappid,则偏移量将从检查点还原,而另一个偏移量将存储在kafka本身中。

whhtz7ly

whhtz7ly2#

您可以使用 -originalAppId 参数并提供来自其上一次运行的检查点状态的应用程序id,它应应用于dag中的所有操作符,包括kafka输入操作符。还可以使用属性为应用程序提供新名称 dt.attr.APPLICATION_NAME .
如: launch pi-demo-3.4.0-incubating-SNAPSHOT.apa -originalAppId application_1459879799578_8727 -Ddt.attr.APPLICATION_NAME="pidemo v201"

相关问题