普星
摘要:在信息化時代,各類信息的采集量和處理量增多,人們更多的是依賴于網(wǎng)絡,所以,僅僅依靠傳統(tǒng)的存儲技術順應不了時代的發(fā)展和需求,需要在傳統(tǒng)處理技術的基礎上建立一種大數(shù)據(jù)存儲技術,確保數(shù)據(jù)存儲能夠滿足人們的需要?;贜oSQL(非關系數(shù)據(jù)庫)數(shù)據(jù)庫的大數(shù)據(jù)存儲技術是一種自由的存儲形式,能夠實時處理所搜集的各類信息,在現(xiàn)實中,便于人們進行各類工作。該文將基于NoSQL數(shù)據(jù)庫的大數(shù)據(jù)存儲技術的角度出發(fā),對其基本概念進行相關闡釋,并對其現(xiàn)狀及在今后的應用進行分析。
關鍵詞:大數(shù)據(jù)庫;關系數(shù)據(jù)庫;非關系數(shù)據(jù)庫;存儲技術
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)35-8349-02
現(xiàn)如今,各門戶網(wǎng)站均以互聯(lián)網(wǎng)為基礎而得到發(fā)展,如微博、微信、人人等,互聯(lián)網(wǎng)用戶增加,進入了大數(shù)據(jù)時代?;诖?,人們對數(shù)據(jù)存儲的要求越來越高,希望能夠在之前存儲的基礎上,繼續(xù)增大存儲量。然而,關系數(shù)據(jù)庫的發(fā)展并不如人意,發(fā)展速度較為緩慢,直到近幾年才出現(xiàn)非關系數(shù)據(jù)庫,以解決原來數(shù)據(jù)庫中的各種問題,并適應了人們的需要。作為一項新興技術,非關系數(shù)據(jù)不僅秉承了關系數(shù)據(jù)庫的處理思路,還在此基礎上進一步優(yōu)化,簡化了數(shù)據(jù)庫的操作,在整個數(shù)據(jù)庫系統(tǒng)中,滿足了不同人群的需求。
1 相關基本概念
非關系數(shù)據(jù)庫也即NoSQL,是一種新型的數(shù)據(jù)庫系統(tǒng),能夠同時處理海量的數(shù)據(jù),處理能力很強,因此而收到歡迎。非關系數(shù)據(jù)庫是給予CAP理論和BASE理論上發(fā)展而來的,CAP理論是非關系數(shù)據(jù)庫管理系統(tǒng)構建的基礎,具體為一致性、可用性、容忍性,也就是說,在分布式環(huán)境中設計和部署系統(tǒng)所需要考慮的是上述三個因素;BASE理論由基本可用、軟狀態(tài)、最終一致性組成,強調的是數(shù)據(jù)庫的最終一致性。一般情況下,一致性分為強一致性和弱一致性,強一致性要求更新過的數(shù)據(jù)能被后續(xù)的訪問都看到,而弱一致性則指讀取操作能夠見到變化的數(shù)據(jù),不是所有變化的數(shù)據(jù)。最終一致性是一種弱一致性,就是說存儲系統(tǒng)在沒有更新的情況下,所獲得的訪問都可以獲得更新,從本質上來說,BASE理論是CAP理論的延伸。
2 有關非關系數(shù)據(jù)庫系統(tǒng)的研究與應用
2.1 國外有關非關系數(shù)據(jù)庫系統(tǒng)的研究與應用
非關系數(shù)據(jù)庫系統(tǒng)起源于國外的一個開源數(shù)據(jù)庫產(chǎn)品,在當時,該數(shù)據(jù)庫產(chǎn)品所用來存儲數(shù)據(jù)的是HASH TABLE,和其他的存儲數(shù)據(jù)相比,該數(shù)據(jù)存儲的結構較為簡單,所以,很容易被人們所認可和使用,這也便是非關系數(shù)據(jù)庫系統(tǒng)的最初模型。隨著這種存儲結構的不斷發(fā)展,進入二十一世紀以后,互聯(lián)網(wǎng)開始進入WEB2.0時代,國外出現(xiàn)了數(shù)十種不同類型的非關系數(shù)據(jù)庫,主要有基于Key/Value數(shù)據(jù)存儲、基于列/列族的數(shù)據(jù)存儲、面向文檔的數(shù)據(jù)存儲和面向圖的數(shù)據(jù)存儲?;贙ey/Value數(shù)據(jù)存儲是一種半結構化數(shù)據(jù)組織形式,對唯一的Key能夠做到快速定位,但卻不能對Value的內(nèi)容進行檢索;基于列/列族的數(shù)據(jù)存儲使用的是一種以列的方式組織和存儲數(shù)據(jù),在支持動態(tài)擴展的列的情況下對原來的存儲不產(chǎn)生任何影響,具有良好的擴展性,但是,由于列的存儲在一般傳統(tǒng)的對行的訪問上會比較復雜,不適用于檢索較多的列的操作。面向文檔的數(shù)據(jù)存儲是一種擴展的存儲,能夠支持列表數(shù)據(jù)結構和嵌套的文檔結構,這種數(shù)據(jù)結構非常豐富靈活,但是同時增大了使用查詢上的復雜度。面向圖的數(shù)據(jù)存儲能夠有效避免復雜的關聯(lián)操作,該種數(shù)據(jù)存儲主要使用的是借點、邊和屬性來存儲數(shù)據(jù)的,所以,和其他的數(shù)據(jù)存儲相比,具有速度快等優(yōu)點。
2.2 國內(nèi)有關非數(shù)據(jù)庫系統(tǒng)的研究與應用
隨著改革開放的不斷深入,我國開始和國際接軌,并努力適應著國際環(huán)境的發(fā)展而不斷提高自身的信息技術,并廣泛應用各類數(shù)據(jù)庫系統(tǒng),而非關系數(shù)據(jù)庫便是其中的一種。和關系數(shù)據(jù)庫系統(tǒng)不同,非關系數(shù)據(jù)庫所面對的是海量數(shù)據(jù)存儲,所以,在存儲過程中會用到大量的機器來進行存儲,為了能夠保證所輸入信息的完整性和有用性,通常情況下,會使用到單節(jié)點數(shù)據(jù)、多節(jié)點數(shù)據(jù)等來保證輸入機器的正常運轉。這主要是因為單節(jié)點數(shù)據(jù)的處理方法是硬件磁盤RAID冗余存儲保障硬件存儲的可靠性,數(shù)據(jù)實際寫入前保證相關的重做日志已經(jīng)寫入日志文件,這樣重啟后內(nèi)存中的數(shù)據(jù)可以得到恢復。而多節(jié)點數(shù)據(jù)是指非關系數(shù)據(jù)庫能夠在多個節(jié)點上保存數(shù)據(jù)的副本,所以,即便是服務器出現(xiàn)故障甚至壞掉的情況下,還會有備份的數(shù)據(jù)存在,不會因此而需要重新去找數(shù)據(jù)和重新輸錄。另外,由于非關系數(shù)據(jù)庫面對的資料數(shù)量龐大,要求系統(tǒng)的性能具有較強的擴展性,所以,通過多節(jié)點數(shù)據(jù),能夠支持數(shù)據(jù)的再次遷移。
當前,隨著互聯(lián)網(wǎng)的不斷發(fā)展,盡管大數(shù)據(jù)的分析技術在目前還處于起步階段,但云計算機作為非關系數(shù)據(jù)庫中的一種,普遍在人們的生活中得到應用,同時,國際上在大數(shù)據(jù)存儲方面的就標準化組織也開展了相應的工作,使其順應時代的潮流。另外,非關系數(shù)據(jù)庫的優(yōu)勢開始逐漸顯現(xiàn),盡管其種類頗多,但都具有去掉關系數(shù)據(jù)庫的關系型特性,且非關系數(shù)據(jù)庫所具有的靈活多變的數(shù)據(jù)模型和較高的可用性等特點,在很大程度上彌補了關系數(shù)據(jù)庫的不足,同時還節(jié)省了開發(fā)成本的維護成本。
在大數(shù)據(jù)處理系統(tǒng)中,由Apache基金會開發(fā)的Hadoop實現(xiàn)了一個分布式文件系統(tǒng)HDFS,其容錯性非常高,能部署在低廉的硬件上。HDFS能給用戶提供高吞吐量來訪問應用程序的數(shù)據(jù),非常適合于超大數(shù)據(jù)集的大數(shù)據(jù)應用。如下圖所示為Hadoop的基本組織框架。從圖中可以明顯看出,Hadoop具有非常強的數(shù)據(jù)處理能力,可以看到NoSQL在數(shù)據(jù)的讀取和處理中所占的地位以及優(yōu)勢。
2009年8月正式在新浪內(nèi)部運行的新浪云計算平臺中也有運用NoSQL,新浪于2009年11月正式推出的云計算平臺是我國的首個Alpha版本的云計算平臺,它是新浪云計算戰(zhàn)力的核心,如圖2所示為NoSQL在新浪云計算平臺中運用的示意圖,可以看出,其中的KVDB在存儲服務上起到至關重要的作用。
除了以上的幾個應用外,NoSQL在眾所周知的淘寶數(shù)據(jù)架構中也有非常廣泛的應用。淘寶每天都有巨大的交易和交互數(shù)據(jù)資料,要保證網(wǎng)站運行的正常,必須有非常強硬的后臺組織架構設計。在淘寶的數(shù)據(jù)處理系統(tǒng)中,其運用Hadoop為數(shù)據(jù)處理工具,NOSQL為數(shù)據(jù)存儲介質,充分發(fā)揮NoSQL在數(shù)據(jù)處理中的優(yōu)勢。3 結束語
本篇文章以非關系數(shù)據(jù)庫(NoSQL)為基礎,對非關系數(shù)據(jù)庫在當前的應用進行簡單剖析,表明非關系數(shù)據(jù)庫是當今時代發(fā)展的要求,其發(fā)展必須和其他最新技術相結合,克服傳統(tǒng)數(shù)據(jù)庫的缺點,盡可能提高運轉速度和存儲量。
參考文獻:
[1] 孫中廷.基于NoSQL數(shù)據(jù)庫的大數(shù)據(jù)存儲技術的研究與應用[J].計算機時代,2014(7).
[2] 陳超,王亮,閆浩文,等.一種基于NoSQL的地圖瓦片數(shù)據(jù)存儲技術[J].測繪科學,2013,38(1).
[3] 楊俊生.大數(shù)據(jù)時代數(shù)據(jù)存儲技術的發(fā)展[J].電子世界,2014(5).
[4] 張艷霞,豐繼林,郝偉,等.基于NoSQL的文件型大數(shù)據(jù)存儲技術研究[J].制造業(yè)自動化,2014(6).endprint