成人免费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:06:13

服務器應用程序SQL Server

2009-01-08 19:11:39

服務器應用程序SQL Server

2011-03-16 14:16:05

DB2查詢

2009-04-16 15:38:18

DB2IMPORT性能

2009-04-10 08:56:16

DB2Insert性能

2010-07-30 11:10:24

DB2性能調優

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-08-02 17:42:40

DB2性能調優

2010-08-20 14:15:08

DB2性能調優
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲 自拍 另类 欧美 丝袜 | 亚洲精品一区二区三区四区高清 | 一区欧美 | 久久久毛片 | 欧美精三区欧美精三区 | 国产国拍亚洲精品av | 99精品一区二区三区 | 超碰综合 | 国产精品久久影院 | 亚洲欧美在线免费观看 | 成人毛片视频免费 | 中文字幕亚洲无线 | 夜夜精品浪潮av一区二区三区 | 欧美啪啪 | 三级黄片毛片 | 久久久婷 | 男女视频在线观看 | 亚洲一区二区国产 | 日韩欧美视频 | 精品国产欧美一区二区三区成人 | 一区二区三区四区日韩 | 精品国产18久久久久久二百 | 日韩午夜场 | 欧美精品网 | www.日日操 | 特级丰满少妇一级aaaa爱毛片 | 在线播放国产一区二区三区 | 在线视频一区二区三区 | 暖暖日本在线视频 | 99精品国产一区二区青青牛奶 | 日日噜噜噜夜夜爽爽狠狠视频, | 国产精品一区一区三区 | 一区二区三区小视频 | 成人精品在线观看 | 国产精品久久久久久亚洲调教 | 亚洲国产精品人人爽夜夜爽 | 欧美日韩亚洲一区 | 免费电影av| 一区精品在线观看 | 亚洲精品久久久久久下一站 | 青青草原综合久久大伊人精品 |