V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
huiwang520
V2EX  ›  程序员

我的编程故事—7 第二个开源项目

  •  
  •   huiwang520 ·
    roseduan · 2023-10-25 18:33:15 +08:00 · 1189 次点击
    这是一个创建于 400 天前的主题,其中的信息可能已经有所发展或是发生改变。

    上一回说到,我从业务开发转到了分布式存储的岗位,前后主要参与了组内的数据库代理( DB Proxy )和分布式 KV 存储组件的开发和维护。从一个纯粹的 CRUD 业务开发转到了自己梦寐以求的基础架构岗位,心里还是非常兴奋的。

    这段时期内主要接触和学习了公司内生产级的分布式 KV 和单机存储引擎都是什么样子的,给自己涨了很多见识,以及学习了很多这方面的专业知识。

    这一段时间也激发了我新的创造灵感,让我开始了自己的第二个开源项目 LotusDB 。

    在一天上班的路上,我突发奇想,在存储引擎方向,能不能结合 B+ 树和 LSM 树的优势,毕竟一个是读稳定,一个是写吞吐更好的,有没有什么项目是结合了这两个 idea 的呢?

    有了这个想法之后,我便开始了初期的调研,主要是在网上搜索相关的内容,发现了有一些类似的概念,例如在 usenix 上有一篇名为 SLM-DB 的论文和我的想法大致是类似的。

    https://www.usenix.org/system/files/fast19-kaiyrakhmet.pdf

    有了这个理论支撑之后,我便有了更多的底气,然后在 Github 上也没有找到同类型的项目,看起来是没有人去做的。

    于是我召集了几个志同道合的同学,加我总计四人,开始了这个项目的设计和编码,最终项目的 demo 版本在 1 个月左右的时间就做出来了,主要是复用了之前 RoseDB 的一些代码,并且利用了一些现成的组件,在最短的时间内将我最初的想法进行了实践和验证。

    当然,这个项目一开始就是开源的,初期也获得了很多的关注,我之前在公众号还专门写过文章去进行介绍,然后也上过几次 Github Trending 榜单。

    后来架构方面也进行了一些演进,目前已经到了最新的 V2.0 版本,star 也已经 1.8k 了,只是目前这个项目到生产环境还有一段的距离,后面会持续进行迭代。 image.png 在工作方面,算是中规中矩的进行着,到了 2022 年上半年的时候,在上海经历了几个月严重的疫情肆虐,开始了很长一段时期的居家办公。

    2022 年中,我在第二家公司已经待了一年办左右,解封之后,长期的居家办公让我身心俱疲,加上其他的一些原因,让我有了看看新机会的想法。于是我开始了又一次跳槽,转到了数据库内核开发的岗位,这一次找工作的细节,留待下次再细说。

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3224 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:53 · PVG 20:53 · LAX 04:53 · JFK 07:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.