IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁(yè)數(shù)據(jù)庫(kù)Oracle → oracle并行查詢常用7問(wèn)

oracle并行查詢常用7問(wèn)

時(shí)間:2015-06-28 00:00:00 來(lái)源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)

  在OLAP環(huán)境,以利用多的CPU和內(nèi)存資源來(lái)加速處理數(shù)據(jù),也即oracle的并行查詢。單個(gè)CPU同一時(shí)刻只能服務(wù)一個(gè)進(jìn)程,如果有多個(gè)CPU,提高CPU利用律,就可以同時(shí)運(yùn)行多個(gè)進(jìn)程。也就是原來(lái)單個(gè)進(jìn)程處理的變成多個(gè)進(jìn)程并行處理加速執(zhí)行時(shí)間。并行執(zhí)行只是在全表處理或者分區(qū)及在分區(qū)表中執(zhí)行本地索引時(shí)用到。下面情況會(huì)用到并行查詢:

  全表掃描、 rebuild index、update (全表或分區(qū)表)、insert的并行子查詢、本地索引使用、批量插入,象SQLLDR、創(chuàng)建臨時(shí)表

  比如我們執(zhí)行

  select /*+ parallel(c1 ,2) */

  ...

  from customers c1

  order by ...process a process b

  fetch rows from fetch rows from

  customers customers

  || ||

  || ||

  ^^ ^^

  process c process d

  sort rows(a-k) sort rows(l-z)

  combine rows

  ||

  return result set

  這里我們看到這個(gè)進(jìn)程分散成4個(gè)進(jìn)程,排序中各負(fù)責(zé)a-k和l-z,這樣就可以并行處理

  我們?cè)诜謪^(qū)表中,也可以用一個(gè)并行從進(jìn)程對(duì)應(yīng)一個(gè)分區(qū)表如果你的并行度是3,那么你可能就比普通的執(zhí)行速度提高3倍

  注意在單CPU下,如果使用并行,那么就可能造成性能下降,而且也要設(shè)置合適的并行度

  并行適合對(duì)于長(zhǎng)時(shí)間運(yùn)行的語(yǔ)句

  在oltp可能并不適合使用并行處理,因?yàn)槭聞?wù)并發(fā)比較多,每個(gè)用戶都要使用CPU,CPU的負(fù)載本來(lái)就比較高

  所以并行處理還是比較適合olap中的批量導(dǎo)入,sqlldr,mis report和oltp中rebuild index。

  看看并行選件是否安裝

  Select * FROM V$OPTION

  where parameter like 'Parallel%';

  看看

  Parallel execution是不是TRUE

  如果是TRUE,執(zhí)行語(yǔ)句后查看

  select * from V$pq_sesstat;

  where name like '%Parallelized';

  如果Queries Parallelized>>0就說(shuō)明是執(zhí)行了并行

  可以強(qiáng)制使用PARALLEL,和CPU數(shù)量無(wú)關(guān),不過(guò)在單個(gè)CPU下使用并行沒(méi)有什么好處

  alter session force parallel query;

  可以強(qiáng)制將某表執(zhí)行全表掃描時(shí)使用并行查詢

  alter table tablename parallel 7;

關(guān)鍵詞標(biāo)簽:oracle

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門文章 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索 為UNIX服務(wù)器設(shè)置Oracle全文檢索

相關(guān)下載

    人氣排行 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 ORACLE SQL 判斷字符串是否為數(shù)字的語(yǔ)句 ORACLE和SQL語(yǔ)法區(qū)別歸納(1) oracle grant 授權(quán)語(yǔ)句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法