孫銀博
摘要:隨著互聯(lián)網(wǎng)的高速發(fā)展,用戶數(shù)量和數(shù)據(jù)規(guī)模急劇擴(kuò)張,單一的數(shù)據(jù)庫服務(wù)已無法滿足當(dāng)前應(yīng)用的需求。在云計(jì)算技術(shù)日趨成熟的背景下,將數(shù)據(jù)庫集群技術(shù)應(yīng)用于大數(shù)據(jù)中,可以提高了系統(tǒng)可靠性和處理效率,用戶能同時(shí)得到更高的處理速度和更高的數(shù)據(jù)可用性。該文結(jié)合大數(shù)據(jù)的應(yīng)用特征,對大數(shù)據(jù)環(huán)境下的數(shù)據(jù)庫集群技術(shù)進(jìn)行分析總結(jié)。
關(guān)鍵詞:大數(shù)據(jù);分布集群;高可用;高可靠
中圖分類號:TP391 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)03-0019-02
1 概述
當(dāng)前,互聯(lián)網(wǎng)的發(fā)展已經(jīng)進(jìn)入到一個(gè)全新階段,互聯(lián)網(wǎng)的應(yīng)用已經(jīng)深入到人們的日常生活中,尤其是移動(dòng)互聯(lián)網(wǎng)技術(shù)的發(fā)展和運(yùn)用已經(jīng)日益成熟,傳統(tǒng)企業(yè)都已經(jīng)開始自覺地運(yùn)用移動(dòng)互聯(lián)網(wǎng)技術(shù)和概念拓展新業(yè)務(wù)和方向[1]。在此背景下,大數(shù)據(jù)技術(shù)應(yīng)運(yùn)而生,針對大數(shù)據(jù)這一新興概念,麥肯錫全球研究所曾給出這樣的定義:一種規(guī)模大到在獲取、存儲、管理、分析方面大大超出了傳統(tǒng)數(shù)據(jù)庫軟件工具能力范圍的數(shù)據(jù)集合,具有海量的數(shù)據(jù)規(guī)模、快速的數(shù)據(jù)流轉(zhuǎn)、多樣的數(shù)據(jù)類型和價(jià)值密度低四大特征。
2 分布集群數(shù)據(jù)庫
組成分布集群數(shù)據(jù)庫系統(tǒng)的每臺計(jì)算機(jī)可單獨(dú)放在一個(gè)地方,其中每臺計(jì)算機(jī)都可能保存一份數(shù)據(jù)庫的完整拷貝副本,或者是部分副本,每臺計(jì)算機(jī)單元具有自己局部的數(shù)據(jù)庫,位于不同地點(diǎn)。這些計(jì)算機(jī)之間通過網(wǎng)絡(luò)進(jìn)行連接,共同組成一個(gè)完整的、全局的邏輯上集中、物理上分布的大型數(shù)據(jù)庫。
在分布式集群系統(tǒng)中,數(shù)據(jù)庫對用戶來說是一個(gè)邏輯上的數(shù)據(jù)庫整體,數(shù)據(jù)庫的一致性、完整性及安全性都是對這一邏輯整體進(jìn)行管理控制的。分布集群服務(wù)器對共享的數(shù)據(jù)進(jìn)行統(tǒng)一的管理,但是非數(shù)據(jù)庫的處理操作可以由客戶機(jī)來完成。
在分布式集群系統(tǒng)中,通常采用外部鏈接技術(shù)進(jìn)行數(shù)據(jù)庫的遠(yuǎn)程控制。組成分布式集群的各計(jì)算機(jī)之間可以通過網(wǎng)絡(luò)進(jìn)行相互通訊,用戶可以遠(yuǎn)程透明地單獨(dú)訪問遠(yuǎn)程各數(shù)據(jù)庫單元的數(shù)據(jù),也可以組合多個(gè)數(shù)據(jù)庫的數(shù)據(jù)以滿足多工作組、部門的復(fù)雜應(yīng)用需求。遠(yuǎn)程數(shù)據(jù)庫鏈接技術(shù)連接了各分散的數(shù)據(jù)庫單元,邏輯的將他們組合為一個(gè)整體,從應(yīng)用視圖的角度來看,分布集中數(shù)據(jù)庫系統(tǒng)就是一個(gè)整體的數(shù)據(jù)庫服務(wù)系統(tǒng)。用戶對此系統(tǒng)的單一邏輯的數(shù)據(jù)庫訪問請求都被自動(dòng)分解、自動(dòng)尋址、自動(dòng)轉(zhuǎn)換為網(wǎng)絡(luò)請求,并在相應(yīng)數(shù)據(jù)庫結(jié)點(diǎn)上實(shí)現(xiàn)相應(yīng)的操作請求。
分布集群數(shù)據(jù)庫系統(tǒng)支持混合的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),并采用混合的網(wǎng)絡(luò)協(xié)議,自動(dòng)地進(jìn)行網(wǎng)絡(luò)協(xié)議的轉(zhuǎn)換。在分布集群數(shù)據(jù)庫系統(tǒng)中,在保證海量數(shù)據(jù)存儲的基礎(chǔ)上,混合了高可用集群和高可靠集群,提高了數(shù)據(jù)庫系統(tǒng)的可用性和可靠性,滿足了現(xiàn)代互聯(lián)網(wǎng)應(yīng)用的需求。
物化視圖是從一個(gè)或幾個(gè)基表導(dǎo)出的表,同視圖相比,它存儲了導(dǎo)出表的真實(shí)數(shù)據(jù)。當(dāng)基表中的數(shù)據(jù)發(fā)生變化時(shí),物化視圖所存儲的數(shù)據(jù)將變得陳舊,用戶可以通過手動(dòng)刷新或自動(dòng)刷新來對數(shù)據(jù)進(jìn)行同步。物化視圖包括了查詢結(jié)果的數(shù)據(jù)對象,是遠(yuǎn)程數(shù)據(jù)的本地副本快照。物化視圖允許你在本地維護(hù)遠(yuǎn)程數(shù)據(jù)的副本,但是只能讀取這些副本[2]。
3 高可用集群
數(shù)據(jù)庫高可用集群通過緩存交換技術(shù)實(shí)現(xiàn),它基于同一份數(shù)據(jù)文件、但提供了多個(gè)數(shù)據(jù)庫實(shí)例,即數(shù)據(jù)庫服務(wù)進(jìn)程。高可用性首要確保數(shù)據(jù)不丟失,數(shù)據(jù)不丟失是高可靠性的最基本的要求,是必須要保證的;其次是使數(shù)據(jù)庫一直維持在正常的運(yùn)行狀態(tài),確保不停機(jī),以避免給客戶造成損失。
在大數(shù)據(jù)應(yīng)用環(huán)境下,數(shù)據(jù)庫系統(tǒng)的停機(jī)分為兩類,即計(jì)劃性停機(jī)和非計(jì)劃性停機(jī)。計(jì)劃性停機(jī)一般在數(shù)據(jù)庫管理軟件升級、系統(tǒng)維護(hù)或者硬件維護(hù)的情況下進(jìn)行,是有計(jì)劃地安排節(jié)點(diǎn)或者系統(tǒng)的停機(jī)。非計(jì)劃性停機(jī)是異常突然停機(jī),具有不可預(yù)見性,這種情況一般是數(shù)據(jù)庫管理系統(tǒng)缺陷或系統(tǒng)故障或硬件故障等[3]。
高可用集群數(shù)據(jù)庫技術(shù)主要包含如下幾點(diǎn):
1)負(fù)載均衡技術(shù):支持靜態(tài)和動(dòng)態(tài)負(fù)載均衡技術(shù),實(shí)現(xiàn)系統(tǒng)范圍內(nèi)各節(jié)點(diǎn)負(fù)載均勻,避免出現(xiàn)單一節(jié)點(diǎn)或者部分節(jié)點(diǎn)負(fù)載過重而影響整體性能。
2)全局事務(wù)并發(fā)控制技術(shù):通過高速緩存復(fù)制技術(shù),各節(jié)點(diǎn)保持字典數(shù)據(jù)一致,同時(shí)能夠看到全局鎖和事務(wù)視圖,使得能夠正常實(shí)現(xiàn)事務(wù)的ACID特性。
3)多節(jié)點(diǎn)并發(fā)訪問文件控制技術(shù):由于多個(gè)節(jié)點(diǎn)共享同一份數(shù)據(jù),控制好各節(jié)點(diǎn)對同一份數(shù)據(jù)的更新操作,避免出現(xiàn)錯(cuò)誤的文件讀寫導(dǎo)致的數(shù)據(jù)不一致的問題。
4)動(dòng)態(tài)增加和移除節(jié)點(diǎn)技術(shù):在高可用集群環(huán)境中,能夠在不中斷服務(wù)的情況下,通過增加節(jié)點(diǎn)來提升系統(tǒng)性能,同時(shí)也能夠在節(jié)點(diǎn)出現(xiàn)故障時(shí),從集群中自動(dòng)移除該節(jié)點(diǎn),并且不影響整個(gè)集群系統(tǒng)對外提供服務(wù)。
4 高可靠集群
一般采用數(shù)據(jù)復(fù)制技術(shù)來保證數(shù)據(jù)庫系統(tǒng)的高可靠性,數(shù)據(jù)復(fù)制同時(shí)也是一種分擔(dān)系統(tǒng)訪問壓力、加快異地訪問響應(yīng)速的技術(shù),數(shù)據(jù)復(fù)制具有物理和邏輯之分。通過將一個(gè)服務(wù)器實(shí)例上的數(shù)據(jù)變更復(fù)制到另外的服務(wù)器實(shí)例??梢杂糜诮鉀Q大、中型應(yīng)用中出現(xiàn)的因來自不同地域、不同部門、不同類型的數(shù)據(jù)訪問、請求導(dǎo)致數(shù)據(jù)庫服務(wù)器超負(fù)荷運(yùn)行、網(wǎng)絡(luò)阻塞、遠(yuǎn)程用戶的數(shù)據(jù)響應(yīng)遲緩的問題。
高可靠集群提供數(shù)據(jù)庫的容災(zāi)、數(shù)據(jù)保護(hù)、故障恢復(fù)等,實(shí)現(xiàn)數(shù)據(jù)庫快速切換與災(zāi)難性恢復(fù)。在生產(chǎn)數(shù)據(jù)庫的保證"事務(wù)一致性"時(shí),使用生產(chǎn)庫的物理全備份創(chuàng)建備庫,備庫能夠通過生產(chǎn)庫傳輸過來的歸檔日志或重做條目自動(dòng)維護(hù)備用數(shù)據(jù)庫。
高可靠集群的數(shù)據(jù)同步技術(shù)有以下優(yōu)勢:
1)數(shù)據(jù)庫自身內(nèi)置的功能;
2)配置管理較簡單,不需要熟悉其他第三方的軟件產(chǎn)品。
3)物理Standby數(shù)據(jù)庫支持任何類型的數(shù)據(jù)對象和數(shù)據(jù)類型;
4)邏輯Standby數(shù)據(jù)庫處于打開狀態(tài),可以在保持?jǐn)?shù)據(jù)同步的同時(shí)執(zhí)行查詢等操作。
5)在最大保護(hù)模式下,可確保數(shù)據(jù)的零丟失。
5 MPP技術(shù)的應(yīng)用
MPP 架構(gòu)采用統(tǒng)一的并行操作數(shù)據(jù)庫引擎,將數(shù)據(jù)分散在不同的數(shù)據(jù)庫節(jié)點(diǎn)上,在高速的內(nèi)部網(wǎng)絡(luò)環(huán)境下,對于海量數(shù)據(jù)的并發(fā)查詢可極大地減少 I/O,提高查詢效率。MPP 系統(tǒng)工作起來就像是一臺單獨(dú)的計(jì)算機(jī),由于采用自動(dòng)化的并行處理,在分析型數(shù)據(jù)倉庫等 OLAP 應(yīng)用中,查詢性能比傳統(tǒng)的單節(jié)點(diǎn)數(shù)據(jù)庫大大提高。MPP 系統(tǒng)為新一代數(shù)據(jù)倉庫所需的大規(guī)模數(shù)據(jù)和復(fù)雜查詢提供了先進(jìn)的軟件級解決方案,具有業(yè)界先進(jìn)的架構(gòu)和高度的可靠性,能幫助企業(yè)管理好數(shù)據(jù),使之更好地服務(wù)于企業(yè),推動(dòng)數(shù)據(jù)依賴型企業(yè)的發(fā)展。
6 大數(shù)據(jù)中的應(yīng)用
基于數(shù)據(jù)庫管理系統(tǒng),搭建高可用、高可靠的分布集群數(shù)據(jù)庫系統(tǒng),結(jié)構(gòu)如圖 1所示。
在此環(huán)境中,高可用集群之間可搭建成主備關(guān)系,與任意高可靠集群或任意單機(jī)數(shù)據(jù)庫服務(wù)器通過外部鏈接構(gòu)成邏輯上統(tǒng)一的分布集群數(shù)據(jù)庫系統(tǒng)。對于用戶而言,仍然是單一的數(shù)據(jù)庫服務(wù)。
單機(jī)數(shù)據(jù)庫服務(wù)器、高可用集群、高可靠集群都可通過外部鏈接作為單獨(dú)節(jié)點(diǎn)加入到分布集群數(shù)據(jù)庫系統(tǒng)中,利用數(shù)據(jù)庫系統(tǒng)的分布集群事務(wù)機(jī)制,既保留了局部數(shù)據(jù)庫的自治特性,又可以作為全局分布集群系統(tǒng)中的一員參與到整個(gè)海量數(shù)據(jù)分析中。
解決了海量規(guī)模數(shù)據(jù)存儲的問題后,針對快速的數(shù)據(jù)流轉(zhuǎn)、多樣的數(shù)據(jù)類型和價(jià)值密度低問題,數(shù)據(jù)庫技術(shù)還實(shí)現(xiàn)了以下功能:
1)物化視圖技術(shù)和高級復(fù)制技術(shù)解決分布集群系統(tǒng)中數(shù)據(jù)流轉(zhuǎn)速度慢的問題。
2)支持面相對象、xml數(shù)據(jù)類型,滿足數(shù)據(jù)類型多樣化的需求。
3)數(shù)據(jù)挖掘技術(shù),是決策分析技術(shù)的一個(gè)更高層次,數(shù)據(jù)挖掘技術(shù)采用人工智能的決策分析方法,按照用戶既定的業(yè)務(wù)目標(biāo),對數(shù)據(jù)進(jìn)行篩選,揭示其中的規(guī)律,并進(jìn)一步將其模型化。
7 結(jié)束語
隨著計(jì)算機(jī)技術(shù)的發(fā)展,數(shù)據(jù)庫管理系統(tǒng)作為處理數(shù)據(jù)的核心之一,在大數(shù)據(jù)中的應(yīng)用不應(yīng)被忽視。因此,加強(qiáng)數(shù)據(jù)庫新技術(shù)的研發(fā),對于各個(gè)國家在大數(shù)據(jù)時(shí)代的信息戰(zhàn)中都顯得尤為重要。
參考文獻(xiàn):
[1] 齊磊.大數(shù)據(jù)分析場景下分布式數(shù)據(jù)庫技術(shù)的應(yīng)用[J].移動(dòng)通信,2015(12):58-62.
[2] 滕健鯤,孫桂琴.數(shù)據(jù)庫技術(shù)應(yīng)用問題研究[J].科技致富向?qū)В?015(15):81-81.
[3] 音春.大數(shù)據(jù)時(shí)代數(shù)據(jù)庫技術(shù)研究[J].廣東通信技術(shù),2015,35(3):12-14.