hi,

看到 RocksDBWriteBatchWrapper类有 flushIfNeeded()方法 , 是这个么?

 private void flushIfNeeded() throws RocksDBException {
boolean needFlush = batch.count() == capacity || (batchSize > 0 &&
getDataSize() >= batchSize);
if (needFlush) {
flush();
}
}

batchSize 来自 state.backend.rocksdb.write-batch-size 参数的配置

jiafu <530496...@qq.com> 于2020年7月31日周五 下午4:41写道:

>
> writerbuffer写满会flush到磁盘,checkpoint启动的时候会有一次snapshot过程,会让rocksdb做checkpoint,然后将数据刷到磁盘形成sst文件。
>
>
>
>
> ------------------&nbsp;原始邮件&nbsp;------------------
> 发件人:
>                                                   "user-zh"
>                                                                     <
> sujun891...@gmail.com&gt;;
> 发送时间:&nbsp;2020年7月31日(星期五) 下午4:37
> 收件人:&nbsp;"user-zh"<user-zh@flink.apache.org&gt;;
>
> 主题:&nbsp;RocksDBKeyedStateBackend如何写磁盘
>
>
>
> hi all,
>
> 请问RocksDBKeyedStateBackend是何时将state序列化到磁盘的, 窗口结束时间?还是配置的checkpoint周期,谢谢
>
> --
> Best,
> Jun Su



-- 
Best,
Jun Su

回复