【正文】
experts go for performance 使用 Abstract Plan /* 創(chuàng)建 abstract plan組 demo1 */ sp_add_qpgroup demo1 Go /* 保存 abstract plan到組 demo1 */ set plan dump demo1 on Go /* 執(zhí)行 SQL */ Select * from A, B /* 從組 demo1加載計劃 (Plan) */ set plan load demo1 on Go Execution Plan /* 下一次你重新執(zhí)行同一條 SQL語句 */ QUERY PLAN FOR STATEMENT 1 (at line 1). Optimized using an Abstract Plan (ID : 1989579095). Where the experts go for performance 保存 SQL的計劃 (Plan) /* 在組 demo1 下創(chuàng)建 abstract plan */ /* 以使用字段 */ CREATE PLAN “SELECT * FROM A WHERE = 1 AND = 2” “( i_scan Index_key2 A ) ( prop A ( parallel 1 ) ( prefetch 2 ) ( lru ) )” into demo1 Where the experts go for performance 使用 Abstract Plan的好處 ? 即使沒有源代碼的情況下也可以對 SQL語句進(jìn)行優(yōu)化 ? 執(zhí)行計劃將不會受以下情況影響: o 數(shù)據(jù)庫升級引起的數(shù)據(jù)庫內(nèi)部優(yōu)化器的改變 o 新的 ASE特性 o 調(diào)整選項的改變,如:并行深度 (parallel degree), 表分區(qū) (table partitioning)和索引 (indexing) Where the experts go for performance 示范 Abstract Plan 使用 Abstract Plan優(yōu)化 SQL Where the experts go for performance 使用 Abstract Plan優(yōu)化 SQL語句 SQL Expert Where the experts go for performance SQL 掃瞄器 …………………………………………………………………………………………………………………………….. …… SQL1 ………… SQL2 …….……….. SQL3 …..…… SQL4 ………………………….... SQL5 ...……………... ……………… SQL6 …………….. SQL7 ………………………………. SQL8.……………………………………… ….. SQL9 ……………………………………………… SQL10 ……………………………………………………….. ……………………………. SQL11 …………………………………….. SQL12 …………… SQL13 ……………….. …………… SQL14 ………………………… SQL15 ………………………………………………………………….. ………………………. SQL16 ……………………………… SQL17 ……………… SQL18 ……….………………… ……………………………………………………………………………………………………………………………… ……………………………………………………………………………………………………………………………... ……………………. SQL1 ………………………………….………. SQL2 ………………………………………...….. …………………………………….…… SQL3 …………….. SQL4 ……………………. SQL5 ...……………….…… …………….….. SQL6 …………………………… SQL7 ………………….…..…...………………………………….. ………………….…………….…. SQL8 ……………………….… SQL9…………… SQL10 ………………….…….. …..… SQL11 ………… SQL12 ………………………… SQL13 ………………………………..… SQL14 …...…….. .………………. SQL15 …………………… SQL16 …………………………………………..………………………… …………. …………………………………………………………………………………………………………………. 程序 A 程序 B S 3 S 1 S 17 SQL1 SQL2 S 5 S 7 S 13 14 Where the experts go for performance 定位有問題的 SQL語句 數(shù)據(jù)庫對象或監(jiān)視結(jié)果 程序源代碼 反饋式搜索引擎 優(yōu)化的 SQL 1 優(yōu)化的 SQL 2 優(yōu)化的 SQL 3 優(yōu)化的 SQL 4 優(yōu)化的 SQL 5 優(yōu)化的 SQL 6 有問題的 SQL語句 SQL 語法優(yōu)化器 SQL 掃瞄器 Where the experts go for performance 演示 3 SQL 掃瞄器 定位有問題的 SQL語句 Where the experts go for performance 高生產(chǎn)力 高質(zhì)量 高質(zhì)量 VS 高生產(chǎn)力 Where the experts go for performance 謝 謝 杜偉業(yè) ( Richard To) 技術(shù)總監(jiān) 靈高科研有限公司