C#环境下大规模字符串键值对存储检索的技术方案咨询(含RocksDB/ZoneTree使用及性能疑问)
C#环境下大规模字符串键值对存储检索的技术方案咨询(含RocksDB/ZoneTree使用及性能疑问)
我现在在C#开发场景下遇到了这么个问题:需要在磁盘上存储和检索大量字符串类型的键值对,核心需求是尽可能降低应用的内存占用——我希望能按特定Key读取对应的键值对,处理完之后再去操作其他Key,不用把整个数据集都加载到内存里。
目前我用的是C#的Dictionary和ConcurrentDictionary来存需要快速插入/检索的数据,但这种内存级存储的方案在大规模场景下根本不具备扩展性。我也试过SQLite、SQL Server这类数据库,建个简单的表存Key和Value列(把Key设为唯一主键),但单Key查询的速度普遍很慢,主要是每次查询的往返开销太高了。
最近我了解到可以用ZoneTree或者RocksDB来处理键值对存储,还有其他一些备选方案,现在有两个问题想请教:
- 怎么在C#里用RocksDB或ZoneTree来存储字符串类型的键值对?
- (原问题未完整输入,推测是想问RocksDB/ZoneTree的性能表现,比如与现有方案相比的读写效率、内存占用控制能力等相关问题)
备注:内容来源于stack exchange,提问作者NoumanQ
相关产品推荐
相关产品推荐

