视窗
loading...
您现在的位置:首页 > IT认证 > oracle认证 >

OracleRAC环境对并行查询的支持


   RAC环境中,一个并行的执行可能分布到多个实例上执行。

  如果连接Oracle RAC数据库时,一个节点上的并发操作可以分布到多个节点上同时执行。

  看一个简单的例子:

  SQL> CONN TEST/TEST@TESTRAC已连接。

  SQL> SELECT INSTANCE_NAME FROM V$INSTANCE;

  INSTANCE_NAME

  ----------------

  testrac2

  SQL > SELECT INSTANCE_NAME FROM GV$INSTANCE;

  INSTANCE_NAME

  ----------------

  testrac1

  testrac2

  SQL > SELECT * FROM V$VERSION;

  BANNER

  ----------------------------------------------------------------

  Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi

  PL/SQL Release 10.2.0.3.0 - Production

  CORE 10.2.0.3.0 Production

  TNS for Solaris: Version 10.2.0.3.0 - Production

  NLSRTL Version 10.2.0.3.0 - Production

  这是一个10g的环境,下面建立一张测试表,建立过程中设置表的并行度:

  SQL> CREATE TABLE T_PARALLEL PARALLEL 16

  2 AS SELECT A.* FROM DBA_OBJECTS A, DBA_TABLES

  3 WHERE ROWNUM <= 5000000;

  表已创建。

  SQL> SET AUTOT ON

  SQL> SELECT COUNT(*) FROM T_PARALLEL;

  COUNT(*)

  ----------

  5000000

 执行计划

  ----------------------------------------------------------

  Plan hash value: 70256698

  ----------------------------------------------------------------------------------------------------------

  | Id | Operation | Name | Rows | Cost (%CPU)| Time | TQ |IN-OUT| PQ Distrib |

  ----------------------------------------------------------------------------------------------------------

  | 0 | SELECT STATEMENT | | 1 | 1081 (2)| 00:00:13 | | | |

  | 1 | SORT AGGREGATE | | 1 | | | | | |

  | 2 | PX COORDINATOR | | | | | | | |

  | 3 | PX SEND QC (RANDOM) | :TQ10000 | 1 | | | Q1,00 | P- >S | QC (RAND) |

  | 4 | SORT AGGREGATE | | 1 | | | Q1,00 | PCWP | |

  | 5 | PX BLOCK ITERATOR | | 4588K| 1081 (2)| 00:00:13 | Q1,00 | PCWC | |

  | 6 | TABLE ACCESS FULL| T_PARALLEL | 4588K| 1081 (2)| 00:00:13 | Q1,00 | PCWP | |

  ----------------------------------------------------------------------------------------------------------

  Note

  -----

  - dynamic sampling used for this statement

  从执行计划可以看到,Oracle选则了并行执行。

  新连接一个会话,在执行上面这个并行查询的同时,检查GV$PX_PROCESS视图:

  SQL> SELECT * FROM GV$PX_PROCESS;

  INST_ID SERV STATUS PID SPID SID SERIAL#

  ---------- ---- --------- ---------- ------------ ---------- ----------

  2 P000 IN USE 21 25120 265 13

  2 PZ99 IN USE 42 25480 271 39

  2 P001 IN USE 24 25122 279 1579

  2 P002 IN USE 34 25124 280 602

  2 P003 IN USE 35 25126 281 42

  2 P004 IN USE 37 25155 284 106

  2 P005 IN USE 41 25159 296 2212

  1 P009 IN USE 44 27375 244 20

  1 P004 IN USE 39 27336 246 504

  1 P000 IN USE 24 27328 247 19

  1 P005 IN USE 40 27349 251 363

  1 P002 IN USE 37 27332 254 76

  1 PZ99 IN USE 45 27725 265 28

  1 P008 IN USE 43 27373 266 46

  1 P006 IN USE 41 27369 270 64

  1 P001 IN USE 32 27330 283 1980

  1 P007 IN USE 42 27371 289 86

  1 P003 IN USE 38 27334 311 21707

  已选择18行。

  很显然,并行查询的16个进程已经分布到两个节点上同时执行了。

銆愬厤璐e0鏄庡拰鐗堟潈璇存槑銆�
鏈珯閮ㄥ垎淇℃伅鏉ユ簮浜庝簰鑱旂綉锛�瀵硅浆杞界殑淇℃伅鎴戜滑鍔涙眰鏍囨槑淇℃伅鐨勫嚭澶勶紝鎴戜滑灏婇噸浣滆€呯殑鐗堟潈钁椾綔鏉冿紝瀵规垜浠浆杞界殑淇℃伅濡傛湁寮傝鎴栨湁渚垫潈鎴栬繚娉曚俊鎭鍙婃椂鑱旂郴鎴戜滑锛屾湰绔欎細绔嬪嵆鍒犻櫎锛�瀵瑰師鍒涘唴瀹规垜浠効鎰忔敮浠橀€傚綋鐨勭ǹ閰紝鑱旂郴鏂瑰紡锛氶偖浠�:webmaster@jscj.com銆€鐢佃瘽锛�4008816886

相关文章

无相关信息
更新时间2022-03-13 10:53:44【至顶部↑】
联系我们 | 邮件: webmaster@jscj.com | 客服热线电话:4008816886(QQ同号) |  婵犵數濮烽弫鍛婃叏閻戣棄鏋侀柛娑橈攻閸欏繘鏌i幋锝嗩棄闁哄绶氶弻鐔兼⒒鐎靛壊妲紒鐐劤濞硷繝寮婚悢琛″亾閻㈢櫥鐟版毄缂傚倷璁查崑鎾斥攽閻樺弶澶勯柣鎾冲暟閹茬ǹ饪伴崼婵堫槶濠殿喗枪濞夋稒顢婇梻浣告啞濞诧箓宕规导鏉戠闁规儼濮ら悡鏇㈡煃閳轰礁鏋ゆ繛鍫熸⒐閵囧嫯绠涢敐鍕仐闂佸搫鏈粙鎴﹀煝鎼淬倗鐤€闁哄洨濯崯瀣⒒娴e憡鎯堥柣顓烆槺缁辩偞绗熼埀顒勬偘椤曗偓瀹曞爼顢楁径瀣珨闂備礁鎲℃笟妤呭窗濡ゅ懏鍎婃繝濠傜墛閳锋帒霉閿濆懏鍤堢憸鐗堝俯閺佸嫰鏌涢埄鍐槈缂佺姵鐓¢弻娑㈠Ψ椤旂厧顫梺绋款儐钃遍柕鍥у瀵潙螖閳ь剚绂嶆ィ鍐╁€甸悷娆忓缁€鈧紓鍌氱Т閿曨亪濡存担绯曟瀻闁规儳纾悡鎴︽⒑闂堟冻绱¢柛鏇炲绾偓濠电姷鏁告慨鐑藉极閸涘﹥鍙忛柣鎴f閺嬩線鏌涘☉姗堟敾闁告瑥绻戦妵鍕箻閸楃偟浠肩紒鐐劤椤兘寮婚悢鐓庣鐟滃繒鏁☉銏$厽闁规儳鐡ㄧ粈瀣煛鐏炵偓绀冪€垫澘瀚埀顒婄秵娴滅偞绂掗幘顔解拺闁稿繐鍚嬮妵鐔兼煕閵娿倕宓嗛柛鈹垮灲楠炴ê煤缂佹ɑ娅囬梻渚€娼х换鍡涘疾濠婂應鍋撻棃娑氱劯婵﹥妞藉Λ鍐ㄢ槈濮橆剦鏆繝纰樻閸嬪懘鎮烽埡鍕紓闂備胶纭堕崜婵婂綘婵炲瓨绮嶇划鎾诲蓟閿熺姴纾兼慨姗嗗墰濞堝綊姊洪崨濠冣拻闁哥姵鐗犲濠氭偄閼测晛绁﹂梺鍓茬厛閸犳碍瀵奸崼銉︹拺閺夌偞澹嗛崝宥夋煙閻熺増鍠樼€殿噮鍋婇獮妯肩磼濡粯顏熼梻浣芥硶閸o箓骞忛敓锟�

付款方式留言簿投诉中心网站纠错二维码手机版

客服电话: