- 相關推薦
基于結構化P2P的分布式數(shù)據(jù)流系統(tǒng)的查詢處理模型
下面是一篇計算機應用畢業(yè)論文范文,由YJBYS為您收集提供,歡迎閱讀!
摘要:分析了基于結構化覆蓋網(wǎng)的分布式查詢處理模型,支持大量數(shù)據(jù)流的分布式存儲,連續(xù)查詢間、查詢內的并行處理操作,能夠在很大程度上消除資源約束問題(主要是內存),提高了查詢性能、服務質量,并且該查詢模型具有很好的擴展性。
關鍵詞:分布式數(shù)據(jù)流管理系統(tǒng); 結構化覆蓋網(wǎng); 分布式散列表; 滑動窗口
近年來,數(shù)據(jù)流查詢處理是數(shù)據(jù)庫研究領域的一個熱點方向。數(shù)據(jù)流的特征可概括為無限性、瞬時性、流速不定性、語義不定性(數(shù)據(jù)模式隨時可能改變)等。針對數(shù)據(jù)流的以上特征,不考慮將數(shù)據(jù)流存儲在傳統(tǒng)的關系數(shù)據(jù)庫中,數(shù)據(jù)流上的查詢是近似查詢、連續(xù)查詢(continuous query)。 目前,數(shù)據(jù)流管理系統(tǒng)中所采用的近似查詢的方法主要有以下幾種:隨機抽樣(random sampling)、數(shù)據(jù)寫生(sketching)、直方圖(histograms)、小波變換(wavelets)、窗口(windows)等。如何保證查詢的服務質量成為上述各種近似查詢方法必須考慮的問題。數(shù)據(jù)流上的查詢處理給人們提出了一個很大的難題——對處理器、內存等系統(tǒng)資源非?量痰男枨蟆5侥壳耙呀(jīng)出現(xiàn)了許多數(shù)據(jù)流的原型系統(tǒng):單節(jié)點(單CPU)上的數(shù)據(jù)流管理系統(tǒng),如Stanford 大學的Stream[1] 系統(tǒng)、布朗大學的Aurora[2,3] 系統(tǒng)等;有分布式數(shù)據(jù)流處理系統(tǒng),如MIT的Medusa[4,5] 項目,Brandeis、Brown、MIT 的合作項目Borealis[6,7]等。這些項目在數(shù)據(jù)流處理的查詢語言、近似查詢算法、保證服務質量的策略,以及系統(tǒng)的負載均衡等方面做了大量的工作,但同時也揭示出在分布式數(shù)據(jù)流處理系統(tǒng)中更多值得研究的問題。本文將對基于structured overlay network的分布式數(shù)據(jù)流系統(tǒng)的近似、自適應查詢處理進行研究,給出查詢處理模型。
集中式數(shù)據(jù)流查詢處理及分布式散列表、Chord路由協(xié)議的相關說明
數(shù)據(jù)流查詢處理相關的概念定義以及假設說明
集中式數(shù)據(jù)流查詢處理的體系結構由兩部分構成,即查詢計劃生成子系統(tǒng)(FRONT-end)以及查詢執(zhí)行子系統(tǒng)(BACK)。其中兩部分與關系數(shù)據(jù)庫系統(tǒng)相比均有較大的區(qū)別。查詢執(zhí)行子系統(tǒng)如圖1所示。
通過這種散列,將系統(tǒng)當前的所有查詢映射到節(jié)點空間,然后由該節(jié)點上的查詢處理器完成到達的查詢。
b)查詢內并行處理方式。在系統(tǒng)的范圍內,由操作符、輸入均輸出記錄隊列、維持操作符狀態(tài)的大綱信息構成網(wǎng)狀結構。
c)命名發(fā)現(xiàn)機制。參與查詢處理的節(jié)點有全局惟一命名participant(如IP地址等)。當在一個節(jié)點上面定義一個新的流模式、數(shù)據(jù)流、操作符,這些實體均隸屬于其命名空間。該實體可以采用下面的命名方式:(participant,entity-name) 。為了了解系統(tǒng)中數(shù)據(jù)流模式的定義、系統(tǒng)中的數(shù)據(jù)流、數(shù)據(jù)流的到達(存放)位置、系統(tǒng)中哪一部分查詢執(zhí)行,就要考慮在?catalog中存放必要的數(shù)據(jù)。其中catalog信息是通過在DHT下分布式存儲的,前面已經(jīng)分析了catalog信息的存儲問題。
系統(tǒng)中對每一個數(shù)據(jù)流、每一個查詢、查詢中的算子、算子大綱、節(jié)點間輸出隊列均有惟一的命名。查詢處理器位于DHT之上。同查詢相關的數(shù)據(jù)粒度限定為數(shù)據(jù)流、輸入數(shù)據(jù)源(記錄集)、節(jié)點間傳輸數(shù)據(jù)隊列、算子大綱,而不是針對單個記錄而言。對于這些粒度的數(shù)據(jù)可以通過在DHT中通過put(namespace,object)、get(namespace)、multicast(namespace)消息得到。
對于操作符(算子)在節(jié)點間遷移的情況,可以提供遠程算子定義接口。當節(jié)點?A?上查詢執(zhí)行的下一步join操作要求節(jié)點?B的查詢執(zhí)行器完成時,節(jié)點B?接收到遠程調用請求,初始化join算子,將節(jié)點?A?上發(fā)出調用請求算子的狀態(tài)信息(大綱,synopsis)作為參數(shù)傳遞給?B,然后就可以在節(jié)點B?上進行join算子運算。查詢內并行就是有若干這樣的節(jié)點間的算子遷移,使一個查詢計劃得以在多節(jié)點的算子之間并行執(zhí)行。
對于基于滑動窗口的數(shù)據(jù)流處理的join操作,如果有兩個數(shù)據(jù)流,查詢處理基于時間的窗口,進行join操作的兩個數(shù)據(jù)流時間范圍較長,那么要求在一個節(jié)點上維護操作符的狀態(tài)信息將會變得非常困難,join算子狀態(tài)信息存儲要求的內存空間可能非常大,則會進行操作符分割操作。在該節(jié)點的近鄰節(jié)點上同時進行join操作,最終將各個節(jié)點上的狀態(tài)信息進行合并操作即可。
算子遷移、算子合并、算子分割等操作在基于DHT的系統(tǒng)上實現(xiàn)具有良好的擴展性。DHT層為數(shù)據(jù)流處理系統(tǒng)在荷載大的情況下進行負載脫落、查詢計劃間并行、查詢計劃內并行提供了可以隨意擴展的基礎平臺。
結束語
本文給出了基于structured overlay network 的分布式數(shù)據(jù)流查詢處理模型,考慮了對于到達系統(tǒng)的大量數(shù)據(jù)流的分片存放策略;同時在查詢處理中對查詢內的并行、查詢間的并行、算子在分布式節(jié)點的遷移等提供了很好的支持。對系統(tǒng)catalog目錄信息的分布式存放維護,從而消除了單節(jié)點查詢處理引擎在資源(CPU、內存)上的約束。本文沒有考慮分布式查詢模型在網(wǎng)絡帶寬資源方面的問題,這將是以后要完善的地方。基于結構化覆蓋網(wǎng)的分布式數(shù)據(jù)流查詢模型提高了系統(tǒng)性能、查詢服務質量,并且基于Chord實現(xiàn),具有很好的擴展性。
參考文獻:
[1]BRIAN B, SHIVNATH B, JENNIFER W. Models and issues in data stream systems[C]//Proc of the 21st ACM Symposium on Principles of Database Systems,2002.
?[2]BALAKRISHNAN H, BALAZINSKA M, CARNEY D, ?et al?. ?Retrospective on Aurora[J]. VLDB Journal, 2004,13(4):370-383.
[3]ABADI D, CARNEY D, STONEBRAKER M, ?et al?. Aurora: a new model and architecture for data stream management[J]. VLDB Journal,2003,12(2):120-139.
[4]ZDONIK S, STONEBRAKER M, CHERNIACK M,?et al?. The Aurora and Medusa Projects[J].IEEE Data Engineering Bulletin, 2003,26(1):3-10.
[5]CHERNIACK M, BALAKRISHNAN H, BALAZINSKA M, ?et al?. Scalable distributed stream processing[C]//Proc of the 1st Biennial Conference on Innovative Data Systems Research. Asilomar, California:[s.n.],2003.
[6]ABADI D J, AHMAD Y, BALAZINSKA M, ?et al?. The design of the Borealis stream processing engine[C]//Proc of the 2nd Biennial Conference on Innovative Data Systems Research (CIDR’05). Asilomar:[s.n.],2005.
[7]TATBUL N, ZDONIK S.Dealing with overload in distributed stream processing systems[C]//Proc of IEEE International Workshop on Networking Meets Databases (NetDB’06). Atlanta:[s.n.],2006.
[8]Distributed hash tables links[EB/OL]. http://www.etse.urv.es/~cpairot/dhts.html.
[9]DABEK F, STOICA I, BALAKRISHNAN H, ?et al?. Building peer-to-peer systems with Chord, a distributed lookup service[C]//Proc of the 8th Workshop on Hot Topics in Operating Systems(HotOS-VIII).2001.
[10]STOICAL I, MORRIS R, BALAKRISHNAN H, ?et al?. Chord:a sca-lable peer-to-peer lookup service for internet applications[C]//Proc ofACM SIGCOMM. New York: ACM Press, 2001:149-160.
【基于結構化P2P的分布式數(shù)據(jù)流系統(tǒng)的查詢處理模型】相關文章:
基于擴展XQuery引擎的空間數(shù)據(jù)流查詢方法研究10-07
基于P2P的計算機輔助教學系統(tǒng)的設計與實現(xiàn)10-08
基于EXCEL的層次分析法模型設計10-08
基于融合細分的紋理圖像重構模型10-06
基于旅游管理的時空數(shù)據(jù)模型研究論文10-08
淺析基于品牌要素的品牌創(chuàng)建動態(tài)模型建構10-05