过去关于Stack Overflow的答案表明,RocksDB的单线程性质意味着答案是否定的,但官方FB文档有这样的页面http://rocksdb.org/blog/2021/05/27/rocksdb-secondary-cache.html,其中多个实例似乎共享一个缓存。
1)这些实例是否使用相同的键范围?
- 如果是这样,更新如何从一个DB实例通信到另一个?据我所知,RocksDB没有任何db间通信?
- 数据库实例不共享密钥范围
仅供参考。一个进程可以有多个RocksDB实例,每个实例可以有多个列族。它们不共享用户数据。在内部,一个实例中的列族共享WAL(预写日志)、manifest(跟踪db信息)和选项文件。一个进程中的DB实例共享相同的Env、线程池、定时器和缓存。