亚洲成精品动漫久久精久,九九在线精品视频播放,黄色成人免费观看,三级成人影院,久碰久,四虎成人欧美精品在永久在线

掃一掃
關(guān)注微信公眾號(hào)

NoSQL數(shù)據(jù)庫(kù):你不知道我的那些事兒
2010-09-27   網(wǎng)絡(luò)

知名數(shù)據(jù)庫(kù)專家Guy Harrison曾寫(xiě)過(guò)一篇博文《10 things you should know about NoSQL databases》,對(duì)NoSQL的優(yōu)勢(shì)與劣勢(shì)進(jìn)行了一個(gè)簡(jiǎn)單總結(jié),其中包括NoSQL的5個(gè)優(yōu)勢(shì)和NoSQL的5個(gè)挑戰(zhàn)。阿里巴巴的DBA童家旺對(duì)該 文進(jìn)行了翻譯,現(xiàn)轉(zhuǎn)載于此,供大家借鑒學(xué)習(xí)。

全文如下:

關(guān)系數(shù)據(jù)模型已經(jīng)流行了幾十年了,但是一種新型的數(shù)據(jù)庫(kù)(即NoSQL)正在吸引各大企業(yè)的關(guān)注。下面是對(duì)其優(yōu)勢(shì)與劣勢(shì)的一個(gè)簡(jiǎn)單總結(jié)。

在過(guò)去的1/4世紀(jì)中,關(guān)系型數(shù)據(jù)庫(kù)(RDBMS)一直是數(shù)據(jù)庫(kù)管理系統(tǒng)的主導(dǎo)模型。但是,今天,非關(guān) 系型,“云”或者“NoSQL”數(shù)據(jù)庫(kù)正以數(shù)據(jù)庫(kù)管理系統(tǒng)的替代模型而獲得認(rèn)知。在本文中,我們將考察這些非關(guān)系型NoSQL數(shù)據(jù)庫(kù)的10個(gè)關(guān)鍵因素:最 重要的5個(gè)優(yōu)勢(shì)以及5個(gè)挑戰(zhàn)。

NoSQL的5個(gè)優(yōu)勢(shì)

1.彈性擴(kuò)展

多年來(lái),數(shù)據(jù)庫(kù)管理員一直依賴于向上擴(kuò)展(scale up)-隨著數(shù)據(jù)庫(kù)負(fù)載的增加購(gòu)買更大的數(shù)據(jù)庫(kù)服務(wù)器―而不是向外擴(kuò)展-隨著負(fù)載的增加將數(shù)據(jù)庫(kù)分不到多個(gè)不同的主機(jī)上。然而,隨著每秒事務(wù)數(shù)與可用性需 求的提高,以及數(shù)據(jù)庫(kù)往云或虛擬環(huán)境的遷移,向外擴(kuò)展到廉價(jià)硬件的經(jīng)濟(jì)優(yōu)勢(shì)越來(lái)越難以抵擋。

RDBMS或許比較難以在廉價(jià)的集群上進(jìn)行向外擴(kuò)展,但是,NoSQL數(shù)據(jù)庫(kù)的新品從設(shè)計(jì)之初就是為了利用新節(jié)點(diǎn)的優(yōu)勢(shì)進(jìn)行透明擴(kuò)展,他們通常在設(shè)計(jì)時(shí)就考慮使用低成本的廉價(jià)硬件。

2.大數(shù)據(jù)量

在過(guò)去10年,與每秒事務(wù)數(shù)的增長(zhǎng)超出了認(rèn)知一樣,存儲(chǔ)的數(shù)據(jù)的規(guī)模也出現(xiàn)了極大的增長(zhǎng)。 O’Reilly明智的稱此為”數(shù)據(jù)的工業(yè)革命。”RDBMS的容量也在增長(zhǎng)以匹配這些數(shù)據(jù)的增長(zhǎng),但是,與每秒事務(wù)數(shù)一樣,單個(gè)RDBMS可有效管理的 數(shù)據(jù)規(guī)模限制讓部分企業(yè)越來(lái)越難以忍受。今天,大規(guī)模數(shù)據(jù)量可以交由NoSQL系統(tǒng)來(lái)處理,比如Hadoop,超過(guò)目前最大的RDBMS可以管理的數(shù)據(jù)規(guī) 模。

3. 再見(jiàn)了,DBA(回頭見(jiàn),DBA?)

這些年,雖然RDBMS的提供商宣稱推出了很多的可管理性方面的改進(jìn),高端的RDBMS系統(tǒng)還是只能交由昂貴的、高度受訓(xùn)的DBA來(lái)進(jìn)行維護(hù)。高端RDBMS系統(tǒng)從設(shè)計(jì)到安裝以及后續(xù)的調(diào)優(yōu),都需要DBA們深度介入。

從理論上,通常,NoSQL數(shù)據(jù)庫(kù)的最初的設(shè)計(jì)目標(biāo)就是更少的管理介入:自動(dòng)修復(fù)、數(shù)據(jù)分布以及更簡(jiǎn)單的數(shù)據(jù)模型,從而更少的管理與調(diào)優(yōu)需求。實(shí)際上,關(guān)于DBA將死的謠言很可能被略微放大了。對(duì)于任何關(guān)鍵的數(shù)據(jù)存儲(chǔ),總是需要有人來(lái)關(guān)心它的性能以及可用性。

4.經(jīng)濟(jì)性

NoSQL數(shù)據(jù)庫(kù)通常使用廉價(jià)服務(wù)器集群來(lái)管理暴增的數(shù)據(jù)與事務(wù)規(guī)模,而RDBMS傾向于依賴昂貴的專有服務(wù)器與存儲(chǔ)系統(tǒng)。其結(jié)果是,NoSQL數(shù)據(jù)庫(kù)的每GB數(shù)據(jù)或每秒事務(wù)數(shù)的成本要遠(yuǎn)遠(yuǎn)低于RDBMS,使得你可以以更低的價(jià)格來(lái)存儲(chǔ)與處理更多的數(shù)據(jù)。

5.靈活的數(shù)據(jù)模型

在大量的生產(chǎn)環(huán)境數(shù)據(jù)庫(kù)中,變更管理是一個(gè)非常棘手的問(wèn)題。哪怕是對(duì)數(shù)據(jù)模型的很小的變更,在RDBMS中也需要進(jìn)行小心的管理,甚至還需要停機(jī)或降低服務(wù)級(jí)別。

在數(shù)據(jù)模型的限制這一點(diǎn)上,NoSQL數(shù)據(jù)庫(kù)要寬松的多,或者完全不存在。 NoSQL的鍵值存儲(chǔ)(Keyvalue Store)與文檔數(shù)據(jù)庫(kù)(Document Database)允許應(yīng)用在一個(gè)數(shù)據(jù)單元中存入它想要的任何結(jié)構(gòu)。即使是定義更加嚴(yán)格的基于BigTable的NoSQL數(shù)據(jù)庫(kù),通常也允許創(chuàng)建新的字 段而不致帶來(lái)麻煩。

其結(jié)果是,應(yīng)用的變更與數(shù)據(jù)庫(kù)結(jié)構(gòu)的變更不需要綁定在一個(gè)變更單元中進(jìn)行管理。理論上,這可以提高應(yīng)用的迭代速度,然而,顯然,如果應(yīng)用無(wú)法管理數(shù)據(jù)的完整性,它將帶來(lái)不良的副作用。

NoSQL的5個(gè)挑戰(zhàn)

NoSQL數(shù)據(jù)庫(kù)的可能性空間引發(fā)了大量的關(guān)注,但是,在它們成為企業(yè)級(jí)應(yīng)用的主流之前,還有大量的障礙有待克服。下面是幾個(gè)主要的挑戰(zhàn)。

1.成熟度

RDBMS已經(jīng)存在了很長(zhǎng)一段時(shí)間。 NoSQL的支持者認(rèn)為它們的年紀(jì)是它們過(guò)時(shí)的象征,但是,對(duì)于大部分CIO(首席信息官)來(lái)講,RDBMS的成熟度是可以讓人放心的。通常,RDBMS 系統(tǒng)都很穩(wěn)定,功能也很豐富。相比而言,大部分NoSQL的替代品都還處于前一生產(chǎn)環(huán)境階段,還有大量的關(guān)鍵特性有待實(shí)現(xiàn)。

生活在科技前沿對(duì)于大部分開(kāi)發(fā)人員來(lái)講,是令人興奮的,但是,企業(yè)在實(shí)施時(shí)必須非常謹(jǐn)慎。

2.支持力度

企業(yè)還希望獲得保證,當(dāng)關(guān)鍵系統(tǒng)出現(xiàn)故障時(shí),他們可以獲得及時(shí)而有效的支持。所有的RDBMS提供商都在竭盡全力地為企業(yè)提供高級(jí)別的支持。

相比而言,大部分的NoSQL系統(tǒng)都是開(kāi)源項(xiàng)目,雖然,每一個(gè)NoSQL數(shù)據(jù)庫(kù)通常都會(huì)有一家或多家公司為其提供支持,這些公司通常都是小的創(chuàng)業(yè)公司,沒(méi)有能力提供全球的支持,沒(méi)有足夠的支持資源,或者沒(méi)有類似于Oracle、Microsoft或者IBM的信用。

3.分析與商業(yè)智能

NoSQL數(shù)據(jù)庫(kù)經(jīng)過(guò)不斷的演化,已經(jīng)可以滿足現(xiàn)代的Web 2。0應(yīng)用的擴(kuò)展需求。相應(yīng)地,它們的大部分功能集也旨在滿足這些應(yīng)用的需求。然而,應(yīng)用程序中的數(shù)據(jù)的價(jià)值,要超出一個(gè)典型的Web應(yīng)用的插入-閱讀- 更新-刪除的周期。從公司數(shù)據(jù)庫(kù)中挖掘信息以提高公司的效率與競(jìng)爭(zhēng)力的業(yè)務(wù),以及商業(yè)智能(BI)是所有大中型公司的關(guān)鍵議題。

NoSQL數(shù)據(jù)庫(kù)提供了新型的工具來(lái)做即時(shí)的查詢與分析。哪怕是一個(gè)簡(jiǎn)單的查詢,也需要可觀的編程技能,通常使用的BI工具都無(wú)法訪問(wèn)NoSQL數(shù)據(jù)庫(kù)。

稍顯寬慰的是,還有類似于HIVE與PIG的這類解決方案,通過(guò)它們可以較為簡(jiǎn)單地訪問(wèn)Hadoop集 群中的數(shù)據(jù),或許最終,可以較為簡(jiǎn)單的訪問(wèn)其他的 NoSQL數(shù)據(jù)庫(kù)。Quest軟件公司開(kāi)發(fā)一個(gè)產(chǎn)品,Toad For Cloud Database,它提供了對(duì)各種不同的NoSQL數(shù)據(jù)庫(kù)的即時(shí)查詢功能。

4.管理

NoSQL的設(shè)計(jì)目標(biāo)可能是提供零-管理的解決方案,但是,當(dāng)前的現(xiàn)實(shí)是,此目標(biāo)遠(yuǎn)遠(yuǎn)沒(méi)有實(shí)現(xiàn)。目前的NoSQL系統(tǒng)需要大量的技能來(lái)進(jìn)行安裝,以及需要大量的努力來(lái)進(jìn)行維護(hù)。

5.專業(yè)技能

坦率的講,目前世界上有上百萬(wàn)的程序員非常熟悉RDBMS的原理與編程,他們分布在各種業(yè)務(wù)場(chǎng)景中。相 比而言,幾乎每一個(gè)NoSQL開(kāi)發(fā)人員都還處于學(xué)習(xí)階段。隨著時(shí)間的流逝,這種狀況將得到解決,但是,現(xiàn)在,尋找一個(gè)有經(jīng)驗(yàn)的RDBMS開(kāi)發(fā)人員與 RDBMS管理員要比尋找一個(gè)NoSQL專家要容易的多。

結(jié)論

NoSQL數(shù)據(jù)庫(kù)正在成為越來(lái)越多的數(shù)據(jù)庫(kù)環(huán)境的重要的組成部分,如果使用得當(dāng)?shù)脑挘梢蕴峁?shí)實(shí)在在的收益。然而,企業(yè)在推進(jìn)它們的使用時(shí)需要非常謹(jǐn)慎,需要明白這些數(shù)據(jù)庫(kù)的相關(guān)內(nèi)在限制與問(wèn)題。

熱詞搜索:

上一篇:控制IT預(yù)算的五個(gè)小秘訣
下一篇:CIO:光有技巧還不夠 還要有商業(yè)頭腦

分享到: 收藏