數據庫,做爲IT系統的基礎類軟件,發揮着很是巨大的做用。那麼企業在使用數據庫時,有什麼樣的方式能夠選擇?不一樣方式又各有其什麼特色呢?本文將從使用方式、適用場景、將來發展、成本因素(人力、財務、時間)及風險點等多角度分析十二種狀況(前六種爲本地方式,後六種爲雲端方式)。數據庫
這是比較傳統的一種方式。企業購買大型商業數據庫軟件,並對應購買服務支持工做。在過去3、四十年裏,這是主流的一種使用方式。能夠說也很好地知足了各種企業的快速發展。只是隨着近二十年來,互聯網化的變革,對此種方式產生了不小的衝擊。運維
這種方式適合傳統企業,對數據庫要求較高,自有技術能力有限,將來發展相對固定的狀況,將來發展隨着商業數據庫的發展而變化,從整體來看,將來雲化的需求對其衝擊較大。此外,在國產化、自主可控化等要求下,也會對這個模式影響較大。佈局
從人力成本角度來看,總體投入不大,主要是由廠商提供。自有人員主要是完成審覈、評估等工做。從財務成本分析,是幾個方案中,相對最高的一種。常常見到「某國有銀行,年度數據庫採購xxxx萬元的新聞」見諸報端。性能
正由於財力投入較大,這種方式也通常僅限於大中型企業或某些特殊行業要求。對時間成本而言,是相對較少的。選擇商業數據庫+服務,也就是看重其多年產品研發技術積累和成熟的商業交付能力。不管是產品成熟度、穩定性;仍是服務支持方面等,通常都是可在較短期內交付的。測試
這一方式也較爲常見。在前一方式中,隨着企業使用商業軟件的深刻,自有服務需求就變得迫切起來。經過創建自有服務體系,能夠更好地知足企業自身需求。這種方式,適合有必定技術積累的傳統企業。將來發展隨着商業數據庫的發展而變化,整體相對穩定。優化
從人力成原本看,相較於前者有更多的投入。商業數據庫產品推廣多年,相關人才保有量很大,所以通常很容易招聘到須要的人才,且每每價格也不過高。這與後面的開源軟件,造成鮮明的對比。財務成本投入仍然相對較大,商業軟件的採購費用佔總體的大頭。設計
從時間成本看,較前者有所增長,但總體仍然偏少。這主要是由於商業數據庫成熟的生態,很容易搭建出運維體系;且人才方面,也較容易去補充。資源
在風險方面,與前者相似。其中技術風險上,自有人員對商業產品的把控,較原廠仍是有所差距。固然對應人員風險就下降,經過自有人員對產品把控力更大。部署
在某些關鍵核心領域,仍然建議採用原廠支持,減低技術風險。同步
隨着開源數據庫的日益成熟,愈來愈多的企業開始使用開源數據庫。但相較於商業數據庫,開源方案對企業自有技術能力要求較高。所以,不少考慮搭上開源浪潮的企業,採用這種方式。適用於轉型中的企業,從商業走向開源,這種方式能夠在必定程度上規避風險。但通常爲過渡階段,長期來看仍是要培養企業自有的服務能力。
人力成原本看,處於中等水平,相較於商業服務,其綜合人力成本有所下降的。財務成本投入大致中等左右,但服務廠商不一樣差別較大。時間成本投入較少,但相較於商業方案,須要企業對商業服務作更多的技術考察。所以在初始的評測階段,每每須要投入較多的時間。
與商業服務不一樣,目前在開源服務方面,各廠商能力良莠不齊,也沒有較爲統一的標準。有些開源數據庫,是有所謂「原廠」類商業支持,但在國內聲小勢微。
這是典型的「互聯網」玩法,也是較爲常見的一種方式。適用於規模較大,企業定製化要求較高的場景。發展成熟可考慮向企業內部私有云或數據庫產品、方案方向發展,甚至對外賦能。
這種方式的人力成本相對較高,但根據企業的使用規模、難度差別較大。開源數據庫的發展也經歷了一段時間,市場上人才保有量也逐步提高。但對於高端人才,仍然相對稀缺,人才成本也較高。財務方面,主要也表如今人力成本上。
此外,對於基礎設施上也須要有必定投入,甚至可能比商業方案投入更大。時間成本較高,企業要創建成熟的開源數據庫運維體系,是須要必定時間積累。
風險分析與上者相似,突出人員風險,需長期培養投入。
這是方案3的一種特殊狀況。企業不是使用原生開源產品,而是使用第三方公司定製開源方案,多是純軟件,也多是軟硬一體式。這類方式,會針對開源軟件的不足,作定製化改進,知足企業級軟件的需求。
但這種方式通常企業沒法本身獨立運維,須要藉助第三方公司的商業支持。對數據庫的企業級特性有較高要求,但原生開源數據庫又沒法知足的狀況。對於短時間內有去除商業數據庫的需求場景,很是適合。隨着國內對開源數據庫使用水平不斷深刻,有愈來愈多的此類初創型企業出現。很是看好這種模式的將來發展。
人力成本,主要來自於第三方服務,整體不高。財務成本,主要看方案狀況,差別較大。時間成本,可視同純商業方案。
最後一種企業私有化部署方案,是一種雲化折中方案。受限於一些特殊國情,有些企業沒法直接使用公有云,但又急需相似公有云的平臺能力。所以,某些雲廠商或數據庫廠商提供了一種私有云化部署方案。可簡單理解爲將雲搬回家。
過去有種說法,說私有云會逐步萎縮,公有云會一統天下。但從近兩年的國內雲市場發展來看,私有云的發展速度某些指標甚至超過公有云。當咱們如今大談」toB」市場成爲下一個藍海時,這種模式也是toB服務市場的一個重要組成部分。這種方式,適合於大型企業,長期看好。
從成本角度來看,人力成本投入不大,主要取決於廠商人員投入。財力方面,雖然相較於大型商業解決方案,有必定的成本優點,但優點不甚明顯。時間成本上,也要長於傳統方案,畢竟這不是單一技術平臺的更換,而是涉及到Iaas、Paas等諸多層面。
其風險點除了在財力方面,更可能是考慮在對廠商的技術依賴性。相較於傳統方案,這種方式的依賴性甚至更高。廠商通常提供很好的私有云,及對應其自有公有云的打通方案;但對其餘公有云或企業自有平臺,則較難打通。
這是一種上雲使用的初級階段,企業僅使用雲的Iaas部分,其他均自建。這種方式可充分利用公有云帶來的彈性優點,將企業原有的技術積累延續到雲端。對於企業來講,這種方式也是最爲「平滑」的,甚至應用能夠不作更多感知,仍然像使用企業內部IT資源同樣,使用公有云資源。很適合於有多雲、跨雲需求的場合。但缺點是沒法利用雲廠商技術能力帶來的附加值。
從成本角度來看,企業可作到」最優」。僅使用裸機的狀況下,徹底能夠按」價低者得」的策略,優化選擇。在必定規模狀況下,公有云仍是有其價格優點,況且還能夠充分利用彈性能力,動態縮減,根據企業發展隨時調整IT投入。人員方面,與企業自主運維變化不大。時間方面,由於底層交付速度的提高,仍是有必定的提升。
風險不大,僅僅是依賴公有云底層,很容易遷移到其餘雲廠商或遷回自有。
這是一種較爲特殊的狀況。企業選擇將商業數據庫,構建在公有云上。但其沒有選擇雲廠商提供的,而是自主構建或選擇第三方廠商協助完成。這每每是一些中小型的企業,其規模不足以支持私有化部署,而應用又依賴於商業數據庫產品。企業想要充分利用雲的彈性,所以組合出這種使用方式。
財務成原本說,主要是針對基礎設施層面,會較自建有所節省。人力、時間方面,差別不大。
風險在於,某些商業數據庫針對雲場景的不予支持,企業有必定技術風險。要麼有比較強大的自主技術能力,要麼依賴於第三方服務廠商。
這是雲廠商推出的最爲「傳統」的數據庫服務,也是目前最多的一種選擇。雲廠商基於開源的數據庫版本+自有的平臺服務,構建其數據庫產品。其核心的數據庫與開源的版本,是徹底一致的,各家比拼的更可能是平臺服務能力。這種方式對於企業的運維要求很低,基本能夠依賴於雲廠商提供的能力(除了個別高可用、容災需求外)。這一方案比較適合於初期上雲企業,可逐步摸索雲與原有方式的區別。
財務成原本說,與商業方案比較無疑是有優點的,但與自主開源對比,幾乎沒有優點。其更多的是在快速交付、擴縮容等方面產品特色。此外,對於人力成原本說,因運維類工做大幅度下降,所以是能夠節約必定人力,壓縮自有人員規模。時間成本方面,也有所提高。
數據庫自身風險不大,畢竟其使用的與開源同一版本,技術上可遷移至其餘雲廠商。當數據庫版本升級後,也能夠享受到對應的技術紅利。但對平臺服務,是存在必定依賴的,各家能力不一樣,須要有適應過程。此外,運維依賴雲廠商,也存在必定技術風險。自主的技術能力,會逐步喪失。
雲廠商除了提供與開源一致版本外,通常還提供私有定製版本。它每每是基於某開源數據庫某一版本的深度定製,針對某些特性作了增強。固然有些以反饋社區的方式,回饋給開源(可能將來會merge入新版),但不少僅存在在」雲私有DB」。如企業有針對某一特殊場景(如秒殺)或其餘方面(如金融級數據同步)的強需求,可考慮使用此方案。當
然使用也意味着與雲廠商深度綁定。此外,在平臺服務方面,與上面狀況相似。這種方案比較適合於對數據庫有必定要求,而原生開源版本又不支持的狀況。
與上一種方式相似。
風險在於綁定單一廠商,通常很難下來。這與使用大型商業數據庫的狀況相似。固然能夠在應用端作個設計,儘可能減小對特性的依賴。此外,由於是定製版本,將來開源版本的升級可能不會短期內支持,甚至可能不會考慮支持,徹底走向獨立分支的道路。針對這點,企業也是須要關注的。
某些大的雲廠商,除了上述兩種外,可經過自研數據庫方式,增長將來的產品競爭力。從最新的Gather報告來看,更多的雲廠商加入進來,這也給數據庫總體市場帶來了活力。從預測來看,均一致看好雲原生數據庫的將來發展。相較於前兩種方式,這類數據庫更是誕生於雲,從設計之初就更多考慮了雲化環境特色,所以極具競爭力。
固然,從目前來看,現有云原生還處於」初級」階段,將來在解決了更大規模擴展性、多讀多寫能力等後,其將真正進入井噴式發展。現有各大廠,在這一領域紛紛重點佈局,加大投入。對企業而言,無疑又多了一種選擇,特別是某些場景(如海量數據等),原生開源、擴展開源產品均沒法知足。
目前各廠商都在竭盡全力地推廣,所以從成本上企業仍是能夠受益的;但從長期來看,還須要進一步觀察。從人員來講,企業也是須要必定投入,畢竟這是一種全新的數據庫,雖然雲廠商提供了很好的交互平臺,但仍是須要企業作必定的技術儲備,所以人員上還須要些投入。時間上來看,對於這個比較新的產品,還須要作更多的測試評估工做,所以也是須要多些投入。
風險相似上面,甚至有過之。企業應用將徹底依賴於廠商產品。儘管不少是宣傳兼容開源或商業數據庫,但畢竟不是同一產品。這點還須要企業仔細評估。此外,針對兼容性、備份恢復、高可用、數據同步、跨雲容災等,都是值得投入研究的。
這是一類小衆的方案,其背景是緣起於數據庫廠商與雲廠商的蛋糕劃分問題。有些數據庫廠商(如MongoDB)不但願將雲數據庫市場由雲廠商主導,而是但願可由自身主導,構建不依賴於雲廠商的獨立生態。目前這種方式國內見得很少,此處暫不評論了。
做者:韓鋒
首發於做者我的公號《韓鋒頻道》。
來源:宜信技術學院