熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

ORACLE數據庫的並行執行

2013-11-13 22:14:33  來源: Oracle 

  session_max_open_files:

  說明: 指定可在任一給定會話中打開的 BFILE 的最大數量一旦達到這個數量 此後將無法在該會話中打開更多文件該參數還取決於操作系統參數 MAX_OPEN_FILES

  值范圍: 至少為 ( OS 級上的 MAX_OPEN_FILES)

  默認值:

  parallel_execution_message_size:

  說明: 指定並行執行 (並行查詢 PDML 並行恢復和復制) 消息的大小如果值大於 就需要更大的共享池如果 PARALLEL_AUTOMATIC_TUNING = TRUE 將在大存儲池之外指定消息緩沖區

  值范圍: 無窮大

  默認值: 如果 PARALLEL_AUTOMATIC_TUNING 為 FALSE 通常值為 ; 如果 PARALLEL_AUTOMATIC_TUNING 為 TRUE 則值為 (根據操作系統而定)

  Paralle_min_percent:

  說明: 指定並行執行要求的線程的最小百分比設置該參數 可以確保並行執行在沒有可用的恰當查詢從屬進程時 會顯示一個錯誤消息 並且該查詢會因此而不予執行

  值范圍:

  默認值: 表示不使用該參數

  Parallel_automatic_tuning:

  說明: 如果設置為 TRUE Oracle 將為控制並行執行的參數確定默認值除了設置該參數外 你還必須為系統中的表設置並行性

  值范圍: TRUE | FALSE

  默認值: FALSE

  parallel_threads_per_cpu:

  說明: 說明一個 CPU 在並行執行過程中可處理的進程或線程的數量 並優化並行自適應算法和負載均衡算法如果計算機在執行一個典型查詢時有超負荷的跡象 應減小該數值

  值范圍: 任何非零值

  默認值: 根據操作系統而定 (通常為 )

  parallel_broadcast_enabled:

  說明 : 通過使用一個散列聯接或合並聯接 可以在將多個大結果集聯接到一個小結果集 (以字節而不是行為單位來衡量大小) 時改善性能如果該值設置為 TRUE 優化程序可以將小結果集內的每個行都傳播到大型集內的每個集群數據庫處理行中

  值范圍: TRUE | FALSE

  默認值 : FALSE

  parallel_adaptive_multi_user:

  說明: 啟用或禁用一個自適應算法 旨在提高使用並行執行方式的多用戶環境的性能通過按系統負荷自動降低請求的並行度 在啟動查詢時實現此功能當 PARALLEL_AUTOMATIC_TUNING = TRUE 時 其效果最佳

  值范圍: TRUE | FALSE

  默認值: 如果 PARALLEL_AUTOMATIC_TUNING = TRUE 則該值為 TRUE; 否則為 FALSE

  parallel_max_servers:

  說明: 指定一個例程的並行執行服務器或並行恢復進程的最大數量如果需要 例程啟動時分配的查詢服務器的數量將增加到該數量

  值范圍:

  默認值: 由 CPU_COUNT PARALLEL_AUTOMATIC_TUNING 和 PARALLEL_ADAPTIVE_MULTI_USER 確定

  parallel_min_servers

  說明: 指定為並行執行啟動例程後 Oracle 創建的查詢服務器進程的最小數量

  值范圍: PARALLEL_MAX_SERVERS

  默認值:

  log_archive_dest_state_:

  說明: 指定相應的歸檔日志目標參數 (僅 LOG_ARCHIVE_DEST_) 的可用性狀態如果啟用 日志目標將被歸檔如果延遲 該目標將被排除在歸檔操作之外直至重新啟用

  值范圍: ENABLE | DEFER

  默認值: ENABLE

  log_archive_dest_state_:

  說明: 指定相應的歸檔日志目標參數 (僅 LOG_ARCHIVE_DEST_) 的可用性狀態如果啟用 日志目標將被歸檔如果延遲 該目標將被排除在歸檔操作之外直至重新啟用

  值范圍: ENABLE | DEFER

  默認值: ENABLE

  log_archive_dest_state_:

  說明: 指定相應的歸檔日志目標參數 (僅 LOG_ARCHIVE_DEST_) 的可用性狀態如果啟用 日志目標將被歸檔如果延遲 該目標將被排除在歸檔操作之外直至重新啟用

  值范圍: ENABLE | DEFER

  默認值: ENABLE

  log_archive_dest_state_:

  說明: 標識特定日志歸檔目標的最近的用戶定義狀態

  值范圍: ENABLE如果目標屬性有效 則啟用歸檔日志目標; DEFER即使目標屬性有效 也要延遲處理歸檔日志目標; 或者是 ALTERNATE延遲處理歸檔日志目標 直到另一個目標的失敗導致自動啟用了此目標 (前提是備用目標的屬性必須有效)

  log_archive_dest_state_:

  說明: 標識特定日志歸檔目標的最近的用戶定義狀態

  值范圍: ENABLE如果目標屬性有效 則啟用歸檔日志目標; DEFER即使目標屬性有效 也要延遲處理歸檔日志目標; 或者是 ALTERNATE延遲處理歸檔日志目標 直到另一個目標的失敗導致自動啟用了此目標 (前提是備用目標的屬性必須有效)

  log_archive_dest_state_:

  說明: 標識特定日志歸檔目標的最近的用戶定義狀態

  值范圍: ENABLE如果目標屬性有效 則啟用歸檔日志目標; DEFER即使目標屬性有效 也要延遲處理歸檔日志目標; 或者是 ALTERNATE延遲處理歸檔日志目標 直到另一個目標的失敗導致自動啟用了此目標 (前提是備用目標的屬性必須有效)

  並行查詢設置

  alter table emp parallel (degree );

  select degree from user_tables where table_name = EMP;

  select count(*) from emp;

  alter table emp noparallel;

  SELECT /*+ PARALLEL(emp) */ COUNT(*)

  FROM emp;

  深度了解

  一並行執行可以提高以下操作的執行速度

  大表掃描

  創建大的索引

  基於分區的索引掃描

  大量的插入修改刪除操作

  拷貝操作

  二並行執行的條件

  SMPCLUSTERSMPP系統

  足夠的I/O帶寬

  足夠的內存來支持消耗內存的進程(排序哈西算法I/O緩沖)

  三何時使用並行執行

  在DSS系統中並行執行能夠發揮最好的效果OLTP系統也能從並行執行中受益在批處理的情況下效果更為明顯

  銀行電信行業的月終年終結算

  基於許多大表的即時查詢

  數據庫的備份恢復

  四與並行執行有關的參數

  PARALLEL_AUTOMATIC_TUNING自動並行執行調整缺省值為FALSE

  當該參數置為TRUE時ORACLE 服務器自動調整控制並行執行它將自動調節影響以下參數PARALLEL_ADAPTIVE_MULTI_USERPROCESSESSESSIONSPARALLEL_MAX_SERVERS

  LARGE_POOL_SIZEPARALLEL_EXECUTION_MESSAGE_SIZE

  PARALLEL_THREADS_PER_CPU

  PARALLEL_MAX_SERVERS

  SHARED_POOL_SIZE

  TRANSACTIONS

  PARALLEL_ADAPTIVE_MULTI_USER

  PROCESSES

  SESSIONS

  TRANSACTIONS

  LARGE_POOL_SIZE

  五並行執行調整事例

   小型數據系統

  系統硬件配置

  CPUS =

  Main Memory = MB

  Disk = GB

  Users =

  DBA 做如下設置:

  PARALLEL_AUTOMATIC_TUNING = TRUE

  SHARED_POOL_SIZE = MB

  TRANSACTIONS =系統缺省值

  Oracle自動調整以下參數的值

  PARALLEL_MAX_SERVERS =

  PARALLEL_ADAPTIVE_MULTI_USER = TRUE

  PARALLEL_THREADS_PER_CPU =

  PROCESSES =

  SESSIONS =

  TRANSACTIONS =

  LARGE_POOL_SIZE = MB

  Parameter Settings for DOP and the Adaptive MultiUser Feature

  The DBA parallelizes every table having more than rows using a command

  similar to the following:

  ALTER TABLE employee PARALLEL;

  In this example because PARALLEL_THREADS_PER_CPU is and the number of

  CPUs is the DOP is Because PARALLEL_ADAPTIVE_MULTI_USER is set to

  TRUE Oracle may reduce this DOP in response to the system load that exists at the

  time of the querys initiation

   中型數據系統

  系統硬件配置

  CPUS =

  Main Memory = GB

  Disk = GB

  Users =

  The DBA makes the following settings:

  n PARALLEL_AUTOMATIC_TUNING = TRUE

  n PARALLEL_ADAPTIVE_MULTI_USER = FALSE

  n PARALLEL_THREADS_PER_CPU =

  n SHARED_POOL_SIZE = MB

  The DBA also sets other parameters unrelated to parallelism As a result Oracle

  responds by automatically adjusting the following parameter settings:

  n PROCESSES =

  n SESSIONS =

  n TRANSACTIONS =

  n PARALLEL_MAX_SERVERS =

  n LARGE_POOL_SIZE = MB

  Parameter Settings for DOP and the Adaptive MultiUser Feature

  The DBA parallelizes some tables in the data warehouse while creating other views

  for special users:

  ALTER TABLE sales PARALLEL;

  CREATE VIEW invoice_parallel AS SELECT /*+ PARALLEL(P) */ * FROM invoices P;

  The DBA allows the system to use the PARALLEL_THREADS_PER_CPU setting of

   with CPUs The DOP for the tables is This means a simple query uses

  processes while more complex queries use

   大型數據中心

  系統硬件配置

   Nodes CPU per node

  Uses MPP Architecture (Massively Parallel Processing)

  Main Memory = MB per node

  Disk = GB

  Users =

  The DBA uses manual parallel tuning by setting the following:

  n PARALLEL_AUTOMATIC_TUNING = FALSE

  n PARALLEL_THREADS_PER_CPU =

  n PARALLEL_MAX_SERVERS =

  n SHARED_POOL_SIZE = MB

  n PARALLEL_SERVER_INSTANCES =

  n PARALLEL_SERVER = TRUE

  n PROCESSES =

  n SESSIONS =

  n TRANSACTIONS =

  The DBA also sets other parameters unrelated to parallel execution Because

  PARALLEL_AUTOMATIC_TUNING is set to FALSE Oracle allocates parallel

  execution buffers from the SHARED_POOL

  Parameter Settings for DOP and the Adaptive MultiUser Feature

  The DBA parallelizes tables in the data warehouse by explicitly setting the DOP

  using syntax similar to the following:

  ALTER TABLE department PARALLEL ;

  ALTER TABLE department PARALLEL ;

  CREATE VIEW current_sales AS SELECT /*+ PARALLEL(P ) */ * FROM sales P;

  In this example Oracle does not make calculations for parallel execution because

  the DBA has manually set all parallel execution parameters

   超大規模數據中心

  系統硬件配置

  CPUS =

  Main Memory GB

  Disk = TB

  Users =

  The DBA makes the following settings:

  n PARALLEL_AUTOMATIC_TUNING = TRUE

  n PARALLEL_MAX_SERVERS =

  n PARALLEL_MIN_SERVER =

  n LARGE_POOL_SIZE = MB

  n SHARED_POOL_SIZE = MB

  n PROCESSES =

  n SESSIONS =

  n TRANSACTIONS =

  Parameter Settings for DOP and the Adaptive MultiUser Feature

  The DBA has carefully evaluated which users and tables require parallelism and

  has set the values according to their requirements The DBA has taken all steps

  mentioned in the earlier examples but in addition the DBA also uses the following

  command during peak user hours to enable the adaptive DOP algorithms:

  ALTER SYSTEM SET PARALLEL_ADAPTIVE_MULTI_USER = TRUE;

  During off hours when batch processing is about to begin the DBA disables

  adaptive processing by issuing the command:

  ALTER SYSTEM SET PARALLEL_ADAPTIVE_MULTI_USER = FALSE;


From:http://tw.wingwit.com/Article/program/Oracle/201311/18583.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.