tongchenkeji 发表于:2023-4-3 14:54:260次点击 已关注取消关注 关注 私信 请大家帮忙看一下这个问题怎么解决?[阿里云实时计算 Flink版] 暂停朗读为您朗读 请问可以设置到一个全局变量, taskmanager 能过都放问到吗? 在另一个地方还可以对这个变量动态更改吗? 「点点赞赏,手留余香」 赞赏 还没有人赞赏,快来当第一个赞赏的人吧! 海报 实时计算Flink版# 实时计算 Flink版3179
DYMMMAM 2023-11-27 18:47:48 1 “没有。全局变量依赖在同一个jvm里面才可以访问的。 你这种需求只能依赖外部存储redis hbase这类点查组件实现此回答整理自钉群“【③群】Apache Flink China社区””
凌云CloudAM 2023-11-27 18:47:48 2 有方案,可以使用Flink的分布式状态来实现全局变量,将其存储在内存中。 具体实践,使用getRuntimeContext().getBroadcastVariable(name)方法获取分布式状态,这样每个TaskManager都可以访问到这个全局变量。可以使用withBroadcastSet()方法将变量广播到所有的TaskManager。
“没有。全局变量依赖在同一个jvm里面才可以访问的。 你这种需求只能依赖外部存储redis hbase这类点查组件实现此回答整理自钉群“【③群】Apache Flink China社区””
有方案,可以使用Flink的分布式状态来实现全局变量,将其存储在内存中。
具体实践,使用getRuntimeContext().getBroadcastVariable(name)方法获取分布式状态,这样每个TaskManager都可以访问到这个全局变量。可以使用withBroadcastSet()方法将变量广播到所有的TaskManager。