順勢(shì)而生又順勢(shì)而變:當(dāng)NoSQL失去“No”
譯文【51CTO.com快譯】隨著NoSQL熱潮的全面來(lái)襲,我們又發(fā)現(xiàn)了新一輪新、舊數(shù)據(jù)庫(kù)技術(shù)的交融趨勢(shì)。
多年以來(lái),數(shù)據(jù)庫(kù)市場(chǎng)一直分為涇渭分明的兩派——傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)與新型NoSQL數(shù)據(jù)庫(kù)。不過(guò)根據(jù)Gartner公司的預(yù)測(cè),這兩個(gè)世界正在走向合并。
雖然這種“合并”趨勢(shì)并不一定真會(huì)如Gartner公司的預(yù)測(cè)很快出現(xiàn),但必須承認(rèn),NoSQL數(shù)據(jù)庫(kù)正憑借著出色的靈活性、橫向擴(kuò)展以及高性能優(yōu)勢(shì)快速普及。事實(shí)上,最終數(shù)據(jù)庫(kù)市場(chǎng)很可能會(huì)被NoSQL廠商所統(tǒng)治。
NoSQL:錯(cuò)誤的名稱(chēng),正確的思路
“NoSQL”其實(shí)有點(diǎn)名不符實(shí)。這主要是因?yàn)槠湟环矫鏄O力排斥SQL,但另一方面又在利用同一框架吸納各類(lèi)不同數(shù)據(jù)庫(kù)。舉例來(lái)說(shuō),Neo4j等圖形數(shù)據(jù)庫(kù)與Cassandra等列式數(shù)據(jù)庫(kù)幾乎毫無(wú)共同之處。
然而,這些不同的數(shù)據(jù)庫(kù)亦在NoSQL的大旗下獲得了三大創(chuàng)新重點(diǎn)。正如前MongoDB高管Kelly Stirman所言,“NoSQL包含著三項(xiàng)傳統(tǒng)供應(yīng)商難以實(shí)現(xiàn)的創(chuàng)新要點(diǎn):1)靈活的數(shù)據(jù)模型,2)分布式架構(gòu)(這一點(diǎn)對(duì)于云非常重要),3)靈活的一致性模型(對(duì)性能非常重要)。”
事實(shí)上,面對(duì)基于云的現(xiàn)代應(yīng)用,傳統(tǒng)RDBMS已經(jīng)顯得力不從心。大多數(shù)RDBMS雖然功能出色,但卻缺乏靈活的數(shù)據(jù)模型。另外,其亦未能成功實(shí)現(xiàn)靈活的一致性模型。再有,RDBMS在擁抱分布式架構(gòu)時(shí)也陷入困境。
即使如此,RDBMS作出的這些嘗試還是使其更趨近于NoSQL。用DataStax公司***布道師Patrick McFadin撰文,這場(chǎng)“大融合”將最終帶來(lái)“多模”數(shù)據(jù)庫(kù)。更重要的是,McFadin認(rèn)為同樣的融合趨勢(shì)亦會(huì)出現(xiàn)在NoSQL當(dāng)中,其將引入更多RDBMS組件以真正沖擊大規(guī)模主流應(yīng)用場(chǎng)景。
不過(guò),這樣的融合也會(huì)帶來(lái)新的問(wèn)題。
融合的障礙
根據(jù)Esgyn公司CTO Rohi Jain所言:
我們很難利用單一查詢引擎以支持單一操作、商務(wù)智能或者分析型工作負(fù)載(事實(shí)上,應(yīng)有不同的專(zhuān)用平臺(tái)支持各類(lèi)負(fù)載)。要實(shí)現(xiàn)這樣一套能夠面對(duì)全部工作負(fù)載的查詢引擎,意味著其必須支持更為廣泛的實(shí)際要求。因此,我們正踏上一片新大陸,而這里顯然充滿障礙。
毫無(wú)疑問(wèn),SQL擁有著明確的競(jìng)爭(zhēng)優(yōu)勢(shì)——相關(guān)人才更豐富,企業(yè)也掌握著更多相關(guān)經(jīng)驗(yàn)。然而,真正讓NoSQL給予SQL沉重一擊的是其分布式架構(gòu)。
VMware公司云原生應(yīng)用***技術(shù)專(zhuān)家Jared Rosoff亦強(qiáng)調(diào)了這一點(diǎn):“即使所有數(shù)據(jù)庫(kù)皆進(jìn)行融合并以SQL作為查詢語(yǔ)言,NoSQL數(shù)據(jù)庫(kù)仍能夠憑借著分布式架構(gòu)從根本上占據(jù)優(yōu)勢(shì)。”他同時(shí)補(bǔ)充稱(chēng),“大家可以想象一下,MySQL或者Postgres或者Oracle或者SQL Server要用多長(zhǎng)時(shí)間才能支持一套包含100個(gè)節(jié)點(diǎn)的分布式集群?”
雖然雙方陣營(yíng)間同時(shí)存在著對(duì)立與融合趨勢(shì),但“NoSQL數(shù)據(jù)庫(kù)更易于轉(zhuǎn)化為SQL形式,而SQL數(shù)據(jù)庫(kù)很難轉(zhuǎn)化為NoSQL形式”,而且“完全兼容SQL的數(shù)據(jù)庫(kù)無(wú)法輕松實(shí)現(xiàn)規(guī)模擴(kuò)展”,相比之下“完全分布式數(shù)據(jù)庫(kù)則能夠輕松支持部分SQL子集。”
簡(jiǎn)而言之,SQL非常出色但卻可被替代。而在大數(shù)據(jù)時(shí)代之下,分布式計(jì)算則不存在任何替代性方案。
最終贏家
在這個(gè)融合新世界中,勝利的天秤似乎在朝NoSQL傾斜。然而,NoSQL廠商是否能夠最終實(shí)現(xiàn)制霸?
盡管MongoDB與Cassandra都在一定程度上擁有王者氣象,但是:
市場(chǎng)真正需要的是一套像MongoDB那樣易于使用且靈活,但同時(shí)又像Cassandra那樣具備出色擴(kuò)展能力的開(kāi)源數(shù)據(jù)庫(kù),而且不會(huì)影響現(xiàn)有安全性與工具儲(chǔ)備。MongoDB在這方面擁有優(yōu)勢(shì)地位,但AWS則更可能在長(zhǎng)期市場(chǎng)上取勝。
是的,就是很可能掌控整個(gè)Hadoop市場(chǎng)并擁有全球***企業(yè)級(jí)公有云基礎(chǔ)設(shè)施的AWS。憑借著主導(dǎo)權(quán)、可觀的企業(yè)客戶吸引力以及大量分布式應(yīng)用作為支持,各大數(shù)據(jù)庫(kù)廠商最終很可能將徹底拜倒在Bezos膝下。
原文標(biāo)題:Who took the 'no' out of NoSQL?,原文作者:Matt Asay
【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】