rosedblabs/mini-bitcask

如何保障内存hash和磁盘文件索引的一致性?

Closed this issue · 3 comments

大佬你好,我是从公众号的文章过来的,目前暂时还没有仔细阅读您的代码,不过通过文章阅读了解到,miniDB使用bitcase模型大致的思路是从内存的hash中取出index,再从数据文件中读取对应index的结果(value),不禁思索,这两个操作应具备事务性,否则会出现数据不一致的情况,这里就是单纯讨论(后续我看完代码后如果发现了相关的内容会补充到issue的下方)

目前对一个读写操作都会加锁。
可以先熟悉下代码

嗯嗯,是的,看了代码,里面用到互斥锁,来保障逻辑的准确性
image

学到了