Hi
这种思路我觉得是可以尝试的,不过目前看需要改动的地方很多:
1. 需要更改RocksDB 创建checkpoint 到TiKV的代码逻辑
2. 需要改动RocksDB 从checkpoint resume的代码逻辑
3. 如果想要数据可以TiKV可以读取,那么TiKV中存储的格式要么与RocksDB内存储的一样,那这样子的话,lookup时候,需要能够反序列化Flink在RocksDB中的存储格式;要么是重新的格式,但这样子会导致RocksDB的checkpoint流程和时间都会增长。
4. TiKV中的数据的更新依赖于checkpoint interval,不能做到实时更新
其实queryable state 也是一个可以实现你们类似目的的方式,不确定你们是否可以尝试。
祝好
唐云
________________________________
From: wxpcc <
[hidden email]>
Sent: Tuesday, August 25, 2020 17:05
To:
[hidden email] <
[hidden email]>
Subject: Re: 有没有可能使用tikv作为flink 分布式的backend
感谢解答
就像你说的,的确可以 用lookup方式实现一部分公用kv的共享
我的理解现有的 rocksdb backend 为:rocksdb+hdfs , 如果是变成:rocksdb+tikv ,这样在一些应用过程中产生的
kv指标数据最终会存储到 tikv之中,外部也有可能访问到,通过 lookup的方式,不知道这样是否可行
--
Sent from:
http://apache-flink.147419.n8.nabble.com/