flink 如何组合流和乘法映射

问题描述 投票:0回答:1

我有一个流(不是键控流)和 3 个地图(每个地图都是来自不同的 REST API 的结果)。

这3张地图是静态的,之后不会改变。

我想使用这 3 个映射将元素映射到流中的新类型,如何将 3 个映射广播到流?

据我所知,加入或连接不足以做到这一点..请帮助。

stream apache-flink broadcast
1个回答
2
投票

如果地图(如 java 地图)是静态的,您可以将它们加载到

RichMapFunction
中的
open
中,然后在
map
中应用它们。为了提高性能,您应该在静态变量中初始化它们一次(在类或静态互斥体上同步)。 如果地图很小,您也可以在
main
中初始化它们,然后将它们作为参数传递给
MapFunction
。只要地图上的所有内容都
Serializable
,就可以了。

© www.soinside.com 2019 - 2024. All rights reserved.