当我将最大分贝大小设置为例如5G时,即使我只插入一小块数据,最终的db文件大小也将变成5G。 但在Linux上,它工作正常,最终的数据库大小与我插入到多less数据有关。
这是我用来设置最大数据库大小的api
rc = ::mdb_env_set_mapsize(env,5 * 1024 * 1024 * 1024);
Windows和Linux一样。 我需要为Windows做些不同的事吗?
在内核之外使用CUDA printf打印设备variables
Git – 同步Github回购与本地?
Bash | pipe道打击function
如何find在Linux中分叉进程和写时复制之间共享多less内存?
如何启用Linux中的openmpimultithreading标志?
SDL2 – 检查是否创build了OpenGL上下文
如何find一个Linux shell的给定path的可用磁盘空间?
Bash hashmap使用报价作为关键
这就是内存映射文件在Windows上的工作方式 – 如果您需要xxGB大小的映射,则Windows需要该文件的大小为xxGB。 如果文件最初小于指定的大小,Windows会增长文件本身; 这是没有办法的。
https://msdn.microsoft.com/en-us/library/windows/desktop/aa366542%28v=vs.85%29.aspx
NTFS可以支持稀疏文件,但在测试中我们发现Windows稀疏文件支持比普通文件慢得多,所以LMDB不使用它。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。