1. 本际云推荐 - 专业推荐VPS、服务器,IDC点评首页
  2. 云主机运维
  3. VPS运维

Flink数据广播使用总结

小编介绍

以下是本际云服务器推荐网的小编小本本,今天为大家带来关于Flink数据广播使用总结的文章。

Flink数据广播使用总结

为什么要使用广播

在Flink使用场景中,常常需要获取外部配置或规则数据后进行计算或规则匹配,同时当外部数据发生变化时,Flink中程序也要保持更新。但传统的方式如预加载、本地缓存均难以实时更新。因此,广播成为了一种可以实时更新外部数据的方式。

什么是广播

广播是一种类似于全局性共享的数据,可以将数据作为一个整体或对象广播,避免了大量的shuffle,导致集群性能下降。广播变量创建后,可以运行在集群中的任何函数上,而不需要多次传递给集群节点,可以直接在内存中获取数据。同时,不同的任务在节点上都能够获取到广播数据,并在每个节点上只会存在一份,而不是在每个并发线程中存在。Flink中的广播分为广播变量和广播流两种类型,实现方式类似,但广播流能够实时更新。

广播的使用

根据广播使用场景将广播的类型分为广播变量和广播流。广播变量将广播的数据作为一个整体或对象广播,而广播流是实时的,可以根据外部数据新增、修改或删除记录进行更新。广播流比较适合需要实时更新外部数据场景,如自定义KafkaSource、MQ等。

对于广播变量的使用,一般需要通过定时任务从外部获取全部数据,然后通过Flink的BroadcastState广播出去。对于广播流的使用,需要将外部数据来源如Kafka存储在广播状态中,然后根据外部数据新增、修改或删除记录,对广播状态进行实时更新。在

原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/5957.html