checkpoint其实是全量的,只是上传远程存储的时候是增量的,ckpt-3有可能会依赖ckpt-2中的部分文件。
祝好
唐云
From: yidan zhao
Sent: Tuesday, June 22, 2021 11:55
To: user-zh
Subject: rocksdb对比filestatebackend
如题,我生产中目前一直都是使用的FileStateBackend,然后使用一个对象存储服务作为后端。
按照我的理解,这种方式下,状态的操作性能很高,都是在内存内部,只有检查点时候才会输出到对象存储中。但
如题,我生产中目前一直都是使用的FileStateBackend,然后使用一个对象存储服务作为后端。
按照我的理解,这种方式下,状态的操作性能很高,都是在内存内部,只有检查点时候才会输出到对象存储中。但是,不支持增量检查点。
RocksDB支持增量检查点,但是缺点是每个状态的操作都是需要序列化/反序列化,至于是文件还是内存操作可能还和rocksdb的块大小,多久刷新等有关。
不过我现在在想,既然我的任务的状态当前使用内存存储,也就是内存存储是能够容纳我的全状态的。
那么是否我从FileStateBackend切换到RocksDB其实性能也不会降低很多呢?