摘要:中級通信工程師考試培訓(xùn)并行數(shù)據(jù)庫:隨著數(shù)據(jù)庫應(yīng)用領(lǐng)域的日益廣泛,應(yīng)用規(guī)模的急劇膨脹,工作量的日益加重,對數(shù)據(jù)庫 提出了越來越高的要求。有些應(yīng)用如決策支持系統(tǒng)(DSS)和聯(lián)機(jī)事務(wù)處理(OLTP)等需要 對大量事務(wù)進(jìn)行處理,這就要求提高數(shù)據(jù)庫的性能以提供事務(wù)處理的高吞吐量和低響應(yīng)時間。
1.并行數(shù)據(jù)庫
隨著數(shù)據(jù)庫應(yīng)用領(lǐng)域的日益廣泛,應(yīng)用規(guī)模的急劇膨脹,工作量的日益加重,對數(shù)據(jù)庫 提出了越來越高的要求。有些應(yīng)用如決策支持系統(tǒng)(DSS)和聯(lián)機(jī)事務(wù)處理(OLTP)等需要 對大量事務(wù)進(jìn)行處理,這就要求提高數(shù)據(jù)庫的性能以提供事務(wù)處理的高吞吐量和低響應(yīng)時間。
并行數(shù)據(jù)庫系統(tǒng)(Parallel Database System)是以并行計(jì)算機(jī)為基礎(chǔ),將數(shù)據(jù)庫管理與并 行技術(shù)相結(jié)合,以高性能和可擴(kuò)展性為目標(biāo)的數(shù)據(jù)庫系統(tǒng)。它利用多處理器結(jié)構(gòu)的優(yōu)勢,提 供比相應(yīng)的大型機(jī)系統(tǒng)高得多的性能價格比和可用性,己成為數(shù)據(jù)庫研究領(lǐng)域的一個熱點(diǎn)。
并行數(shù)據(jù)庫的研究主要包括以下幾個方面。
①并行數(shù)據(jù)庫操作的并行算法的設(shè)計(jì)與實(shí)現(xiàn)。
②并行數(shù)據(jù)庫物理存儲結(jié)構(gòu)的研究。研究如何劃分多處理機(jī)、劃分或共享磁盤和內(nèi)存等, 以實(shí)現(xiàn)對數(shù)據(jù)庫的并行操作。
③并行查詢優(yōu)化的研究。
(1)并行數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)
并行數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)與并行計(jì)算系統(tǒng)的結(jié)構(gòu)有關(guān)。目前并行計(jì)算機(jī)的體系結(jié)構(gòu)主 要有以下幾類:
①緊耦合全對稱多處理器(SMP)系統(tǒng),所有的CPU共享內(nèi)存與磁盤。
②松耦合群集機(jī)系統(tǒng),所有的CPU共享磁盤。
③大規(guī)模并行處理(MPP)系統(tǒng),所有的CPU均有自己的內(nèi)存與磁盤。
④混合結(jié)構(gòu),如SMP群集機(jī)系統(tǒng),即MPP系統(tǒng)的每個結(jié)點(diǎn)是一個SMP系統(tǒng)。
(2)并行處理技術(shù)
并行數(shù)據(jù)庫系統(tǒng)提供多種并行性以提高系統(tǒng)的并行處理能力,分為查詢間的并行、查詢 內(nèi)的并行、操作內(nèi)的并行和操作間的并行。
①查詢間并行
查詢間并行指不同的查詢或事務(wù)可互相并行地執(zhí)行,此種形式的并行可以提高事務(wù)吞吐 量,擴(kuò)展事務(wù)處理系統(tǒng),使它在每秒鐘里能支持更大數(shù)量的事務(wù)。
查詢間并行在共享內(nèi)存的并行系統(tǒng)中最易實(shí)現(xiàn)。即使在串行的數(shù)據(jù)庫系統(tǒng)中也支持并行 處理,所以為單處理器系統(tǒng)設(shè)計(jì)的數(shù)據(jù)庫系統(tǒng)可以不做改動,或者稍作改動,就可用到共享
內(nèi)存的并行結(jié)構(gòu)中。
在磁盤共享或無共享的體系結(jié)構(gòu)中,支持查詢間并行要復(fù)雜些。因?yàn)橄鄳?yīng)各處理器以一 種協(xié)同的方式執(zhí)行某些任務(wù)(如封鎖或日志),所以需要它們之間能傳遞消息。
并且,數(shù)據(jù)庫系統(tǒng)還必須保證兩個處理器不會相互獨(dú)立地同時更新相同的數(shù)據(jù),并做到 緩存相關(guān),即一個處理器訪問或更新數(shù)據(jù)時,數(shù)據(jù)庫系統(tǒng)必須保證該處理器在它的緩沖池中 也擁有該數(shù)據(jù)庫的新版本。
?、诓樵儍?nèi)并行
查詢內(nèi)并行指多個查詢在多個處理器上并行地執(zhí)行。在并行體系結(jié)構(gòu)中,對于長時間運(yùn) 行的查詢采用查詢間并行非常重要。
一個查詢可以包含一個或多個操作。例如對某個關(guān)系的排序輸出。假設(shè)該關(guān)系分布在多 個磁盤上,那么在并行體系結(jié)構(gòu)中可以這樣進(jìn)行:對每個分片并行地進(jìn)行排序,然后將排序 好的各個分片再串接在一起,得到最終的輸出。
一般地,單個查詢的執(zhí)行可以有兩種并行方式,即操作內(nèi)并行和操作間并行,這兩種方 式是互相補(bǔ)充,可同時應(yīng)用在一個查詢中。
③操作內(nèi)并行
關(guān)系中都包含了大量的元組,所以對關(guān)系的操作可以通過在關(guān)系的不同子集上并行地執(zhí) 行來實(shí)現(xiàn)操作的并行性。關(guān)系中的元組數(shù)目越多,可達(dá)到的并行度也就越大。
④操作間并行
不同操作間的并行有兩種方式?.流水線并行和獨(dú)立并行。
流水線并行。指一個操作A的輸出作為另一個操作B的輸入,在操作A未產(chǎn)生完全 的輸出之前,操作B已利用操作A的部分輸出進(jìn)行工作,并且操作B輸出又作為第三個操 作C的輸入,以此類推。多個操作間的這種輸入輸出操作是并行的,并且操作的中間結(jié)果不 必保存在磁盤上。但這種方式的效果是有限制的,比如當(dāng)多個并行操作中有一個操作的代價 遠(yuǎn)遠(yuǎn)高于其他操作,或者對于那些必須訪問了整個輸入才能開始產(chǎn)生輸出的操作(例如集合 的差運(yùn)算),就不能采用流水線。
獨(dú)立并行。將一個查詢分解成多個獨(dú)立的子任務(wù),由多個處理器并行執(zhí)行。獨(dú)立并 行與流水線并行一樣,不能提供較高的并行度,它們都適合于低度并行的系統(tǒng)中,在高度并 行的系統(tǒng)中沒有太大的用處。對并行數(shù)據(jù)庫系統(tǒng)的研究,雖然已經(jīng)有了一些研究或?qū)嶒?yàn)用的 原型系統(tǒng),但尚無真正的系統(tǒng)投入使用。
返回目錄:通信工程師考試科目綜合能力計(jì)算機(jī)應(yīng)用
編輯推薦通信工程師考前試題練習(xí):
通信工程師備考資料免費(fèi)領(lǐng)取
去領(lǐng)取
共收錄117.93萬道題
已有25.02萬小伙伴參與做題