基于KV数据库的文件系统 FileSystem Impl on Key-Value Database

需求

基本的文件系统操作

公共

文件夹

文件

文件操作的实现

以文件路径为key,文件内容为value,可以很容易实现文件的基本操作。

a模式的文件更新(append)

如果是append模式的文件写操作,所有数据更新都是以追加形式插入的, 那么同步到数据库中也只需同步增加的那部分数据。 PUT range oldsize_start:appendsize

new data bytes

文件重命名rename

由于KV数据库对变更key操作很少支持,所以一般情况下只能使用copy模式。 将数据从旧的path复制到新的path。

文件夹操作的实现

文件夹在KV中的实现

以文件夹路径为key,文件夹所包含的子元素为内容,存储到KV数据库。

文件夹重命名rename

Comments

Fork me on GitHub