你好,我是太白。
本文讲下NutsDB v0.11.0发布情况。
- NutsDB的项目地址
- 本次v0.11.0发布的主要改动
- 1、bug的修复
- 2、新功能
- 3、性能优化
- 3、重构
- 4、杂项
- 整个v0.11.0的迭代的始末
- nutsdb v0.12.0报名
- nutsweb v0.1.0的进展
- 招募开发者
- 加群
NutsDB的项目地址
https://github.com/nutsdb/nutsdb, 欢迎star关注我们。
目前主要使用场景:
- 嵌入式应用,用于存储定时间段的数据(已有人用在生产)
- 存储Meta信息(例子:https://github.com/cloud-barista/cb-store)
- 加密存储(例子:https://github.com/jrapoport/chestnut)
- 本地队列(已有人用在生产)
- 本地缓存
其他github上统计的开源项目:https://github.com/nutsdb/nutsdb/network/dependents?package_id=UGFja2FnZS0yMjY0ODU0MDM5
参考
- https://github.com/nutsdb/nutsdb/network/dependents?package_id=UGFja2FnZS0yMjY0ODU0MDM5
- https://github.com/nutsdb/nutsdb/issues/27
本次v0.11.0发布的主要改动
非常感谢参与贡献的小伙伴,我把相关PR(#PR编号)贡献的小伙伴的github名放在后面了(类似@xxx)。
本次改动主要分以下几类(详见:https://github.com/nutsdb/nutsdb/issues/219):
1、bug的修复
- In BPTSparse when combination of bucket and key is repeated (#207) @ShiMaRing
- MInInt function compatible with 32-bit operating systems (#208) @xujiajun
- Index EOF issue#213 (#214) @xujiajun
2、新功能
- 支持了正向和反向的迭代 (EntryIdxMode: HintKeyAndRAMIdxMode and HintKeyValAndRAMIdxMode) (#202) @zeina1i
- 支持bucket迭代的正则匹配(#198) @Nailcui
- 内存模式支持获取bucket中的所有key (#206) @Nailcui
- 内存模式支持PrefixScan前缀扫描 (#211) @Nailcui
3、性能优化
本次性能优化主要对db启动做了提升,小value的情况下(小于4k)性能可以提高一倍以上。
- Optimize concurrent read performance (#205) @elliotchenzichang
- Use biobuf optimaze startspeed (#212) @elliotchenzichang
下面是@elliotchenzichang的公众号,里面有优化的说明,可以看下
nutsdb启动速度优化之旅
记录一次Bufio.Reader错误使用姿势引发的思考
3、重构
- make default options to be created in a factory method (#196) @elliotchenzichang
- use size constant value (#204) @elliotchenzichang
4、杂项
- 添加 iterator的 example (#209) @xujiajun
- 移除了 option StartFileLoadingMode (#218) @xujiajun
整个v0.11.0的迭代的始末
- 1、首先会发起一个proposal,即一些提议
- 2、然后发起报名
- 3、报名之后领取相应的任务来做
报名的人员,我们会在每周发起一次讨论,主要是同步下进度和遇到的问题等。
整个过程是透明和可追溯的,所以自己的贡献,别人都看得到的,不要吝啬你的贡献哈。
nutsdb v0.12.0报名
v0.12.0马上也要开始了,有兴趣的可以加群来找我报名。后面会根据实际情况做调整。
大致分为:
1、单测类
提高单测覆盖率
2、功能类&性能类
目前open的issue挑选一些,方便落地的&也准备了一些有难度的可选,https://github.com/nutsdb/nutsdb/issues
3、周边项目
- nutsweb:nutsdb的web可视化
- nutsdb-bench:nutsdb的性能测试
- nutsdb-docs:nutsdb的文档
nutsweb v0.1.0的进展
nutsweb项目0.1.0版本,基本实现了基础的查询功能(还没发布,测试中)。
nutsweb这个项目(https://github.com/nutsdb/nutsweb)主要是对nutsdb提供可视化的能力和nutshttp(https://github.com/nutsdb/nutshttp,提供nutsdb http访问的能力)配合使用。目前是 @ShiMaRing在贡献着,开发了主要的v0.1.0的功能。希望能招募到人,开发接下去的版本。