Skip to content

mini_lsm 是一个用 Go 语言实现的基础日志结构合并(LSM)树项目,旨在提供高效的数据存储与检索功能。该项目包含基本的 LSM 树操作,并计划在未来添加更多功能,如布隆过滤器、客户端-服务器模式和 Raft 协议支持。

Notifications You must be signed in to change notification settings

xia-Sang/mini_lsm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

实现一个lsm

alt text

存在小问题

  • 个人感觉level compact细节有点问题,反正可以跑就可以
  • 没有处理好协程,仅仅是顺序执行,效率低下,不过学习使用足够了
  • 单体架构,没有考虑更复杂的场景,不过学习使用足够了

后续完善

⚡ 完善compact部分,level compact和后台并发运行?

⚡ 补充bloom filter

⚡ 完善命令行

⚡ 支持C/S模式

⚡ 实现raft协议

参考

  1. xiaoxuxiansheng
  2. hengfeiyang
  3. nananatsu

About

mini_lsm 是一个用 Go 语言实现的基础日志结构合并(LSM)树项目,旨在提供高效的数据存储与检索功能。该项目包含基本的 LSM 树操作,并计划在未来添加更多功能,如布隆过滤器、客户端-服务器模式和 Raft 协议支持。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages