leveldb学习第一篇——读写的基石

1 levelDB读写抽象

在levelDB中,读写能力是通过Env提供的。Env是一个接口类,其提供创建读写代理文件类(是我自己特殊的叫法,因为这些类,本质上是对特定环境下的文件读写的代理。当然Env除了抽象了文件读写之外,还抽象了一部分任务执行或者说叫CPU能力,但是这块实现上还是比较急简单),这些句柄类根据不同的内核有不同的实现,在levelDB中主要是posix语义的实现以及windows语义的文件句柄类。

在实现上,Env并不保有任何的代理文件对象,而是通过几个接口,创建对应的代理文件对象。几个抽象类的关系如下
leveldb学习第一篇——读写的基石_第1张图片

Posix语义的实体类关系如下所示
leveldb学习第一篇——读写的基石_第2张图片

2 细读PosixEnv

你可能感兴趣的:(leveldb存储)