2
我需要设计一个数据持久性和快速重新加载的系统,这是通过mmap()
实现的。但是使用mmap()
进行持久化的系统通常会在系统崩溃时丢失数据完整性,例如单节点MongoDB。如果我在1/n的Linux PAGE_SIZE?或磁盘块大小中存储数据块,mmap()是否可以保证数据在崩溃时的完整性?
我所拥有的是一个非常平坦的数据结构来存储:数据被分块成1024个大小的块,块之间没有依赖关系。块在服务器正常运行时间内随机大量访问和更新。
已经使用了`mmap`多次,但从来没有存在持久性问题的地方,所以我没有涉及`msync`。学习已经发生。谢谢。 – 2018-02-05 03:48:45