假设我想写简单的数据库(在Linux上工作),至极必须满足以下条件:
它只有两个功能:
其中索引是整数0至1M,和字节是100个字节块。我想文件指出write_chunk的每次通话后atomicly转移。
所以,我想可以肯定的:
我imagane这样实现:
写功能实现:
阅读功能的实现:
我是用安全以下算法?
所以我想将舒尔我对安全像MySQL或PostgreSQL数据库执行INSERT statment后提交的同一水平的。
我可以用它来保证原子和耐用写什么工艺,我的意思可能是我需要使用一些散列块上也以确保其有效,或使用回滚文件的副本两倍。或存储数据回滚文件中一点点时间,以确保磁盘子系统齐平。 (我heared我并不安全,即使我叫FSYNC写后这取决于磁盘subsystemn的那么物理写入数据)。
这应该只要你有没有并发工作,也就是说,只有这些功能一个允许在同一时间运行。
你为什么不使用一个简单的嵌入式数据库?