Rocks DB的Java API是否支持API GetUpdatesSince?

时间:2015-01-24 00:12:50

标签: java rocksdb

Java API是否支持在某个特定时间点之后获取所有记录的概念?

RocksDB文档如下:

“增量备份和复制需要能够找到并拖尾数据库的所有最新更改.API GetUpdatesSince允许应用程序拖尾RocksDB事务日志。”来自https://github.com/facebook/rocksdb/wiki/RocksDB-Basics

RocksDB Java API中似乎没有GetUpdatesSince API。还有另一种方法可以在Java中执行此操作吗?

2 个答案:

答案 0 :(得分:4)

没有其他方法可以在Java中实现与使用GetUpdatesSince功能相同的行为。

GetUpdatesSince在RocksDB的Java API中可用。您可以在打开的RocksDB实例上调用该方法。调用此方法后,将检索TransactionLogIterator,该Sequence Number可用于获取自TransactionLogIterator偏移量以来的更新。 TransactionLogIterator可以获取在RocksDB初始化之后发生的更新(在测试中可以找到概述此示例)。

可以使用getLatestSequenceNumber检索Options实例的最新序列号。

重要需要注意的是,必须将以下DBOptions({{1}})设置设置为适当的值:

  • setWalTtlSeconds
  • setWalSizeLimitMB

答案 1 :(得分:0)

看起来GetWritesSince是being worked on,但截至今天尚未完成。