下面給出了限制優(yōu)化時間和事件數(shù)的建議:
-
對于單個查詢和小型工作負(fù)荷(少于 100 個事件),請指定無限制的優(yōu)化時間。如果指定不限制優(yōu)化時間,數(shù)據(jù)庫引擎優(yōu)化顧問將給出最佳建議,并且在大多數(shù)情況下,優(yōu)化會在相對較短的時間內(nèi)完成。
-
對于大型工作負(fù)荷(多于 100 個事件),請考慮以下方案,其優(yōu)先級以其列出順序為準(zhǔn)。首先考慮方案 1 到方案 3,最后考慮方案 (4)。
-
如果用戶在時間上有約束,請限制優(yōu)化時間。
-
如果優(yōu)化固定數(shù)量的事件就足夠了(例如,前 10,000 個事件可以代表其余工作負(fù)荷),請使用
dta
命令行實用工具,并通過
–n
參數(shù)指定事件數(shù)。
-
如果使用的是
dta
命令行實用工具,并希望進一步限制優(yōu)化時間,則可以使用
–A
和
–n
參數(shù)。例如,如果指定
-A 240
和
–n 1000
,則數(shù)據(jù)庫引擎優(yōu)化顧問會在優(yōu)化了 1000 個事件或進行了 4 個小時的優(yōu)化(以先發(fā)生的為準(zhǔn))后立即停止優(yōu)化。
-
優(yōu)化所花的時間取決于查詢的復(fù)雜性(引用表的數(shù)量)、選擇的功能集(優(yōu)化索引視圖所花的時間比優(yōu)化索引要多)以及數(shù)據(jù)(用于創(chuàng)建統(tǒng)計信息)大小。大多數(shù)情況下,數(shù)據(jù)庫引擎優(yōu)化顧問花在優(yōu)化上的大部分時間都用在調(diào)用查詢優(yōu)化器上。以下是確定合適的數(shù)據(jù)庫引擎優(yōu)化顧問優(yōu)化時間的一個簡單經(jīng)驗法則:
對于引用一到三個表的簡單查詢,如果只優(yōu)化索引,則允許每個查詢用時大約 1 秒,如果優(yōu)化索引和索引視圖,則允許每個查詢用時大約 10 秒。對于引用三個以上表的復(fù)雜查詢,如果只優(yōu)化索引,則允許每個查詢用時大約 10 秒,如果優(yōu)化索引和索引視圖,則允許每個查詢用時大約 100 秒。
-
如果用戶在時間上有約束,請限制優(yōu)化時間。
-
如果數(shù)據(jù)庫引擎優(yōu)化顧問指示已處理 100% 的工作負(fù)荷,則表示已分析完全部工作負(fù)荷,但不一定進行了優(yōu)化。若要確定是否優(yōu)化整個工作負(fù)荷,請在優(yōu)化日志的結(jié)尾搜索下列消息:
“工作負(fù)荷中的所有事件均未優(yōu)化。請考慮增大時間限制或者指定在輸入 XML 中要考慮的事件數(shù)。”
如果優(yōu)化日志中存在這樣一條消息,則表明數(shù)據(jù)庫引擎優(yōu)化顧問無法優(yōu)化全部工作負(fù)荷。若要解決這種問題,請指定更長的優(yōu)化時間。若要確保優(yōu)化工作負(fù)荷中的所有事件,可以指定無限制的優(yōu)化時間。如果選擇不指定不限優(yōu)化時間,數(shù)據(jù)庫引擎優(yōu)化顧問將設(shè)法在指定的優(yōu)化時間內(nèi)優(yōu)化盡可能多的事件。
注意 ???Microsoft SQL Server 2000 索引優(yōu)化向?qū)е械摹翱臁薄ⅰ爸小被颉皬氐住蹦J脚c數(shù)據(jù)庫引擎優(yōu)化顧問中的 -A 和 -n 參數(shù)之間沒有直接的映射關(guān)系。通常,如果在 SQL Server 2000 中以特定模式(“快”、“中”或“徹底”)進行優(yōu)化需要一定的時間,則在 SQL Server 2005 數(shù)據(jù)庫引擎優(yōu)化顧問中,花同樣的時間通常能給出與之相當(dāng)或更好的建議。建議使用“徹底”模式的用戶使用數(shù)據(jù)庫引擎優(yōu)化顧問,并指定不限制優(yōu)化時間和工作負(fù)荷中要優(yōu)化的事件數(shù)。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
