对国产数据库的一期一会

💡 原文中文,约4500字,阅读约需11分钟。
📝

内容提要

作者在国产数据库行业工作一年后离职,因政策红利下产品缺乏竞争力,工作如Node.js主线程般频繁切换,售后救火不断,文档和错误码体系混乱,缺乏兜底和休息。他反思组织不应依赖个人超负荷运转,应允许休息,最终决定告别,寻求正常生活。

🔎

延伸解读

政策红利下的竞争现实

文章指出,国产数据库在很大程度上依赖政策红利,因为中国企业天然更倾向于使用免费的 MySQL 和 PostgreSQL,它们成熟、便宜、生态完善。国产数据库需要证明的不仅是技术能力,更是客户为何要放弃免费且足够好的产品转而付费。当外部驱动力消失,这一挑战将更加严峻。

错误码体系与工程化

作者从售后经验中反思,文档混乱的根源在于产品缺乏标准化的错误码体系。大量错误依赖字符串匹配和人工经验判断,导致错误、日志、文档、监控、告警等无法串联。如果建立稳定的错误码,就能形成从研发到售后的完整链路,提升诊断和处置效率,这体现了产品工程体系的成熟度。

组织冗余与个人边界

作者以系统高可用类比组织,指出依赖少数人超负荷运转并非真正的高可用,而是故障尚未发生。组织需要冗余、隔离、限流和清晰的责任边界,不能将救火视为常态。个人有能力兜底不等于应该被默认承担所有责任,允许休息应是基本价值而非特许。

Q&A

作者为什么从国产数据库行业离职?

作者离职是因为在国产数据库行业工作一年后,发现产品缺乏竞争力,工作强度大,频繁切换任务,售后救火不断,文档和错误码体系混乱,缺乏兜底和休息,最终决定告别,寻求正常生活。

作者认为国产数据库面临的主要挑战是什么?

作者认为国产数据库很大程度上是政策红利,在没有外部因素驱动的情况下,中国企业更愿意使用免费的MySQL和PostgreSQL,因为它们成熟、便宜、生态完善。国产数据库需要证明为什么客户应该放弃免费且足够好的产品而付费使用。

作者对超融合技术有什么看法?

作者认为超融合概念很好,整合资源可以降本增效,但降本是有代价的,集中会增加复杂度和风险,可能增加新的单点风险。因此他更关心技术方案省掉了什么、增加了什么风险,以及出了问题谁来兜底。

作者为什么认为文档建设很重要?

作者认为文档建设很重要,因为文档不好往往是更深层问题的表象,比如错误码体系不标准化。如果错误码标准化,错误、日志、文档、知识库、监控、告警、自动诊断和售后流程就能串联起来,形成完整链路,而不是依赖人工经验。

作者用Node.js主线程比喻了什么?

作者用Node.js主线程比喻自己的工作状态:像主线程一样不断处理事件(售后、研发、客户等),频繁切换上下文,几乎没有空闲时间,导致无法进行深入思考,人也需要休息。

作者认为组织应该怎样避免依赖个人超负荷运转?

作者认为组织应该像高可用系统一样,有冗余、隔离、限流和清晰的责任边界,不能依赖某几个人永远在线。应该允许人休息,休息不应是特许,而应是普世价值。

作者在客户现场处理另一个客户问题说明了什么?

这个场景说明组织缺乏冗余和明确的责任边界,导致一个人不得不同时处理多个问题,即使结果成功,也不能证明工作方式正确,可能只是证明这个人没有被压垮。

作者从这段经历中获得了哪些成长?

作者接触了数据库、Greenplum,做过研发和售后,写过代码,去过客户现场,处理过线上故障,理解了商业数据库产品的研发、交付和运转,也认识到工程问题如何变成售后成本,从救火中理解了工程和组织的系统性。

🏷️

标签

➡️

继续阅读