分布式數(shù)據(jù)庫(kù)一定會(huì)替代Oracle嗎?

科技云報(bào)道原創(chuàng)。

面對(duì)互聯(lián)網(wǎng)業(yè)務(wù)的不斷深化以及業(yè)務(wù)量的爆發(fā)式增長(zhǎng),傳統(tǒng)數(shù)據(jù)庫(kù)架構(gòu)迎來(lái)了前所未有的挑戰(zhàn)和變革。
在傳統(tǒng)數(shù)據(jù)庫(kù)領(lǐng)域,Oracle一直占據(jù)了很大的市場(chǎng)份額,很多企業(yè)的業(yè)務(wù)系統(tǒng)基于此實(shí)現(xiàn)OLTP交易場(chǎng)景。
?
近年來(lái),隨著分布式技術(shù)的發(fā)展,分布式數(shù)據(jù)庫(kù)逐漸占據(jù)了OLTP領(lǐng)域較大的市場(chǎng),尤其在互聯(lián)網(wǎng)領(lǐng)域,MYSQL、PG等分布式數(shù)據(jù)庫(kù)的應(yīng)用非常廣泛。
?
在中國(guó),軟件國(guó)產(chǎn)化、自主可控戰(zhàn)略的提出,“去Oracle”逐漸被提上日程,非互聯(lián)網(wǎng)企業(yè)也開(kāi)始考慮數(shù)據(jù)庫(kù)轉(zhuǎn)型。其中,分布式數(shù)據(jù)庫(kù)即是一個(gè)重要轉(zhuǎn)型方向。
?
然而,分布式數(shù)據(jù)庫(kù)應(yīng)該如何在企業(yè)中正確地落地,一直是業(yè)界討論的焦點(diǎn),首當(dāng)其沖的問(wèn)題就是:分布式數(shù)據(jù)庫(kù)是否能替換Oracle?
走過(guò)漫長(zhǎng)歷程分布式數(shù)據(jù)庫(kù)的春天來(lái)了
?
在回答這個(gè)問(wèn)題之前,先來(lái)看看分布式數(shù)據(jù)庫(kù)的發(fā)展歷程和特點(diǎn)。
?
20世紀(jì)80年代,伴隨著關(guān)系數(shù)據(jù)庫(kù)理論的誕生,IBM和Oracle兩家公司開(kāi)始提供商業(yè)化的數(shù)據(jù)庫(kù)產(chǎn)品,服務(wù)于各類大型企業(yè)。
?
初期的數(shù)據(jù)庫(kù)都是單機(jī)軟件,跑在專有的硬件之上,比如IBM的大機(jī)、小型機(jī),如果業(yè)務(wù)量或者數(shù)據(jù)量增加,只能進(jìn)行垂直擴(kuò)展,即采用增加CPU、存儲(chǔ)的方式。
?
這套體系的優(yōu)點(diǎn)是非常穩(wěn)定,缺點(diǎn)是開(kāi)放性不夠,與通用x86服務(wù)器體系之上的開(kāi)發(fā)環(huán)境兼容性差,另外當(dāng)業(yè)務(wù)量增長(zhǎng)過(guò)快時(shí),其擴(kuò)展能力有限,而且這套系統(tǒng)的造價(jià)非常昂貴。
?
2000年以后,隨著互聯(lián)網(wǎng)在線業(yè)務(wù)的發(fā)展,業(yè)務(wù)系統(tǒng)訪問(wèn)的并發(fā)度呈指數(shù)級(jí)上升,海量數(shù)據(jù)計(jì)算和分析需求越來(lái)越普遍,傳統(tǒng)單機(jī)系統(tǒng)在業(yè)務(wù)支撐、成本、開(kāi)放性等方面均面臨巨大挑戰(zhàn),數(shù)據(jù)庫(kù)垂直擴(kuò)展的模式也無(wú)法維系。
?
以支付業(yè)務(wù)為例,隨著在線購(gòu)物、在線繳費(fèi)方式的普及,支付業(yè)務(wù)系統(tǒng)的并發(fā)量迅速增長(zhǎng),尤其是在“雙十一”“618”“春節(jié)搶紅包”等場(chǎng)景下,每秒有上百萬(wàn)筆支付交易。
互聯(lián)網(wǎng)企業(yè)開(kāi)始探索新的水平擴(kuò)展的方案,最常見(jiàn)的就是應(yīng)用系統(tǒng)通過(guò)分庫(kù)分表進(jìn)行解決。
?
但是,這種解決方案的應(yīng)用系統(tǒng)需要做大量改造,需要感知數(shù)據(jù)存儲(chǔ)位置,增加了運(yùn)維的復(fù)雜性,并因此出現(xiàn)了中間件的方式,如Mycat等。這種方式雖實(shí)現(xiàn)了數(shù)據(jù)對(duì)應(yīng)用的透明,但未解決數(shù)據(jù)庫(kù)運(yùn)維的痛點(diǎn)。
?
隨著大數(shù)據(jù)技術(shù)的發(fā)展,以Hadoop、Greenplum為代表的非結(jié)構(gòu)化大規(guī)模數(shù)據(jù)處理技術(shù)崛起。
這些技術(shù)主要采用Shared-nothing架構(gòu),在分析領(lǐng)域率先實(shí)現(xiàn)了分布式的擴(kuò)展,分析的主要任務(wù)是數(shù)據(jù)的查詢,其應(yīng)對(duì)的挑戰(zhàn)主要是海量數(shù)據(jù)的存儲(chǔ)、計(jì)算,對(duì)于事務(wù)的要求較低。
?
2010年后,谷歌Spanner、Tidb采用Paxos或Raft等一致性協(xié)議來(lái)解決中間件方案的單點(diǎn)瓶頸問(wèn)題,這為事務(wù)數(shù)據(jù)庫(kù)的分布式化提供了新的理論依據(jù)。
?
之后,分布式數(shù)據(jù)庫(kù)發(fā)展迎來(lái)了熱潮,各類分布式數(shù)據(jù)庫(kù)百花齊放。
?
相比于傳統(tǒng)的單機(jī)或主備模式的集中式數(shù)據(jù)庫(kù),分布式數(shù)據(jù)庫(kù)是傳統(tǒng)數(shù)據(jù)庫(kù)技術(shù)與計(jì)算機(jī)網(wǎng)絡(luò)的有機(jī)結(jié)合,在平滑擴(kuò)展、高性能、高可靠、高可用、低成本等方面具有優(yōu)勢(shì),特別是當(dāng)數(shù)據(jù)量上升到一定程度,在性能方面可突破集中式數(shù)據(jù)庫(kù)的瓶頸。
?
回顧過(guò)去10年,分布式數(shù)據(jù)庫(kù)經(jīng)歷了從行業(yè)質(zhì)疑、小規(guī)模試水、到如今在金融、互聯(lián)網(wǎng)等行業(yè)的探索和應(yīng)用,有一些甚至在生產(chǎn)系統(tǒng)中得到大量應(yīng)用,可以說(shuō)分布式數(shù)據(jù)庫(kù)的春天已經(jīng)到來(lái)。
分布式數(shù)據(jù)庫(kù)替代Oracle不能一刀切
?
那么,分布式數(shù)據(jù)庫(kù)足以替代Oracle這樣的傳統(tǒng)數(shù)據(jù)庫(kù)了嗎?
?
傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)在核心交易等領(lǐng)域深耕了40多年,到目前為止,大部分純交易場(chǎng)景不論從數(shù)據(jù)量還是商業(yè)模式都沒(méi)有本質(zhì)的變化,其業(yè)務(wù)的擴(kuò)展空間的確十分有限。
?
在企業(yè)數(shù)字化轉(zhuǎn)型的過(guò)程中,數(shù)據(jù)量隨著業(yè)務(wù)發(fā)展快速膨脹,為數(shù)據(jù)庫(kù)帶來(lái)全新的市場(chǎng)機(jī)遇。而分布式數(shù)據(jù)庫(kù)的設(shè)計(jì)初衷,正是為了解決全新的數(shù)字化業(yè)務(wù)問(wèn)題。
在Oracle所無(wú)法滿足的場(chǎng)景中,分布式數(shù)據(jù)庫(kù)成為了理想的落地方案。
?
但值得注意的是,在替代Oracle的問(wèn)題上,并沒(méi)有一刀切的答案。
?
分布式數(shù)據(jù)庫(kù)的誕生,首先是為了解決傳統(tǒng)數(shù)據(jù)庫(kù)不擅長(zhǎng)的場(chǎng)景,在關(guān)系型數(shù)據(jù)庫(kù)做到極致的領(lǐng)域同樣需要很長(zhǎng)的時(shí)間才能完善,并不是為了單純替換某個(gè)原有系統(tǒng)。
?
如果只是為了使用及推廣新技術(shù),而進(jìn)行固有架構(gòu)的替換,將會(huì)面臨極大的技術(shù)風(fēng)險(xiǎn)與挑戰(zhàn)。
?
可以看到,目前國(guó)內(nèi)絕大部分的分布式數(shù)據(jù)庫(kù)的產(chǎn)品試用,都是在一些非核心系統(tǒng)的應(yīng)用。例如:在金融機(jī)構(gòu),分布式數(shù)據(jù)庫(kù)常用于渠道類業(yè)務(wù)如:網(wǎng)聯(lián)、第三方支付對(duì)接等,在生產(chǎn)環(huán)境中驗(yàn)證產(chǎn)品功能和穩(wěn)定性,并沒(méi)有實(shí)現(xiàn)真正的替代。
?
同時(shí),分布式數(shù)據(jù)庫(kù)的產(chǎn)品成熟度也有待提升。
相比較于DB2、Oracle等商業(yè)數(shù)據(jù)庫(kù)和MySQL 等開(kāi)源數(shù)據(jù)庫(kù),分布式數(shù)據(jù)庫(kù)產(chǎn)品在生態(tài)圈、技術(shù)手冊(cè)、技術(shù)支持等多個(gè)方面,還是稍遜一等,仍然有大量可提升的空間。
?
由于尚無(wú)統(tǒng)一的業(yè)界標(biāo)準(zhǔn),也沒(méi)有哪一款分布式數(shù)據(jù)庫(kù)產(chǎn)品,是這個(gè)領(lǐng)域不可爭(zhēng)議的第一名,就如同Oracle一樣。
?
對(duì)于分布式數(shù)據(jù)庫(kù)而言,想要替代Oracle,更大難點(diǎn)在于如何從Oracle遷移出來(lái)。
?
很多企業(yè)原本都是傳統(tǒng)數(shù)據(jù)庫(kù)一體化解決方案,其設(shè)計(jì)與運(yùn)維經(jīng)驗(yàn)不一定完全適合分布式數(shù)據(jù)庫(kù)。從Oracle遷移至分布式數(shù)據(jù)庫(kù)就會(huì)遇到各種障礙,例如:
?
不同數(shù)據(jù)庫(kù)之間的異構(gòu)數(shù)據(jù)如何做到無(wú)損遷移?遷移過(guò)程中如何保障系統(tǒng)穩(wěn)定性?如何設(shè)置異構(gòu)數(shù)據(jù)庫(kù)并行過(guò)渡期?Oracle數(shù)據(jù)庫(kù)往往和應(yīng)用耦合度較高,遷移過(guò)程還會(huì)涉及到應(yīng)用遷移和改造,如何評(píng)估改造量和改造難度?兼容性如何保障?數(shù)據(jù)庫(kù)遷移完成后如何成功建轉(zhuǎn)運(yùn)?傳統(tǒng)運(yùn)維方案中的網(wǎng)絡(luò)、存儲(chǔ)、監(jiān)控告警、備份恢復(fù)等等應(yīng)該如何規(guī)劃?
?
除此之外,盡管分布式數(shù)據(jù)庫(kù)比原來(lái)各業(yè)務(wù)系統(tǒng)獨(dú)立使用數(shù)據(jù)庫(kù)更加易于運(yùn)維,但是剛引入分布式數(shù)據(jù)庫(kù),難免碰到運(yùn)維技術(shù)和人力跟不上的階段。
這些都是分布式數(shù)據(jù)庫(kù)需要解決的現(xiàn)實(shí)問(wèn)題。
?結(jié)語(yǔ)
?
從全球數(shù)據(jù)量發(fā)展的方向來(lái)看,其爆發(fā)性增長(zhǎng),主要集中在基于數(shù)字化創(chuàng)新的多樣化業(yè)務(wù)場(chǎng)景。
因此,單純替代傳統(tǒng)Oracle占據(jù)核心優(yōu)勢(shì)的固有領(lǐng)域,并非是分布式數(shù)據(jù)庫(kù)未來(lái)的增長(zhǎng)方向。
?
分布式數(shù)據(jù)庫(kù)的最佳落地與使用方式,是從海量數(shù)據(jù)業(yè)務(wù)到核心的逐步迭代過(guò)程。
先從存在海量數(shù)據(jù)彈性擴(kuò)展的新興業(yè)務(wù)需求入手,隨著業(yè)務(wù)革新不斷的深入,逐漸滲透進(jìn)傳統(tǒng)業(yè)務(wù)及應(yīng)用中。
?
企業(yè)在選擇分布式數(shù)據(jù)庫(kù)落地場(chǎng)景時(shí),也應(yīng)該選擇適當(dāng)?shù)膽?yīng)用場(chǎng)景,以真正發(fā)揮其優(yōu)勢(shì)能力,并持續(xù)打磨技術(shù)團(tuán)隊(duì)的運(yùn)維能力,并逐步推向核心。

來(lái)源:科技云報(bào)道

免責(zé)聲明:此文內(nèi)容為第三方自媒體作者發(fā)布的觀察或評(píng)論性文章,所有文字和圖片版權(quán)歸作者所有,且僅代表作者個(gè)人觀點(diǎn),與極客網(wǎng)無(wú)關(guān)。文章僅供讀者參考,并請(qǐng)自行核實(shí)相關(guān)內(nèi)容。投訴郵箱:editor@fromgeek.com。

極客網(wǎng)企業(yè)會(huì)員

免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書(shū)面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。

2021-04-20
分布式數(shù)據(jù)庫(kù)一定會(huì)替代Oracle嗎?
分布式數(shù)據(jù)庫(kù)一定會(huì)替代Oracle嗎?

長(zhǎng)按掃碼 閱讀全文