成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

DB2性能調優SAP應用程序中對SQL查詢性能的提高

數據庫
DB2性能調優之SAP應用程序中對SQL查詢性能的提高是文章主要的內容講述,以下就是文章的主要內容的詳細解析,望大家會對其有所收獲。

以下的文章主要向大家講述的是DB2性能調優之SAP應用程序中對SQL查詢性能的提高,如果你對DB2性能調優之SAP應用程序中對SQL查詢性能的提高有興趣的話,你就可以對以下的文章點擊觀看了。

 

SAP 提供了下面接口和數據庫通訊:

應用程序寫入 ABAP

SAP Open SQL

 

自然 SQL 通過 ADBC 接口(ABAP 數據庫連接)

 

自然 SQL,以 EXEC SQL 語句開始并以 ENDEXEC 語句結束

 

JDBC 用于 SAP Java 應用程序

 

SAP ABAP 應用程序主要使用 SAP Open SQL 來訪問數據庫。 SAP Open SQL 由一組執行數據庫操作的 ABAP 語句組成。被開發來為 SAP 支持的所有關系數據庫平臺提供一個通用接口。 SAP Open SQL 語句在 SAP 數據庫接口中被轉換為自然 SQL 。

 

SAP NetWeaver BI 使用 SAP BI 發布的 ADBC 。對于自然 SQL 接口 ADBC 是一個基于類的 API,它支持執行動態生成 SQL 語句。在 ABAP 環境中使用 ADBC 和在 Java 環境中使用 JDBC 類似。

用戶他們自己寫的 report 和事務可以使用任何一個可用接口來訪問數據庫。

在 SAP Open SQL 中使用 DB2 參數

SAP 支持一批 DB2 參數,它們可以添加到 Open SQL 語句中以影響從 Open SQL 生成的自然 SQL 語句如何在數據庫層編譯和運行。客戶可以在他們自己寫的 report 和事務中使用這些 DB2 參數來提高 SQL 查詢性能。

注意,對前面描述的 DB2 SAP 指定參數設置,他應該只需要在特殊情況下使用這些參數。只有發生數據庫DB2性能調優問題需要快速解決方案和替代解決方案時才使用它們。

對 Open SQL ,SAP 支持下列 DB2 參數

OPT_FOR_ROWS N:如果 N > 0,一個 OPTIMIZE FOR N ROWS 子句就被添加到 SQL 語句中。對 ABAP 語句它包含 UP TO N ROWS 子句,OPTIMIZE FOR N ROWS 是自動生成的。 OPT_FOR_ROWS 0 被用于防止自動生成 OPTIMIZE FOR N ROWS 。

USE_OPTLEVEL X:這個參數可以被用來指定語句處理的 DB2 查詢優化級別。默認情況下,SAP 使用優化級別 5,這為大多數情況提供了合理的語句編譯和執行時間。在某些情況下,一個較低或較高的優化級別可能生成一個對特定語句并具有更高DB2性能調優的訪問計劃。在這些情況下,參數可以被用作短期解決方案或替代方案。

 

&SUBSTITUTE LITERALS&:對于 SAP 內核版本 4.6,這個參數需要把 SAP 配置參數 dbs/db6/dbsl_substitute_literals 設置為 1 。這個參數使 ABAP 語句文本中的文字被作為 SQL 語句的文字實現(而不是作為參數標記)。如果這些文字被使用,優化器可以使用涉及這些列的表中的分布信息。注意,存在這種可能,沒有對這個表搜集分布統計信息。

 

&SUBSTITUTE VALUES&:對于 SAP 內核版本 4.6,這個參數需要把 SAP 配置參數 dbs/db6/dbsl_substitute_literals 設置為 1 。這個參數使在 ABAP 語句中的所有輸入值都被作為 SQL 語句文本的文字實現。就像 &SUBSTITUTE LITERALS&,DB2 優化器可以使用關于涉及表中的分布信息。然而,由于值的替換因為語句文本改變了,這個語句每次運行的時候都需要重新準備。

 

CONVERT_FAE_TO_CTE:對于內核版本早于 7.0 的 SAP,這個參數用來給控制有 FOR ALL ENTIRES 結構的 ABAP 語句生成 SQL 。

 

使用正確的 SAP 配置參數來控制為 FOR ALL ENTIRES Open SQL 查詢生成 SQL

 

FOR ALL ENTRIES (FAE) 語句是一個通用的 SAP ABAP 語句結構。這個參數允許 ABAP 程序員用一個 ABAP 內部表連接一個或幾個數據庫表。 FAE 語句總是返回一個唯一的結果集。 SAP 數據庫接口將刪除任何從數據庫返回的重復數據。

例如:

  1. SELECT … FROM <dbtable> FOR ALL ENTRIES IN <itab>   
  2. WHERE <col> = <itab>~<col>  

SAP 提供了下列配置參數來控制把多少語句被轉化為 SQL:

 

rsdb/prefer_in_itab_opt:如果這個參數被設置為 1 而且如果 FAE 語句只在 WHERE 子句中涉及一個內部表列,那么一個有 IN 列表的自然 SQL 語句就被生成出來:

 

 

  1. SELECT … FROM <dbtable> WHERE  
  2. <col> IN (<itab>[1]~<col>,  
  3. <itab>[2]~<col>, … , <itab>[N]~<col> ) 

rsdb/prefer_join:這個參數是在 SAP 內核版本 7.0 或以后可用。如果這個參數被設置為 1 并且如果 FAE 語句不包含任何多表之間的連接,那么 FAE 語句就被實現為一個連接: SELECT

  1. …  
  2. FROM <dbtable> t1,  
  3. ( SELECT * FROM ( VALUES(<itab>[2]~<col><itab>[2]~<col>, … ,  
  4. <itab>[N]~<col> ) )  
  5. AS t2_tmp ( <coL> ) GROUP BY <col> )  
  6. AS T2  
  7. WHERE t1.<col> = t2.<col> 

rsdb/prefer_union_all:如果這個參數被設置為 1,那么將為內部表中的每一個值都會生成一個 SQL 語句并且通過 UNION ALL 鏈接起來: SELECT … FROM <dbtable> WHERE <col> =

 

 

  1. <itab>[1]~<col> UNION ALL  
  2. SELECT … FROM <dbtable> WHERE <col> = <itab>[2]~<col> UNION ALL  
  3. …  
  4. SELECT … FROM <dbtable> WHERE <col> = <itab>[N]~<col> 

如果這個參數被設為 0,那么將生成由 OR 鏈接的條件:

 

 

  1. SELECT … FROM <dbtable> WHERE  
  2. <col> = <itab>[1]~<col> OR  
  3. <col> = <itab>[2]~<col> OR  
  4. …  
  5. <col> = <itab>[N]~<col> OR 

這個參數在 rsdb/prefer_join 參數被設置為 1 的情況下不被使用。

 

如果上面的轉換一個都沒有發生,FAE 語句將被轉換為帶 OR 的自然 SQL 語句。

下面附加的 SAP 配置參數通過一個自然 SQL 語句控制內部 ABAP 表中輸入的數目。

  1. rsdb/max_blocking_factor   
  2. rsdb/max_in_blocking_factor   
  3. rsdb/prefer_fix_blocking   
  4. rsdb/min_blocking_factor   
  5. rsdb/min_in_blocking_factor  

如果內部表包含更多輸入,一些自然 SQL 語句會被生成出來而且結果搜集在 SAP 數據庫接口中。更多細節,參見 SAP note 48230 。

 

SAP 用于控制 FAE 語句的執行的配置參數在整個 SAP 系統的很大范圍內對關鍵數據庫命令和DB2性能調優影響上都有非常大的效果。因此,只有在進行了詳細問題分析之后或是 SAP 技術支持推薦的情況下覆蓋這些配置參數的默認設置。

對 SAP 內核 7.0 之后的版本,rsdb/prefer_join=1 選項是不可用的。可用 IN 列表,UNION ALL 語句或在 WHERE 子句中有 OR 鏈接條件的語句來替換。 SAP 的參數 CONVERT_FAE_TO_CTE 可以被添加到 ABAP FAE 語句中來轉換成一個 DB2 通用表的表達式(CTE)。這提高了性能,因為 DB2 優化器可以產生更好的訪問計劃 – 因為內部表中的重復值已經在 CTE 中被刪除了。#p#

對 SAP BI 有問題的查詢進行 SQL 性能調優

在 YDB6BWEXT 報告中,兩個用戶可用于提供一個更快的其他選擇以提高長時間運行 SAP BI 有問題的查詢的性能。

對 reporting 查詢,SAP NetWeaver BI 使用 ADBC 和自然 SQL 語句。這個語句在 SAP NetWeaver BI Read Interface 中生成并運行,在 SQL 語句執行前后會有兩個出口。例如,一個 SAP BI 查詢的 DB2 優化級別或 SQL 查詢級別可以在出口指定。

對可用出口而言,客戶需要應用 YDB6BWEXT 報告的 queryoptbefore 與 queryoptafter 兩個表和在 SAP NetWeaver BI 7.0 以及更高版本上的 SAP note 1143736 以及對早期版本應用 SAP note 872397 。

要獲取如何實施在 YDB6BWEXT 中的出口指南請聯系 SAP 開發支持。

避免查詢條件中的復雜表達式

避免表達式中連接謂詞

 

避免本地謂詞中對列應用表達式

 

避免接列數據類型不匹配

 

避免不相等的連接謂詞

 

避免 DISTINCT 關鍵字的聚集

 

避免不必要的外連接

 

把 FETCH FIRST N ROWS ONLY 子句和 OPTIMIZE FOR N ROWS 子句一起使用

 

如果你在使用星型模式連接,確保你的插敘滿足標準要求

 

避免多余的查詢約束

 

使用約束以提高查詢優化

 

在復雜查詢中 REOPT 綁定選項與輸出變量同時使用

 

為你的工作負載選擇最佳的優化級別

 

設置 DB2_REDUCED_OPTIMIZATION 注冊變量

 

為 SAP 應用程序,設置 DB2_WORKLOAD 注冊變量

 

收集正確的編目統計信息,包括高級統計功能

 

最小化 RUNSTATS 的影響

 

避免手動更新編目統計信息

 

對 SAP 應用程序,使用自動統計信息收集

 

對值分布不均勻的 SAP BI 表使用統計視圖

 

使用 SAP BI 聚集

 

在 SAP Open SQL 中使用 DB2 參數

 

對 FOR ALL ENTRIES Open SQL 查詢使用正確的 SAP 配置參數來控制 SQL 生成

 

如果其他調優選項沒有得到可以接受的結果,就使用優化配置。

 

以上的相關內容就是對DB2性能調優之SAP應用程序中提高 SQL 查詢性能的介紹,望你能有所收獲。 

【編輯推薦】

  1. 對DB2數據移動方法的正確解析
  2. 對DB2 增量備份的正確運用描述
  3. DB2 并行版本中的查詢優化登峰造極!
  4. IBM DB2數據庫與注意事項_DB2編程的描述
  5. DB2終極SQL性能調節技術經典版
責任編輯:佚名 來源: zmool.com
相關推薦

2010-08-18 09:26:56

DB2性能調優

2009-01-08 19:14:37

服務器應用程序SQL Server

2010-08-17 17:23:42

DB2性能

2010-08-18 09:32:45

DB2優化性能

2010-08-06 12:38:17

DB2性能調優

2010-07-28 09:42:57

DB2性能

2010-08-09 15:59:42

2009-01-08 19:11:39

服務器應用程序SQL Server

2009-01-08 19:06:13

服務器應用程序SQL Server

2011-03-16 14:16:05

DB2查詢

2010-07-30 11:10:24

DB2性能調優

2009-04-16 15:38:18

DB2IMPORT性能

2009-04-10 08:56:16

DB2Insert性能

2010-07-28 14:07:51

DB2數據庫

2010-08-20 11:22:48

DB2性能調優

2010-02-04 11:55:27

ibmdwDB2

2011-05-27 16:00:10

DB2

2011-05-27 15:24:28

DB2

2010-05-28 14:11:57

ibmdw數據庫性能調優

2010-08-05 15:17:43

DB2提高IMPORT
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美一级片中文字幕 | 久久尤物免费一区二区三区 | 日本 欧美 三级 高清 视频 | 日韩一区二区在线观看 | 亚洲视频欧美视频 | 日韩在线欧美 | 精品一区二区三区四区外站 | 久热久热 | 欧美精品乱码99久久影院 | 中文在线a在线 | 91色视频在线观看 | 久久夜视频 | 午夜激情影院 | 国产99久久久国产精品下药 | 久久y| 国产99小视频 | 四虎永久免费地址 | 欧美日韩亚洲在线 | 91精品国产91久久综合桃花 | 久久夜色精品国产 | 高清视频一区二区三区 | 视频一区中文字幕 | 日韩成人在线免费视频 | 亚洲成人精 | 久久久久九九九九 | 久久国产精品视频 | 亚洲va欧美va天堂v国产综合 | 免费激情 | 中文字幕日韩欧美 | 欧美日韩在线综合 | 狠狠艹 | 操操日| 久久久男人的天堂 | 日本三级在线视频 | h视频在线免费 | 久久精品色视频 | 亚洲午夜视频在线观看 | 亚洲乱码一区二区三区在线观看 | 免费在线观看av片 | 免费在线观看成人av | 久国产视频 |