How-an-Early-Pivot-Catalyzed-an-Open-Source-Movement.md"
article_language: zh-CN
ingested_at: "2026-07-02"
status: article_done


MongoDB:一场早期转型如何催化开源运动

cover

摘要

本期《Crucible Moments》讲述了 MongoDB 从一次主动的、痛苦的转型中诞生,并一步步成长为年收入近 20 亿美元的开源数据库巨头的故事。创始人 Dwight Merriman 是 DoubleClick 的联合创始人,2007 年他观察到互联网时代的扩张正在压垮传统关系型数据库——PayPal 和 YouTube 都曾因数据库不堪重负而宕机。他的初创公司最初名为 10gen,目标是打造一个完整的平台即服务(PaaS),MongoDB 只是其中一个数据层的子系统。但在发布 Beta 版并获得正面反馈的同时,Google App Engine 的突然发布让 Dwight 意识到:PaaS 的完整愿景需要远超一家创业公司能够获得的资金和时间来支撑——"你需要十年时间和十亿美元,但对 VC 这么说根本行不通。"他做出了一项难以想象的主动决策:在产品运转良好、用户喜欢的情况下,将公司的全部业务计划撕毁,把应用层代码扔进垃圾桶,裁掉不做数据库的团队成员,将 MongoDB 从一个子系统提升为公司唯一的产品。此后 MongoDB 经历了两次关键的转型:从可下载开源软件转向全托管云服务 Atlas(管理层在投资者和销售团队的怀疑中坚持执行),以及通过 SSPL 许可证变更来抵御云服务商的"剥离式开源"威胁。每一次果断的艰难决策都使公司走向更大的成功。

正文

创业的起点:当数据库成为互联网的瓶颈

2007 年,Dwight Merriman——DoubleClick 的联合创始人——与 Kevin Ryan(DoubleClick CEO)和 Eliot Horowitz(DoubleClick 高级工程师)开始探讨新的创业方向。他们反复观察到同一个问题不断涌现:Web 应用的规模正在越过传统数据库的根本极限。

红杉合伙人 Roelof Botha 提供了第一手见证:在 PayPal,Oracle 数据库是频繁宕机的原因——数据库管理员像巫师一样"调校"系统、执行分片(sharding),本质上是用各种应急手段将数据库分割成更小的片段以拼凑出足够的扩展能力。在 YouTube,同样的问题导致网站何时会宕机几乎成了团队的日常焦虑。

"这些数据库根本不是为这种规模构建的,"Dwight 得出结论。"它们属于前互联网时代的产物。"

10gen(MongoDB Inc. 的原名)以构建一个完整的开源 PaaS 作为初始愿景——一个现代化的软件栈,包含新的编程范式、应用层工具和自研数据层(名为 MongoDB)。Dwight 将云计算视为刚刚兴起的革命性趋势,其核心理念之一是"横向扩展而非纵向扩展"——而当时几乎所有的传统工具包括数据库,都不是为此设计的。

第一次熔炉时刻:主动撕毁成功产品的商业计划

在发布 Beta 版并获得持续增长的用户和正面反馈之际,发生了一件意想不到的事:Google 突然发布了 App Engine——一个在概念上与 10gen 极其相似的 PaaS 产品。

Dwight 在一次家庭度假中,趁家人外出玩耍时独自坐在笔记本电脑前,开始深思大局。他逐渐意识到:构建完整的 PaaS 是一个巨型工程——即使最初设想的范围已经很大,现实却更加庞大。"你需要十年时间和十亿美元——对 VC 说这个方案根本行不通。也许 PaaS 只能由那些承受得起这种长期投资的公司来做,比如微软或 Google。"

但 10gen 面临着一个常人难以想象的困境:公司没有在失败。Beta 版运行良好,用户喜欢它——尤其是数据层 MongoDB 收到的反馈尤为积极。通常创业公司转型(pivot)是因为某些方面出了问题,但这次需要转型的理由是主动的战略判断。

Dwight 首先在小型会议室里向 CTO Eliot Horowitz 提出了这个想法:"我提议我们把现在的整个业务——这个正运行良好的 Beta 产品——扔掉,只做数据库这一件事。"Eliot 凝视了他片刻,沉默不语,然后说:"让我想想。"一小时后他回来答复:"我认为这是对的。我们应该做。"

第三位联合创始人 Kevin Ryan 则更加务实地回应:"我很震惊你会这么说。但如果你们两人都同意这是好主意,那就做吧。"

Dwight 形容这次转型为"情绪上的考验"——"我们可能在杀掉一个本来会成功的东西,而如果新方向彻底失败,那将是我做过的最愚蠢的决定之一。"应用层代码被扔进了垃圾桶;不从事数据库层工作的团队成员被裁掉。团队开始为所有主流编程语言编写数据库驱动程序。

"在心理学上,有一个叫做承诺与一致性(commitment and consistency)的概念,"Roelof Botha 评论说。"一旦做了决定,本能是保持一致性——放手是痛苦和困难的。但我们发现,创始人愿意以多快的速度做出这类艰难决定,是预测最终成功的最佳指标之一。"

开源作为获客引擎

2009 年 MongoDB 向公众发布。团队的战略是围绕开源构建"上市引擎":开源意味着更便宜、更大规模的免费营销。他们跑遍了全球——从旧金山到纽约、到欧洲、到亚洲——在每个城市的 Python 用户组中做演示,为每种流行语言做同样的事。

与此同时,"NoSQL"这一概念开始从各大科技公司内部浮出水面——Google、Amazon、Microsoft、LinkedIn、Netflix——每家都有自己的内部 NoSQL 数据库,但市面上几乎没有可供任何人使用的产品。MongoDB 及时地填补了这一空白。

2010 年红杉投资时,MongoDB 只有 12 名员工。但开发者热情爆发式的增长让投资决策变得极其清晰——"有一种魔法般的东西正在发生。"

第二次熔炉时刻:从下载到云服务的 Atlas 转型

2014 年中,Dev Ittycheria 担任 CEO 时,MongoDB 年收入约 4000 万美元,产品形式是开源的可下载软件。但一个日益明显的战略挑战浮现:越来越多客户将 MongoDB 部署在云基础设施上自行运营,在此过程中经常会遇到数据库配置错误、功能利用率不足等问题。而 MongoDB 对这些完全不可见,也无法提供帮助——同时错失了构建云交付商业模式的机会。

"我们预见到,如果能够提供云服务,客户就可以将那些非差异化的运维劳动外包给我们,从而真正专注于对他们至关重要的事,"Dev 回忆道。"这就是推动我们认真思考 Atlas 的催化剂。"

时机是 2015 年——在 Snowflake、Elastic 和 Confluent 之前,还没有任何一家独立公司尝试过提供云上的基础设施服务。"那时这不是一个显而易见的制胜法宝。"团队内部充满怀疑——能否从一家"交付可下载产品"的公司转型为"拥有运维能力来代客户管理数据库"的公司?

Tom Killalea,前 AWS 首席信息安全官(CISO),被引入董事会。最初他因担心"一刀切"的定位而犹豫,但在与工程团队面对面交流后完全改变了看法:"我意识到我彻底错了。MongoDB 在打造一个服务于多种用例、避免跨平台数据传输的数据库平台方面拥有巨大优势。"

Dev 设立了激进的时间表:在六个月后的 MongoDB World 用户大会上发布 Atlas。团队采取"创业中的创业"模式——将 Atlas 视为一个独立的初创公司。最困难的部分包括:从未有的人才肌肉(如站点可靠性工程师 SRE)、全新的营销漏斗管理、销售团队的薪酬方案重新设计、以及赤裸裸的现实——"第一天结束时的客户数是零。"

2016 年 6 月 28 日 Atlas 正式推出。但真正的考验在于:当时 Atlas 仅占公司收入 2-3%,在已在上市途中的企业中,要确保组织不忽视这个"数字太小以至于不引人注意"的产品。Dev 的做法是"在组织和董事会面前独立聚焦 Atlas 的指标"。

2017 年 IPO 路演中,质疑声四起:如何与云服务商既合作又竞争?没有成功的先例?大型企业会真正使用 Atlas 吗?团队逐一回应了这些疑虑。结果是:MongoDB 用了 10 年达到 1 亿美元收入,然后只用了 5 年达到 10 亿美元——很大程度上归功于 Atlas 的快速增长。如今 Atlas 贡献了 MongoDB 超过 70% 的收入,单产品年化收入超过 10 亿美元。

第三次熔炉时刻:改变许可证以生存

随着 Atlas 的成功,新的脆弱点暴露了出来。MongoDB 最初选用了 AGPL 许可证——一种比 GPL 和 Apache 更具限制性的许可,允许用户下载和使用软件,但限制他人修改后将其作为商业服务提供。这个选择是创始人非常具有远见的决策。

然而,创始人们预见到了一个隐患:在云时代,云服务商会将开源技术的免费版本嵌入其平台并作为服务收费——俗称"剥离式开源"(strip-mining open source)。AGPL 虽然已经设置了更多限制,但条款中仍有灰色地带,而 MongoDB 绝不想在法庭上解决这类争议。

"我们能看到墙上的字,"Dev 说。"云服务商几乎 100% 会基于 MongoDB 源代码推出自己的 Atlas 类似产品。如果发生,那将是某种意义上的 Game Over。"

解决方案是 SSPL(服务端公共许可证)——保持 AGPL 基本结构的同时,加入关键条款:任何提供基于 MongoDB 代码的服务商,必须要么购买商业许可,要么将自己的整个服务源代码公开。但 SSPL 并非 OSI 官方批准的许可证,这意味着 DevOps 和开源社区中的部分声音会谴责 MongoDB 不再是"真正的开源公司"。

"有足够多的例子——开源公司改变许可证后遭遇抵制,有些甚至被迫撤回并道歉,"Dwight 承认。"这确实可怕,但我想不出其他解决方案。如果不顺利,这将是巨大问题——你必须 100% 确信真的必须这么做。"

Dev 回忆道:"有人预言这将对业务产生长期负面影响。最终我做出了拍板决定——我们必须这样做,这对未来太重要了。"

2018 年 10 月,SSPL 正式公布。公司屏息等待社区反应。结果并非灾难——大部分反应是积极的,有批评声音存在,但"我们的 Atlas 业务在此之后反而增长更快了"。Dev 的核心理念经受住了检验:如果软件能比任何替代方案更好地解决问题,用户就不会在乎它是否是 OSI 官方批准的许可证。

回归平台:历史的讽刺

MongoDB 的用户群自然推动了产品的演进:客户反馈说他们已经使用 MongoDB 处理大部分工作负载,但仍需要单独部署搜索数据库——"为什么你们不能同时做这两件事?"这推动 MongoDB 从单一数据库扩展为一个完整的开发者数据平台——支持搜索、分析、边缘部署、跨云迁移等。

Dwight 反思道:"这颇具讽刺意味。我们最初以 PaaS 理念起家,然后做了转型——现在我们又回到一个实际上的平台。"红杉合伙人回顾 MongoDB 的十年旅程,最深的感触是"思考终点,然后反向推演——真正拿出勇气执行最大的杠杆点——并在逆境来临时坚持下去。"