危機時刻
2005 年 10 月 Oracle 收購 Innobase Oy,MySQL 核心交易引擎 InnoDB 易主。MySQL 員工與客戶一度恐慌:
- InnoDB 是唯一成熟支援 ACID/行鎖/外鍵的引擎
- Oracle 可能停止開發、提高授權費、甚至關閉原始碼
MySQL 三大應變策略
- 續約 InnoDB:現有合約不足 10 年,要求 Oracle 持續維護、修補 Bug
- 自研 Falcon:收購 Netfrastructure 團隊與技術,代號 Falcon,目標同年推出
- 開放引擎 API:Storage Engine API 標準化,引入第三方引擎 (SolidDB 等)
Falcon 引擎技術藍圖
- 基於 Netfrastructure 成熟代碼庫(已在生產環境驗證)
- 針對多核 CPU、大記憶體架構重寫鎖管理器
- 支援 MVCC、Savepoint、線上備份、線上 DDL
- 預測性預讀、自適應檢查點、壓縮頁面
商業邏輯:Oracle 成為「分包商」
Mickos:「Oracle 告訴我們生意如常,不希望我們腳步放緩,會修補 Bug。有 Oracle 當分包商其實不錯。」
- InnoDB 仍是預設/首選引擎,MySQL 專注 SQL 層創新
- 雙方續約多年,降低客戶遷移風險
- MySQL 保留隨時切換至 Falcon 的選項
行業分析 (RedMonk Stephen O'Grady)
「MySQL 自研引擎是對 Oracle 收購 Innobase 和 Sleepycat 的直接反應。掌握核心儲存技術符合長期利益,避免供應鏈風險與客戶困擾。」
關鍵數據
- Innobase 僅 5 人小團隊,Oracle 收購成本極低
- MySQL 2005 年營收 < 4,000 萬美元,但開發者最愛開源資料庫 (Evans Data)
- Google、Yahoo、PokerRoom 等大客戶付費訂閱
後續發展
- 2008 Sun 收購 MySQL AB,Falcon 納入 6.0 開發版
- 2010 Oracle 收購 Sun,Falcon 專案凍結,資源集中 InnoDB
- 現代 MySQL 8.0:單一核心 InnoDB 深化,插件 API 保留但少新引擎
- MariaDB/Percona Server 分支發展 ColumnStore、RocksDB (MyRocks)、Spider 等新引擎
啟示
- 開源專案核心依賴若掌握在競對手中,極大風險
- 「分包商」策略可短期緩衝,長期仍需自主可控
- 插件化架構雖增加複雜度,但構建生態護城河
- 商業開源雙軌制:社區版功能完整,企業版賣支援/認證/延遲功能