如何删除rocksdb或leveldb中某些天以前的数据?

时间:2016-09-12 09:23:04

标签: leveldb rocksdb

我想创建一个工具来删除所有早于rocksdb或leveldb的数据,但我不知道如何启动它。

1 个答案:

答案 0 :(得分:1)

RocksDB有一个特定的数据库,称为Date_tiered DB。您可以指定您要用来打开数据库的ttl。它基本上将要插入多个CF的数据分片,并在ttl过期时将CF整体丢弃。请注意,当第二次以不同的ttl打开Db时,数据的到期时间将根据新的ttl计算。

或者,您可以创建自己的custom compaction filter以便在压缩时间内删除旧数据。这实际上减轻了发出删除操作的麻烦,并且可以作为后台作业来完成。