Flink SQL 没有支持 localcache (或者说 keyby), 这个需要改源码。
以及内置支持的 JDBC, HBase 维表都不支持 async lookup, 这个需要用户自己开发 JDBC, HBase async
lookup。
或者用户也可以自己通过 DataStream API 实现上述这些功能。
keyby+localcache+异步IO 只是说解决这个问题的一个思路。
Best,
Jark
On Fri, 19 Jun 2020 at 11:11,
[hidden email] <
[hidden email]> wrote:
>
> 可以通过异步的方式(RichAsyncFunction)进行维表关联操作,异步多线程方式进行维表读取!
>
>
>
>
> 发件人: Jim Chen
> 发送时间: 2020-06-19 10:34
> 收件人: user-zh
> 主题: Re: 对于维表频繁更新,状态越来越大的场景如何保证数据的准确性
> 请问下,在flink sql1.10中, localcache+异步IO,这个方案,是直接写sql关联维表就行了吗?flink
> sql会自动在底层做优化工作吗?如果要自己手动实现的话,有没有什么demo呢?谢谢
>
> Jark Wu <
[hidden email]> 于2020年6月17日周三 上午12:11写道:
>
> > 如果更新非常频繁,又要保证关联的准确性,又要保证吞吐,那么最佳的解决方案我觉得只能是关联 changelog 了,
> > 只是 Flink 目前还没有原生支持维表关联一个 changelog,会在Flink SQL 1.12中去支持。
> >
> > 当前版本下的话,可以尝试 keyby+localcache+异步IO。
> >
> > Best,
> > Jark
> >
> > On Tue, 16 Jun 2020 at 22:35, 李奇 <
[hidden email]> wrote:
> >
> > > 或者采用redis做维表存储介质。
> > >
> > > > 在 2020年6月16日,下午10:10,wangxiangyan <
[hidden email]> 写道:
> > > >
> > > > hi,大家
> > > > 维表被频繁更新,数据量1g左右,需要频繁同步,使用什么方案去关联比较好呢?
> > >
> >
>