當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]簡(jiǎn)而言之,并行處理就是利用多個(gè)CPU和I/O資源來執(zhí)行單個(gè)數(shù)據(jù)庫操作。盡管現(xiàn)在每個(gè)主要的數(shù)據(jù)庫供應(yīng)商都聲稱可以提供并行處理能力,但每個(gè)供應(yīng)商所提供的體系結(jié)構(gòu)其實(shí)存在關(guān)

簡(jiǎn)而言之,并行處理就是利用多個(gè)CPU和I/O資源來執(zhí)行單個(gè)數(shù)據(jù)庫操作。盡管現(xiàn)在每個(gè)主要的數(shù)據(jù)庫供應(yīng)商都聲稱可以提供并行處理能力,但每個(gè)供應(yīng)商所提供的體系結(jié)構(gòu)其實(shí)存在關(guān)鍵的差異。

本文討論 9i并行處理的體系結(jié)構(gòu),并說明了在實(shí)際應(yīng)用中其相對(duì)于其它體系結(jié)構(gòu)的優(yōu)越性。需要著重指出的是,9i并行處理體系結(jié)構(gòu)的主要優(yōu)點(diǎn)在于它能在任何情況下完全利用底層硬件基礎(chǔ)架構(gòu)——每個(gè)處理器單元、每個(gè)內(nèi)存字節(jié)以及所有可用的I/O帶寬。本白皮書還講述 并行處理組件與其它關(guān)鍵業(yè)務(wù)組件(例如:Oracle Application Cluster)的無縫集成。

簡(jiǎn)介

現(xiàn)在的數(shù)據(jù)庫,無論是用于數(shù)據(jù)倉庫、操作數(shù)據(jù)存儲(chǔ)(ODS)或 系統(tǒng),都包含豐富的信息。然而,由于其中涉及海量數(shù)據(jù),及時(shí)查找和展示信息是一個(gè)巨大的挑戰(zhàn)。并行處理技術(shù)能夠解決這一挑戰(zhàn)。使用并行處理技術(shù),數(shù)分種內(nèi)(而非數(shù)小時(shí)或數(shù)天)就可以處理數(shù)TB級(jí)的數(shù)據(jù)。并行處理技術(shù)通過利用所有可用的硬件資源取得這樣的高性能:多個(gè)CPU、多個(gè)I/O通道、多個(gè)存儲(chǔ)陣列和磁盤驅(qū)動(dòng)器,以及大量的內(nèi)存。數(shù)據(jù)庫軟件越能有效地利用所有這些資源,處理查詢和其它數(shù)據(jù)庫操作就越有效。

此外,現(xiàn)在的數(shù)據(jù)庫應(yīng)用的復(fù)雜性大大都增強(qiáng)了,不僅需要支持大量并發(fā)用戶,而且需要管理不同類型的用戶。因此,一個(gè)并行查詢體系結(jié)構(gòu)不僅應(yīng)該確保底層硬件平臺(tái)的所有資源都得到充分利用,而且應(yīng)該更進(jìn)一步,將這些資源適當(dāng)?shù)胤峙浣o多個(gè)并發(fā)請(qǐng)求。很顯然,支持CEO的戰(zhàn)略決策的請(qǐng)求比執(zhí)行批處理報(bào)表更加重要,并行查詢體系結(jié)構(gòu)應(yīng)該能夠處理這些商務(wù)要求:不僅基于請(qǐng)求自身,而且應(yīng)該基于發(fā)出請(qǐng)求的人以及當(dāng)前可用的系統(tǒng)資源的數(shù)量來做出動(dòng)態(tài)的分配。

Oracle9i 的并行處理體系結(jié)構(gòu)能夠全面滿足這些要求,Oracle9i的體系結(jié)構(gòu)不僅提供業(yè)界領(lǐng)先的高性能,而且是唯一可以自適應(yīng)和動(dòng)態(tài)調(diào)整的。

Oracle9i 的并行處理體系結(jié)構(gòu)充分利用每種硬件投資――SMP、群集或MPP的優(yōu)勢(shì)——在任何時(shí)間保證最佳的吞吐量和連續(xù)的、優(yōu)化的系統(tǒng)使用量。

Oracle9i 數(shù)據(jù)庫根據(jù)可用資源、請(qǐng)求優(yōu)先級(jí)和實(shí)際系統(tǒng)負(fù)載控制來平衡所有并行操作。

并行化設(shè)計(jì)策略——靜態(tài)與動(dòng)態(tài)

并行處理的思想就是將單個(gè)任務(wù)分解為多個(gè)更小的單元。不是通過一個(gè)進(jìn)程完成所有工作,而是將任務(wù)并行化而使多個(gè)進(jìn)程同時(shí)在更小的單元上運(yùn)行。這可以極大地提高性能和最佳地利用系統(tǒng)。然而,并行處理的最關(guān)鍵部分是如何作出將單個(gè)任務(wù)分成更小的工作單元的正確決策。

典型地,有兩種方法用于實(shí)現(xiàn)數(shù)據(jù)庫系統(tǒng)的并行處理。主要區(qū)別在于是否需要進(jìn)行物理數(shù)據(jù)布局,將靜態(tài)的數(shù)據(jù)分區(qū)作為并行處理的前提。

通過物理數(shù)據(jù)分區(qū)的靜態(tài)并行——不共享

在純不共享數(shù)據(jù)庫體系結(jié)構(gòu)中必須將數(shù)據(jù)庫文件在多計(jì)算機(jī)系統(tǒng)的節(jié)點(diǎn)上進(jìn)行分區(qū)才能進(jìn)行并行處理。每個(gè)節(jié)點(diǎn)擁有一個(gè)數(shù)據(jù)子集,擁有節(jié)點(diǎn)使用單一進(jìn)程或線程,以獨(dú)占方式執(zhí)行對(duì)此數(shù)據(jù)子集的所有訪問。數(shù)據(jù)訪問不能在分區(qū)內(nèi)并行。(有時(shí),也用術(shù)語“虛擬處理器”來代替節(jié)點(diǎn)。“虛擬處理器”是在SMP計(jì)算機(jī)上模擬不共享節(jié)點(diǎn)的一種機(jī)制。為了簡(jiǎn)單,在討論不共享體系結(jié)構(gòu)時(shí),我們將統(tǒng)一使用“節(jié)點(diǎn)”作為術(shù)語)。換句話說,純不共享系統(tǒng)使用分區(qū)或受限訪問方法在多個(gè)處理節(jié)點(diǎn)間劃分工作。節(jié)點(diǎn)對(duì)數(shù)據(jù)所有權(quán)的改變相對(duì)少見——為了適應(yīng)業(yè)務(wù)需求的改變而進(jìn)行的數(shù)據(jù)庫重組、添加或刪除節(jié)點(diǎn)以及節(jié)點(diǎn)故障是所有權(quán)更改的典型原因。這種數(shù)據(jù)所有權(quán)的改變對(duì)純不共享系統(tǒng)而言總是意味著要進(jìn)行人工管理。

從概念上看,可以認(rèn)為純不共享系統(tǒng)與分布式數(shù)據(jù)庫非常相似。為了在某個(gè)節(jié)點(diǎn)上執(zhí)行要求的讀/寫操作,該節(jié)點(diǎn)上的事務(wù)必須將消息發(fā)送給擁有需要被訪問的數(shù)據(jù)的其它節(jié)點(diǎn),并協(xié)調(diào)在其它節(jié)點(diǎn)上完成的工作。將消息傳遞給其它節(jié)點(diǎn),在它們擁有的數(shù)據(jù)集上請(qǐng)求執(zhí)行特定操作(功能)稱為功能傳送。另一方面,如果從遠(yuǎn)程節(jié)點(diǎn)請(qǐng)求簡(jiǎn)單數(shù)據(jù),則必須訪問完整的數(shù)據(jù)集并將它從擁有節(jié)點(diǎn)返回至請(qǐng)求節(jié)點(diǎn)(數(shù)據(jù)傳送)。

在不共享體系結(jié)構(gòu)下的并行處理像分布式數(shù)據(jù)庫一樣運(yùn)作。每個(gè)節(jié)點(diǎn)以獨(dú)占方式擁有其數(shù)據(jù)分區(qū)。沒有其它任何節(jié)點(diǎn)可以訪問此數(shù)據(jù),而使節(jié)點(diǎn)成為單一的訪問點(diǎn)和故障點(diǎn)。

此方法具有一些基本缺點(diǎn),無法解決今天高端環(huán)境對(duì)可伸縮性和高可用性要求:

首先,不共享方法在用于共享一切的SMP硬件時(shí)并不是最佳的。為了獲得并行處理的益處而要求對(duì)數(shù)據(jù)進(jìn)行物理分區(qū),在共享一切的SMP系統(tǒng)中很明顯是一種人工的、過時(shí)的要求。因?yàn)樵赟MP系統(tǒng)中每個(gè)處理器都可以對(duì)所有數(shù)據(jù)進(jìn)行直接的、等同的訪問。

其次,在不共享方法中使用嚴(yán)格的基于分區(qū)的并行處理策略,通常會(huì)導(dǎo)致不正常的資源利用。例如以下兩種情況:在沒有必要訪問表的所有分區(qū)時(shí);或當(dāng)單一節(jié)點(diǎn)所擁有的更大的未分區(qū)表是操作的一部分時(shí)。在這些情況下,限制分區(qū)內(nèi)并行處理的緊密所有權(quán)模式,無法利用所有可用的處理能力,因而不能提供最佳的處理能力使用方案。

第三,由于具有對(duì)節(jié)點(diǎn)對(duì)應(yīng)物理數(shù)據(jù)分區(qū)的關(guān)系,不共享系統(tǒng)在適應(yīng)變化的業(yè)務(wù)需求方面一點(diǎn)都不靈活。當(dāng)業(yè)務(wù)增長時(shí),無法方便地以增量方式擴(kuò)充系統(tǒng)來適應(yīng)增長的業(yè)務(wù)需求??梢陨?jí)所有現(xiàn)有的節(jié)點(diǎn),保持它們對(duì)稱并避免數(shù)據(jù)重新分區(qū)。在大多數(shù)情形下,升級(jí)所有節(jié)點(diǎn)費(fèi)用太高;必須添加新節(jié)點(diǎn)并重組(進(jìn)行物理重新分區(qū))現(xiàn)有數(shù)據(jù)庫。一個(gè)不需要進(jìn)行任何重組的方案總是比必須重組的方案要更好,即使可以利用到最復(fù)雜的重組工具。

最后,由于使用嚴(yán)格的受限制的訪問模式,不共享系統(tǒng)無法完全利用群集系統(tǒng)為保證系統(tǒng)高可靠性所提供的潛在的容錯(cuò)能力。

毫無疑問,基于使用靜態(tài)數(shù)據(jù)分布的不共享體系結(jié)構(gòu),大量的并行處理可以在實(shí)驗(yàn)室條件下并行化和擴(kuò)展。然而,在每個(gè)現(xiàn)實(shí)環(huán)境中,必須正確地解決上面談到的問題才能滿足今天高端關(guān)鍵任務(wù)要求。

執(zhí)行時(shí)的動(dòng)態(tài)并行——共享一切

使用Oracle 的動(dòng)態(tài)并行處理框架,可以共享所有數(shù)據(jù)。并行化和將工作分成更小的單元的決策,并不受限于數(shù)據(jù)庫設(shè)置(創(chuàng)建)時(shí)所做的任何預(yù)先確定的靜態(tài)數(shù)據(jù)分布。

由于能夠?yàn)槊總€(gè)語句構(gòu)造不受限制的、優(yōu)化的數(shù)據(jù)子集,執(zhí)行時(shí)動(dòng)態(tài)并行可以提供與不共享體系結(jié)構(gòu)等同的或甚至更好的可伸縮性。

每個(gè)查詢?cè)谠L問、連接和處理數(shù)據(jù)的不同部分時(shí)都有它自己的特征。因此,每個(gè)SQL語句在被解析時(shí)都要進(jìn)行優(yōu)化和并行化處理。數(shù)據(jù)更改時(shí),如果有更加優(yōu)化的并行執(zhí)行計(jì)劃可用,或者系統(tǒng)中新添加了一個(gè)節(jié)點(diǎn),那么Oracle可以自動(dòng)適應(yīng)新的情況。這樣可為并行化任何種類的操作提供最高程度的靈活性:

(1)在語句執(zhí)行前,對(duì)于每個(gè)查詢要求,會(huì)動(dòng)態(tài)地優(yōu)化并行訪問的物理數(shù)據(jù)子集。

(2)對(duì)于每個(gè)查詢,都會(huì)優(yōu)化其并行度。與不共享環(huán)境不同,不存在必需的最小并行度來調(diào)用所有節(jié)點(diǎn)訪問所有數(shù)據(jù),這是訪問所有數(shù)據(jù)的基礎(chǔ)要求。

(3)操作可以根據(jù)當(dāng)前工作負(fù)載、特征和查詢的重要性,使用一個(gè)、一些或全部 Application Cluster 節(jié)點(diǎn)并行運(yùn)行。

只要語句得到優(yōu)化和并行化,就可以知道所有后續(xù)的并行子任務(wù)。原始進(jìn)程變?yōu)椴樵儏f(xié)調(diào)器;并行處理服務(wù)器(PX 服務(wù)器)從一個(gè)或多個(gè)節(jié)點(diǎn)上的并行處理服務(wù)器的公用緩沖池得到分配,并開始并行執(zhí)行該操作。

與不共享體系結(jié)構(gòu)相似,共享一切體系結(jié)構(gòu)中的每個(gè)并行處理服務(wù)器在其個(gè)人數(shù)據(jù)子集上獨(dú)立工作。數(shù)據(jù)或功能在并行進(jìn)程之間的傳送機(jī)制也與上述的不共享體系結(jié)構(gòu)相似或者相同。確定請(qǐng)求的并行計(jì)劃之后,每個(gè)并行處理服務(wù)器都知道其數(shù)據(jù)集和任務(wù),而進(jìn)程間通信就像在不共享環(huán)境中一樣很少。

然而,與不共享體系結(jié)構(gòu)不同,每個(gè)并行處理的SQL 語句不需要考慮任何物理數(shù)據(jù)庫布局限制就可以進(jìn)行優(yōu)化。這使得每個(gè)并行處理可以構(gòu)造最佳的數(shù)據(jù)子集,從而提供與純不共享體系結(jié)構(gòu)相比同等的,甚至在大多數(shù)情形下更好的可伸縮性和性能。只要有益,并行操作的后續(xù)步驟就會(huì)由一個(gè)并行處理服務(wù)器進(jìn)行組合和處理,從而減少數(shù)據(jù)傳送或功能傳送的需求。

為什么共享一切比不共享更好?

不共享體系結(jié)構(gòu)可以追溯到將海量并行處理(MPP)系統(tǒng)看作唯一能提供可伸縮的高端并行計(jì)算的硬件體系結(jié)構(gòu)。MPP系統(tǒng)中的每個(gè)節(jié)點(diǎn)都有它自己的系統(tǒng)組件(CPU、內(nèi)存和磁盤),在不同的子任務(wù)上工作,并且不能共享其任何資源。

這一切都已過去?,F(xiàn)在,大多數(shù)成功的、廣泛使用的并行硬件系統(tǒng)都是對(duì)稱多處理器系統(tǒng)(SMP), 要么是單機(jī)的,要么是作為松耦合的群集。SMP系統(tǒng)利用共享公用內(nèi)存和磁盤資源的多處理器,因而也被稱為“共享一切”系統(tǒng)。

純不共享體系結(jié)構(gòu)的支持者總是聲稱共享一切體系結(jié)構(gòu)(特別是群集環(huán)境)對(duì)于高端環(huán)境會(huì)缺乏可伸縮性并引起顯著的開銷,因而這種體系結(jié)構(gòu)不能用于具有高度并行和/或并發(fā)性的高端應(yīng)用。這種說法是錯(cuò)誤的。今天的硬件和軟件技術(shù)已經(jīng)解決了過去所有的問題,如高速群集互連或Oracle Application Clusters 的高速緩存融合體系結(jié)構(gòu)。

Oracle 的動(dòng)態(tài)并行處理框架建立在與不共享軟件相同的并行高級(jí)計(jì)算基礎(chǔ)設(shè)計(jì)之上,具有所有的優(yōu)點(diǎn),還增強(qiáng)了其功能并克服了不共享方法在體系結(jié)構(gòu)上的缺點(diǎn)?;诓还蚕碓淼能浖梢钥醋魇堑谝淮?、但已經(jīng)過時(shí)的數(shù)據(jù)庫并行處理軟件。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉