golang 写的存储引擎,基于 b+ 树,mmap
作者:Alber
- 2022 年 8 月 03 日
本文字数:388 字
阅读完需:约 1 分钟
mydb
mydb 是一个 golang 写的键值存储引擎,基于 b+树,mmap
怎样使用:
package main
import (
"fmt"
"github.com/alberliu/mydb"
"strconv"
)
func toBytes(i int) []byte {
return []byte(strconv.Itoa(i))
}
func main() {
db, err := mydb.Open("data")
if err != nil {
panic(err)
}
fmt.Println("init: ", db.Range(mydb.Infinity, mydb.Infinity))
for i := 1; i <= 5; i++ {
db.Add(toBytes(i), toBytes(i))
}
fmt.Println("add: ", db.Range(mydb.Infinity, mydb.Infinity))
db.Update(toBytes(1), toBytes(4))
fmt.Println("update", db.Range(mydb.Infinity, mydb.Infinity))
db.Delete(toBytes(1))
fmt.Println("delete", db.Range(mydb.Infinity, mydb.Infinity))
fmt.Println("range ", db.Range(toBytes(3), toBytes(4)))
}
复制代码
github 地址:https://github.com/alberliu/mydb
划线
评论
复制
发布于: 刚刚阅读数: 3
Alber
关注
还未添加个人签名 2019.08.26 加入
还未添加个人简介
评论