最大LMDB值大小

4
LMDB数据库中可以插入的最大值大小是多少?我试图将一个16GB的文件插入到初始化为32GB大小的LMDB中,但遇到了以下错误:
File "build_lmdb.py", line 90, in write_entry
    txn.put(key.encode('ascii'), value)
lmdb.BadValsizeError: mdb_put: MDB_BAD_VALSIZE: Unsupported size of key/DB name/data, or wrong DUPFIXED size

有没有什么解决办法,或者需要更改的设置参数?

1个回答

3

根据LMDB文档中的MDB_val部分,可以将大小不超过0xFFFF_FFFF字节(即2^32 - 1,约为4GiB)的数据项输入到数据库中,因此16GB/32GB对于单个数据项来说太大了。

看起来您正在使用Python绑定,但由于这些只是C API的绑定,因此适用于C API的任何限制也应该相关。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接