levedb是否支持仅键迭代?

我正在使用 goleveldb (它是Go中的leveldb的实现),我需要遍历带有前缀的键。 它支持前缀迭代,但是在对键进行迭代时,似乎值也在后台获取。 在处理大型数据库时,这会导致巨大的性能缺陷。 从文档和代码中,我找不到在Go实现或原始版本中都没有获取值的情况下遍历键的方法 C ++实现。 如果有办法,我会很感激有人帮助我朝正确的方向发展。</ p>
</ div>

展开原文

原文

I'm using goleveldb which is an implementation of leveldb in Go and I need to iterate over keys with a prefix. It supports prefix-iteration but when iterating over keys, it seems that the values are also fetched under the hood. This leads to a huge performance drawback when dealing with a big database. From the documentations and code I didn't find a way to iterate over keys without fetching values neither in Go implementation nor in original C++ implementation. If there is a way to do so, I would appreciate someone helping me to get in the right direction.

dpi96151
dpi96151 感谢您的回复。在我的情况下,值可能太大,因此以最小的值复制键会导致键集很大,因此查找速度很慢。我已经尝试过Badger,它在仅键迭代方面非常快,但是它还有其他问题,例如过多的内存消耗,并且还不支持快速压缩(这对于我的数据在leveldb中非常有用)
接近 3 年之前 回复
dtrpv60860
dtrpv60860 您可以复制具有最小价值的键(仅用于迭代),也可以查找类似badge的博客。dgraph.io/post/badger
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐