为了梳理分布式数据库相关技术,最近接触到了LevelDB,虽然其代码量非常少,但它对分布式数据库影响深远,所以单独写一篇文章介绍一下LevelDB。LevelDB总共只有148个文件,其中cc文件有75个,h文件有56个,剩下的就是文档和工程文件。整个项目不到3万行代码,非常精炼。

LevelDB其实不能称为一个数据库,它只是一个由 Google 两位工程师编写的Key-Value开发库,它提供了从字符串键到字符串值的有序映射。
其作者是:
Sanjay Ghemawat
Jeff Dean
LevelDB作为一个Key-Value开发库,麻雀虽小五脏俱全,其实现了如下功能:
键和值都使用字节数组
数据按关键字排序存储
调用者可以提供自定义比较函数来覆盖排序顺序
基本操作有Put(key,value)、Get(key)、Delete(key)
可以在一个原子批次中进行多次更改
用户可以创建临时快照以获得一致的数据视图
数据支持向前和向后迭代
使用 Snappy 压缩库自动压缩数据
外部活动通过虚拟接口进行中继,因此用户可以自定义操作系统交互。
关于LevelDB的更多信息可以查看其官网:https://github.com/google/leveldb
下篇文章将介绍LevelDB如何编译和使用。
文章转载自数据库高级技术专家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




