请大家帮忙看一下这个问题怎么解决?

请问可以设置到一个全局变量, taskmanager 能过都放问到吗? 在另一个地方还可以对这个变量动态更改吗?

展开
收起
JWRRR 2023-04-03 14:54:26 210 分享 版权
2 条回答
写回答
取消 提交回答
  • "没有。全局变量依赖在同一个jvm里面才可以访问的。 你这种需求只能依赖外部存储redis hbase这类点查组件实现此回答整理自钉群“【③群】Apache Flink China社区”"

    2023-04-03 16:45:27
    赞同 展开评论
  • 发表文章、提出问题、分享经验、结交志同道合的朋友

    有方案,可以使用Flink的分布式状态来实现全局变量,将其存储在内存中。

    具体实践,使用getRuntimeContext().getBroadcastVariable(name)方法获取分布式状态,这样每个TaskManager都可以访问到这个全局变量。可以使用withBroadcastSet()方法将变量广播到所有的TaskManager。

    2023-04-03 16:07:32
    赞同 展开评论

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

收录在圈子:
实时计算 Flink 版(Alibaba Cloud Realtime Compute for Apache Flink,Powered by Ververica)是阿里云基于 Apache Flink 构建的企业级、高性能实时大数据处理系统,由 Apache Flink 创始团队官方出品,拥有全球统一商业化品牌,完全兼容开源 Flink API,提供丰富的企业级增值功能。
还有其他疑问?
咨询AI助理