數據庫并行查詢是指針對查詢語句使用并行處理。當目標語句發生全表掃描、全分區掃描及索引快速全掃描的情況時,優化器如果滿足一些前提條件下是可以選擇使用并行處理的。前提條件有:
1)會話并行查詢特性:可以在會話一級啟用或禁用并行查詢,默認情況下是啟用的。啟用、禁用命令分別如下:
此外,還可以通過下面查詢來查看當前會話是否啟用了并行查詢。
這個屬性可返回enabled、disabled、forced,分別對應啟用、禁用和強制。其中,強制是一種特殊的狀態,它會強制查詢語句指定并行度查詢,甚至會覆蓋后面講到的對象并行屬性。設置方法如下:
2)SQL語句并行提示:并行提示可以覆蓋上面會話級別的設置。一方面,即使在會話級別禁用了并行查詢,提示也可以強制執行一個并行操作。唯一可以用來關閉并行查詢的方法是將parallel_max_servers設置為0。另一方面,即使在會話級別強制設置了一個并行度,提示還是可以改變另外一個并行度。并行提示是使用來指定的。
3)對象設置并行屬性:在SQL語句相關的對象中可設置并行屬性,也可使用并行查詢。這是在對象定義時指定的,也可以后期修改。
下面通過幾個示例,看看如何通過提示、對象屬性及強制會話來完成并行查詢。下面首先看看使用提示的方式。
下面解釋一下執行步驟:
ID=6:掃描表的一部分,具體掃描哪個部分取決于它的父操作(即PX BLOCK ITERATOR)。
ID=5:將全表掃描分解為較小的掃描,這是一個涉及塊范圍粒度的操作。
ID=4:每個掃描匯總其count(status)的值。
ID=2、3:將每個子結果傳遞給查詢調度進程。從這個執行計劃中,可以通過TQ字段識別出哪些操作是由一組從屬進程來執行的。
在這個計劃中,操作3、4、5、6擁有同樣的值(Q1,00),因此它們是由同一組從屬進程執行的(從執行計劃中無法得知從屬進程的數量)。此外需要注意,操作3中的從屬進程與查詢調度進程(QC)之間的由并行到串行(P->S)的通信過程非常必要。
ID=1,進一步匯總這些結果,并輸出答案。
下面看看使用對象屬性的方式。
下面看看使用強制會話的方式。
還要注意一點,會話默認是啟動并行查詢的,可以將會話關閉。
通過上面的示例可見,并行查詢執行計劃與普通的串行操作的不同。下面說明在并行操作過程中各部分之間的關系。在并行執行的執行計劃中會使用并行操作之間的下列關系。在dbms_xplan產生的輸出中,并行操作之間的關系是通過字段IN-OUT來提供的。
并行到串行(P->S):并行操作發送數據到串行操作。通常是并行進程將數據發給并行調度進程。
并行到并行(P->P):一個并行操作發送數據給另一個并行操作。當存在兩組從屬進程時就會用到它。
并行與父操作合并(PCWP):執行計劃中的相同從屬進程并行執行一個操作及其父操作(父操作也是并行的)。因此,沒有通信發生。
并行與子操作合并(PCWC):執行計劃中的相同從屬進程并行執行一個操作及其子操作(子操作也是并行的)。因此,沒有通信發生。
串行到并行(S->P):一個串行操作發送數據給并行操作。由于大部分時間這個操作的效率都較差,因此應該避免使用它。有兩個情況會產生這個操作。一個是單一進程產生數據的速度可能沒有多個進程消費數據的速度快。如果是這樣,消費者可能花費更多的時間來等待數據而不是真正地處理數據。另一個是,串行執行的操作和并行執行的操作發送數據需要一些不必要的通信。
數據庫并行查詢
作者:jypxw
2022-04-01 19:06:01
501
- 下一篇: 分布式文件系統
- 上一篇: linux服務器如何防止被黑客入侵
相關閱讀 查看全部
-
TCP/IP協議族概述
2022-04-27 21:06 -
OSI參考模型的優點
2022-04-27 21:03 -
網橋與交換機的關系
2022-04-27 21:00 -
注意!HCIE考試中心疫情防控有變化
2022-04-27 20:57 -
交換機的基本命令
2022-04-27 20:54 -
TCP連接的建立與終止
2022-04-27 20:51 -
FTP協議是什么
2022-04-27 20:48 -
可變長子網掩碼和路由匯總
2022-04-27 20:45 -
TCP協議分段
2022-04-27 20:42 -
思科路由器的結構簡介
2022-04-27 20:39
推薦閱讀 查看全部
-
樂山一職中地址在哪
2022-05-12 01:27 -
初中學歷怎樣自考本科 哪種提升學
2022-05-12 01:24 -
長春信息技術職業學院具體地址在哪
2022-05-12 01:28 -
2010世界上最厲害的大學前10排名!
2022-05-12 01:24 -
事業單位承認自考文憑嗎?
2022-05-12 01:27 -
南岸區|重慶醫藥科技學校宿舍條件
2022-05-12 01:24 -
第三方面試Initialview真題分享
2022-05-08 16:15 -
不會日語還想去東大讀研?才不是天
2022-05-08 16:10 -
TCP/IP協議族概述
2022-04-27 21:06 -
OSI參考模型的優點
2022-04-27 21:03 -
2022陜西一建執業資格考試報名時間
2022-05-12 01:28 -
一級建造師證書必須要注冊后才能報
2022-05-12 01:24