Re: LookupableTableSource question

2019-07-02 Thread JingsongLee
> how do I enable Blink planner support? After flink-1.9 release, you can try Blink-planner. >Since when is LATERAL TABLE available in Flink? Is it equivalent to using >temporal tables? LATERAL TABLE is table function in table, it is available in Flink for a long time.[1] It is different from

Re: LookupableTableSource question

2019-07-01 Thread Flavio Pompermaier
t; > Best, Jingsong Lee > > > 来自阿里邮箱 iPhone版 > <https://itunes.apple.com/us/app/a-li-yun-you/id923828102?l=zh=1=8> > > --Original Mail -- > *From:*Flavio Pompermaier > *Date:*2019-06-28 22:53:31 > *Recipient:*JingsongLee > *CC:*user

Re: LookupableTableSource question

2019-06-28 Thread JingsongLee
The keys means joint primary keys, it is not list of keys, in your case, maybe there is a single key? Best, Jingsong Lee 来自阿里邮箱 iPhone版 --Original Mail -- From:Flavio Pompermaier Date:2019-06-28 22:53:31 Recipient:JingsongLee CC:user Subject:Re:

Re: LookupableTableSource question

2019-06-28 Thread Flavio Pompermaier
Sorry I copied and pasted twice the current eval method...I'd do this: public void eval(Object... keys) { for (Object kkk : keys) { Row keyRow = Row.of(kkk); if (cache != null) { List cachedRows = cache.getIfPresent(keyRow); if (cachedRows != null) {

Re: LookupableTableSource question

2019-06-28 Thread Flavio Pompermaier
This could be a good fit, I'll try to dig into it and see if it can be adapted to a REST service. The only strange thing I see is that the key of the local cache is per block of keys..am I wrong? Shouldn't it cycle over the list of passed keys? Right now it's the following: Cache> cache; public

Re: LookupableTableSource question

2019-06-28 Thread JingsongLee
Hi Flavio: I just implement a JDBCLookupFunction[1]. You can use it as table function[2]. Or use blink temporal table join[3] (Need blink planner support). I add a google guava cache in JDBCLookupFunction with configurable cacheMaxSize (avoid memory OOM) and cacheExpireMs(For the fresh of