商用數據庫之死:Oracle 面臨困境
我們預計到 2021 年,年產值 296 億美元的商業數據庫市場會收縮 20% 至 30%,認為 Oracle 無法讓收入來源足夠快地實現轉型(從傳統的商業數據庫轉向基于云的訂購產品),以抵消這個市場下滑的頹勢,這個市場是 Oracle 收入的一大傳統核心。
這二十年來,商業數據庫市場仍然是 IT 行業最穩定、最具黏性的領域之一,Oracle、IBM 和微軟三家廠商瓜分了 80% 的份額。然而,我們認為這個領域衰退的速度和幅度可能會讓許多投資者大吃一驚。
已經影響數據庫市場的通貨緊縮壓力剛剛開始體現,包括:
- 遷移到軟件即服務(SaaS),大多數產品使用免費開源數據庫;
- 社交媒體、物聯網和非結構化/半結構化數據等使用場合迎來更快速的增長,這些使用場合不適合 SQL 標準,而數據庫寡頭們恰恰有賴于這項標準;
- 眾多的免費開放源代碼選項日益穩定、功能日益強大,其中大多數選項是“Not Only SQL”(NoSQL),因此極其適合上述使用場合;以及
- 由于摩爾定律帶來了處理器、內存、固態存儲和網絡吞吐量等方面的改進,NoSQL 數據庫繼續獲得異常顯著的好處――這些改進提升了同時快速處理 NoSQL 使用場合和 SQL 使用場合的能力,并逐漸使純 SQL 數據庫淪為邊緣化,正如純 SQL 數據庫在 80 年代末和 90 年代使基于大型機的數據庫淪為邊緣化。)
來自數據庫軟件的收入占 Oracle 2016 財年總收入的約 36%,占其營業利潤的約 55%。
注意:數據庫軟件和內部部署型應用軟件包括許可證收入和維護收入。
該公司預計的數據庫收入下降是明擺著的,此外其內部部署型應用軟件的收入也在下降,這塊收入占 2016 財年總收入的約 25%,占營業利潤的約 39%。
微軟和 IBM 將只是略微受到傷害,因為數據庫軟件只占每家廠商總收入的區區5% 左右。
如果不采取積極的行動來大幅提高非數據庫收入,我們認為 Oracle 無法足夠快地抵消商業數據庫收入即將下降的頹勢,以保持其目前的市值。
具體來說,我們認為 Oracle 需要實行更激進、更快速的組織轉型和文化轉型,變成一家“云優先”的企業,激勵銷售隊伍和客戶向云積極邁進。該公司還需要整合各種自家開發和收購而來的云/ SaaS 產品,整合到單個平臺,以便將來獲得經營杠桿效應。未來幾年,這些項目會在幾個方面帶來痛苦,尤其是財務方面。為了部分抵消痛苦,Oracle 應該剝離剩余的硬件及其他非核心業務。
主題說明
對于那些對技術深究更有興趣的人來說,下面從歷史的角度更深入地解釋了五個相互關聯的趨勢,這些趨勢愈演愈烈,將共同導致商業數據庫市場到 2021 年收縮 20% 至 30%。
企業繼續遷移到 SaaS/云
除了幾款建立在 Oracle 數據庫基礎上的初期 SaaS 產品(即 Salesforce.com、NetSuite 和 Oracle 本身)外,很難找到使用任何商業數據庫的 SaaS 提供商。對于 2005 年以后創辦的公司而言,這個數字幾乎為零。
如今絕大多數的 SaaS 提供商使用開源數據庫,或者像 SaaS 人力資本管理(HCM)提供商 Workday 那樣,開發自己的數據庫。許多用戶之前使用內部部署型企業應用軟件,包括五個核心客戶端/服務器應用軟件類別中的一個:ERP(企業資源規劃)、CRM(客戶關系管理)、HCM(人力資本管理)、SCM(供應鏈管理)和 BI(商業智能)應用軟件,改用 SaaS 模式后,消除了商業數據庫席位(seat),因而消除了原本帶來的維護/支持收入和未來升級收入。連改用 Salesforce.com 的企業席位給 Oracle 創造的收入也將比當初部署在企業內部環境時少得多。
因此,我們認為企業遷移到 SaaS/云對商業數據庫收入而言是非常不利的趨勢。此外,我們仍處在從客戶端/服務器到 SaaS/云的早期階段。據不同的研究公司聲稱,這種遷移只完成了 10% 至 25%,只是剛剛開始影響更重要的關鍵任務應用軟件(比如 ERP),它們更有可能在更高端的 SQL 數據庫(包括 Oracle 和 IBM 的那些數據庫以及微軟的一小部分數據庫)上運行。
商業 SQL 數據庫不是很適合處理最有吸引力的新興使用場景
SQL 在 1987 年成為標準后,20 年來它在定義如何組織、搜索和排序數據方面的地位無可撼動。然而,到 2000 年年中,各大科技公司在處理數據的絕對數量和不同結構方面開始遇到了 SQL 數據庫存在的限制,它們想按照需要來保留、瀏覽、分析數據,并將數據提供給用戶/客戶。
亞馬遜、谷歌、LinkedIn 和 Facebook 各自通過開發和實施自己的數據庫軟件――這種數據庫軟件打破了 SQL 標準的制約,解決了自己的擴展問題。
此外,不久后每家公司都發布了開源版本的數據庫。因此,2008 年和 2009 年它們開發出了眾多新的開源數據庫,導致了《下一代數據庫》的作者蓋伊·哈里遜(Guy Harrison)所說的“某種寒武紀大爆炸”現象。由于紛紛遠離 SQL,這些數據庫都屬于“NoSQL”這類數據庫――盡管大多數數據庫彼此大不相同,就像它們跟 SQL 大不相同那樣。
鑒于數據的數量和種類迅猛增長――這歸因于更豐富的社交媒體內容、更多的社交媒體用戶以及自動獲取的物聯網數據激劇增多,另外鑒于企業日益渴望分析獲取的數據,我們認為,適合 NoSQL 的使用場合其數量很快就會遠遠超過適合 SQL 的使用場合。
這些新型使用場合的興起將推動大企業更多地采用開源 NoSQL 解決方案,結果商業 SQL 數據庫成了犧牲品。
NoSQL 數據庫和讀時模式(Schema-on-Read)方法遵循摩爾定律
SQL 數據庫和寫時模式(Schema-on-Write)未遵循摩爾定律。通常來說,NoSQL 數據庫所需的處理器、內存和存儲資源比 SQL 數據庫密集得多,即使考慮到這一事實:它們放松了 SQL 在數據組織方式方面的許多約束。雖然 NoSQL 數據庫架構早在 2005 年就已經存在――至少從理論上來說是這樣,但當時根本沒有足夠的處理能力、內存容量和存儲空間,好讓它們在學術界之外的領域投入實際應用。
在處理器/內存/帶寬資源相對匱乏的 20 世紀 80 年代和 90 年代,遵守更加嚴格的 SQL 標準實際上是必須的,那樣才能確保企業將應用軟件從大型機和小型計算機遷移到更加分布式、依賴網絡的客戶端/服務器架構所需要的那種性能和可靠性,尤其是那些更重要的關鍵任務應用軟件。
獲得 SQL 尚可接受的性能和可靠性需要付出代價,這主要是由于:
- 名為模式的數據結構整體上缺乏靈活性;
- 在部署數據庫及相關應用程序之前定義該結構帶來的繁重要求;
- 隨著時間的推移,很難改變該結構,以便獲取不同類型的數據,以便更好地體現數據結構和企業組織方面的變化;以及
- 需要寫時模式方法,即在輸入數據時讓數據適合模式,而不是讀時模式,只是將數據倒到一只大大的“容器”中,之后將它組織到模式中。
然而,隨著時間的推移,摩爾定律促使處理能力、內存容量及速度、存儲容量及速度以及網絡吞吐量都得到了提升,這使得用戶越來越不需要僵硬的 SQL 標準和寫時模式方法,這股勢頭只會延續下去。因此,伴隨著每個摩爾定律周期,SQL 及其節省資源的寫時模式方法越來越失去競爭優勢,而 NoSQL 及其資源相對低效,但極其靈活的讀時模式方法變得日益擺脫當初阻礙它得到采用的約束。
內存技術(In-Memory)帶來了大好前景,消除了傳統硬盤的缺點
SQL 成為標準化時,傳統硬盤(HDD)是可以實時訪問的唯一具有成本效益的存儲介質。因此,寫入到 SQL 數據庫軟件的許多基本代碼旨在忍受 HDD 的缺點,比如讀取請求的數據并將數據傳輸到內存中速度很慢,故障率比較高――至少,與系統的主要固態部件(比如 CPU、內存和網絡吞吐量)相比是這樣。現在由于固態硬盤(SSD)正迅速成為一種具有成本效益的 HDD 替代品,傳統 SQL 數據庫軟件的設計、當然還有大部分代碼現在毫無必要了――而當初做出這樣的妥協,是為了適應速度慢得多的 HDD。
相比之下,開發的許多 NoSQL 數據庫是為了最大限度地利用 SSD 存儲介質,這些數據庫可能會得到更新,以便充分利用更新穎的非易失性內存技術,比如英特爾/美光聯合開發的 3D xPoint,這種內存正在推向市場。我們認為,鑒于繼續遵守 SQL 標準、保持自己的向后兼容性方面有著強烈的需求,SQL 數據庫廠商無法像許多開源項目那樣迅速針對 SSD 優化其代碼,這讓它們進一步處于競爭劣勢――這是克萊頓·克里斯滕森(Clayton Christensen)所說的“創新者的困境”的一個典型例子。
市面上 “SQLMethadone” 解決方案越來越多,讓企業可以擺脫昂貴的商業數據庫
我們看到越來越多的軟件工具和服務旨在幫助企業從商業 SQL 數據庫遷移出去。隨著時間的推移,連在 Oracle 或 IBM 數據庫上運行的最重要的關鍵任務應用軟件也可能日益被包圍、“被隔離”、被拆卸,這一幕正如上世紀 90 年代向客戶端/服務器架構轉型期間許多傳統大型機應用軟件的遭遇那樣。
雖然來自 Oracle、IBM 和微軟等巨頭的 SQL 數據庫會在一些企業存活好多年――再度酷似大型機,但是它們會日益淪為邊緣化,并且它們的成本會盡可能被減少。我們看到許多這樣的工具已經在 Hadoop 生態系統里面日趨成熟,該生態系統已經有多種方法可以與 SQL 數據庫集成起來,及/或將 SQL 接口和查詢功能放在 NoSQL 數據庫上。在我們看來,這一幕與上世紀 90 年代初出現將大型機應用軟件與 PC 和客戶端/服務器應用軟件集成起來的多種方法何其相似。