大概 10 月份,快到国庆假期的时候,我在网上看到了一个数据库模型,还是 10 年前的一篇文章了,当然是纯英文的,但是阅读起来并没有什么障碍,我很快的就理解了这个 k-v 数据库的模型。

当时觉得还是挺简单的,心想着,在国庆期间,我肯定能够用代码实现出来。但是由于我刚学 Golang 不久,只是用 Golang 刷了一些 leetcoode 上的题目,基础还比较的薄弱,所以国庆七天,盯着这个模型看了又看,但是一行代码都没有写出来。

但是后来我并没有放弃,因为我对数据库还是比较感兴趣的,于是继续研究下去,也借鉴了很多其他优秀的中间件,例如 redis,然后在 12 月的时候,终于开始写代码了。

我把自己写的这个简单的数据库叫做 rosedb,因为我的英文名字是 rose,哈哈!

目前只实现了很基础的一部分功能,很多其他的功能还需要完善。

当然我觉得这也是学习和巩固 Go 语言的很不错的材料,因为其实现在 Go 语言的一些轮子还是比较少,能够让我们看懂其实更少,教程也不多,大多数偏向入门基础的。

所以我希望这个项目,能够帮助一部分人巩固 Golang 基础知识,还能够学习例如数据结构,操作系统(这是写数据库肯定会用到的基础知识)。现在 Github 上面的资源集合、面经、电子书、crud 项目太多了,缺少一些真正面向计算机基础的、锻炼编程内功的项目,万丈高楼平地起,基础知识将直接决定一个程序员的发展天花板。

我的项目的地址是:

由于个人能力有限,加上这个项目才写出来一个月的时间,可能会存在一些小的问题,但是这并不妨碍你学习,也欢迎你给我提出自己的建议,觉得对自己有帮助的话,请给我一个小小的 star 吧,这会让我很高兴的!