What i was trying to achieve from above was similar to GlobalKTable in
Kafka Streams.
https://cwiki.apache.org/confluence/display/KAFKA/KIP-99%3A+Add+Global+Tables+to+Kafka+Streams
Also current flink version i am using is 1.4

Are there any other suggestions/guidance to achieve GlobalKTable functionality
in flink

Thanks.

On Thu, Jul 12, 2018 at 1:00 PM vijayakumar palaniappan <
vijayakuma...@gmail.com> wrote:

> Hello All,
> I can think of two options of implementing below requirement and request
> some guidance on choosing the option with pros and cons.
>
> Requirements:
> - A in memory rules cache to be loaded from log compacted kafka topic.
> This cache has to be loaded prior to arrival of events.
> - Updates to the log compacted kafka topic has to be tracked to keep the
> in memory rule cache up to date
>
> Additional properties of data:
> - On Job start/restart, this rule cache is always loaded from earliest
> available offset in the log. - No kafka offset store and restore required.
> - No checkpointing needed for the rule cache, as it is loaded afresh in
> event of crash and restore
> - No eventTime semantics required as we always want the latest rules to be
> loaded to cache
>
> Implementation Options:
>
> 1. Using a KafkaConsumer in open() doing a initial load, and continuously
> fetching rule updates and keeping the in memory cache up to date. This
> option is not using a DataStream for rules as we don't use any goodies of
> stream like state,checkpoint, event time etc.
> 2. Connected Stream approach. Using a KafkaConsumer in open() doing a
> initial load. Have a FlinkKafkaSource Stream connected with events. In this
> case have to take care of out of order updates to caches, since the rules
> updates are from open() and Rule DataStream.
>
> --
> Thanks,
> -Vijay
>


-- 
Thanks,
-Vijay

Reply via email to