高性能 KV 存储引擎 rosedb V2.1.0 & V2.2.0 发布

查看 16|回复 0
作者:huiwang520   
rosedb 2.1 和 2.2 版本已发布,请使用最新 2.2 版本。

项目地址:https://github.com/rosedblabs/rosedb

V2.1.0
新功能
支持迭代器,用户可以方便的使用其来遍历数据库中的所有数据,并且支持正向和反向迭代,迭代器的几个主要的方法如:
  • Rewind:回到迭代器的第一个 key
  • Seek:找到第一个小于等于(或大于等于)给定 key 的值
  • Next:调到下一个 key
  • Key:获取当前的 key
  • Value:获取当前的 Value
  • Close:关闭迭代器

    支持前缀扫描,初始化迭代器时,可以传入一个前缀,只有匹配这个前缀的 Key 才会遍 历。基础使用方法如下:
    // create an iterator
    iterOptions := rosedb.DefaultIteratorOptions
    iter := db.NewIterator(iterOptions)
    defer iter.Close() // close the iterator after using it
    // iterate all data in the database
    for ; iter.Valid(); iter.Next() {
        key := iter.Key()
        val, _ := iter.Value()
        println(string(key), string(val))
    }
    Bug 修复

  • 感谢 @rfyiamcool 贡献 PR

  • #216 fix: update committed flag after batch commit


    V2.2.0
    新功能

  • 支持 Merge 方法,用于回收磁盘上的无效数据,清理磁盘空间

  • Merge 将会重写数据库中所有有效的数据,这样可以丢弃掉无效的数据。
  • Merge 过程中会生成 Hint 文件,此文件只存储索引,用于快速启动数据库
  • Merge 操作有可能是一个非常耗时的操作,特别是在数据量较大的情况下,所以建议在数据库空闲的时候执行

  • 添加 Windows 平台单元测试,可以在 Windows 上编译运行。添加对应的 workflow 测试脚本。
  • 您需要登录后才可以回帖 登录 | 立即注册

    返回顶部