当我重命名 Apache Apex 应用程序时,Kafka 运算符语义会发生变化吗?
Will Kafka operator semantic change when I rename an Apache Apex application?
我假设在我们重命名应用程序的那一刻,Kafka 运算符的语义将完全改变并且可能最终由应用程序代码从 "initialOffset" 读取,我是否正确?
如何为 "application name" 的定义维护语义?
应用程序代码的每次部署都会产生一个新应用程序,还是只是使用 @ApplicationAnnotation(name="") 实例来定义此含义?
您可以使用 -originalAppId
参数从之前的状态启动应用程序,并提供其之前 运行 的检查点状态的 yarn 应用程序 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"
您始终可以使用 -originalAppId 启动应用程序,操作员应该从原始应用程序停止的地方继续。如果您使用的是 kafka 0.9 operator 并且您启动了具有相同名称的应用程序,则可以将 initialOffset 设置为 "application_or_latest" 或 "application_or_earliest",因此 operator 应该从最后处理的偏移量继续 运行 ].不同之处在于,如果您指定 -originalAppId,则偏移量将从检查点恢复,而另一个将偏移量存储在 kafka 本身中。
我假设在我们重命名应用程序的那一刻,Kafka 运算符的语义将完全改变并且可能最终由应用程序代码从 "initialOffset" 读取,我是否正确?
如何为 "application name" 的定义维护语义?
应用程序代码的每次部署都会产生一个新应用程序,还是只是使用 @ApplicationAnnotation(name="") 实例来定义此含义?
您可以使用 -originalAppId
参数从之前的状态启动应用程序,并提供其之前 运行 的检查点状态的 yarn 应用程序 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"
您始终可以使用 -originalAppId 启动应用程序,操作员应该从原始应用程序停止的地方继续。如果您使用的是 kafka 0.9 operator 并且您启动了具有相同名称的应用程序,则可以将 initialOffset 设置为 "application_or_latest" 或 "application_or_earliest",因此 operator 应该从最后处理的偏移量继续 运行 ].不同之处在于,如果您指定 -originalAppId,则偏移量将从检查点恢复,而另一个将偏移量存储在 kafka 本身中。