eleveldb - LevelDB 数据存储的 Erlang 绑定
建设状态
这个存储库遵循2013年11月28日的Basho分支管理标准。这个标准可以在这里找到:https://github.com/basho/riak/wiki/Basho-repositor...
总的来说,"develop" 分支包含了最近审查过的工程工作,"master" 分支包含了最近发布的工作,即作为 Riak 版本的一部分发布。而 "master" 分支则包含了最近发布的工作,即作为Riak发布的一部分。
迭代记录
高级迭代器接口
leleveldb 的大多数客户端在对存储在 leveldb 中的一组记录进行迭代时应该使用的接口是 fold,因为这很符合 Erlang 的做事方式。
对于那些需要对记录迭代过程进行更多控制的人,你可以使用直接的迭代器动作。使用它们时要非常小心。
直接迭代器动作
seek/next/prev
- seek:移动迭代器到一个新的位置。
- next:向前移动一个位置并返回值,不做其他事情。向前移动一个位置并返回值,不做其他操作。
- prev:向后移动一个位置并返回值,不做其他操作。
prefetc/prefetch_stop
- prefetc:执行一个下一个动作,然后在Erlang处理当前下一个动作的同时,为后续的下一个动作启动一个并行调用。后续的预取可能会带着已经检索到的值立即返回。
- prefetch_stop:停止一连串的预取调用。如果有一个并行的预取调用待定,取消它,因为我们即将移动指针。
警告:如果有并行的预取调用,则取消它,因为我们即将移动指针。
可以使用 prefetch/prefetch_stop 或 next/prev。 不要混合使用 prefetch 和 next/prev。 在使用任何其他操作(seek、next、prev)之前,你必须在一个或多个预取操作之后 prefetch_stop。