开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

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

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

展开
收起
JWRRR 2023-04-03 14:54:26 175 0
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 集群和引擎,提高作业开发运维效率。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载