LevelDB 入门 —— 全面了解 LevelDB 的功能特性
本节我们将全面了解一下 LevelDB 的各种特性。LevelDB 的开发语言是 C++,考虑到会使用 C++ 语言的同学不是很多,在本节我们将使用 Java 语言来描述 LevelDB 的特性。其它语言栈的同学也不必担心,因为不同语言操纵 LevelDB 的接口 API 都是一样的,使用起来大同小异。 打开和关闭LevelDB 的数据存储在一个特定的目录中,里面有很多数据文件、日志文件等。使用 LevelDB API 来打开这个目录,就得到了 db 的引用。后续我们就使用这个 db 引用来执行读写操作。下面的代码是 Java 语言描述的伪代码。 打开数据库有很多选项可以配置,比如设置块缓存大小、压缩等 基础 APILevelDB 用起来就像 HashMap,但是比 HashMap 要稍微弱一些,因为 put 方法不能返回旧值,delete 操作也不知道对应的 key 是否真的存在。 原子批处理对于多个连续的写操作如果因为宕机有可能导致这多个连续的写操作只完成了一部分。为此 LevelDB 提供了批处理功能,批处理操作就好比事务,LevelDB 确保这一些列写操作的原子性执行,要么全部...