索引設計是資料庫設計中比較重要的一個環節,對資料庫的性能其中至關重要的作用,但是索引的設計卻又不是那麼容易的事情,性能也不是那麼輕易就擷取到的,很多的技術人員因為不恰當的建立索引,最後使得其效果适得其反,可以說“成也索引,敗也索引”。
一直以來,我們總是在尋求好的性能優化軟體,我們一直以來也是在用腳本加上複雜的操作來分析問題。和大家一樣,我們也經過很多的類似的困境,後來我們就開發了索引診斷與優化軟體。
完全的自主研發,已經在企業中使用。
先上圖,給大家看看,我之後整理說明文檔,然後釋出軟體的免費版本給大家!
軟體啟動,登陸資料庫如圖:
2012-11-28 13:00 上傳
登陸之後,主界面如下:
2012-11-28 13:02 上傳
在這裡可以看到,軟體包含了三個部分功能:
對于常見的索引問題的快速診斷:Common Issue
基于基準線分析的進階診斷:Advance.
輔助的分析:Assistant
例如,我們要分析某個資料庫上面是否存在缺失索引的問題,我們隻要選中資料庫,然後點選上面的“Missing Index”按鈕就行了,如下,結果:
2012-11-28 13:05 上傳
軟體會分析每個缺失索引帶來的成本,或者說,給出:如果建立了索引,帶來的性能的提升指數。
不僅如此,還可以選中分析中的一行,然後點選上面的索引操作,如建立索引,軟體會預設的分析索引,并且會自動生成腳本,而且索引中的列也是根據資料的選擇率進行了排序的,更為強大的是,我們還可以自己在軟體建議的語句上面,修改,使得建立索引更為合理:
2012-11-28 13:09 上傳
自定義寫語句也是相當的省心,因為軟體給出了寫TSQL語句必要的參考文檔,代碼結構,自動的代碼高亮顯示,而且還可驗證腳本的正确性:如圖:
我們可以自己決定是否需要自定義腳本,還是采用軟體自動生成的,然後添加自己的索引,我們可以選擇很多個一起執行,如圖:
2012-11-28 13:16 上傳
執行之後,如圖:
當然,上面隻是簡單的示範了一下軟體的功能而已,之後,大家可以下載下傳下來把玩一下!
我們下面就說說進階功能
進階功能就需要建立基準線,然後利用軟體進行分析,過程也不複雜,軟體已經内置了很多的分析算法,大家隻要掌握索引的必須的知識,然後學會如何看軟體裡面的圖示和資料就行了
2012-11-28 13:21 上傳
如圖,如果我們沒有建立基準線資料庫,那麼進階功能都是無法使用的。
我們可以運作向導,一步步的建立基準資料庫以及相關的其他對象,如圖:
2012-11-28 13:23 上傳
第一步,建立資料庫,如圖:
2012-11-28 13:24 上傳
第二步,建立相關的資料表,如圖:
第三步,建立相關的Job去收集資料,如圖:
2012-11-28 13:25 上傳
之後,進階功能就可以使用了,但是此時,基準資料庫中可能的資料還不夠多,分析的準确度不太高,随着收集到的資料的變多,準确度會提高!
收集到了資料之後,就需要配置一些基準線,其實就是利用收集到的資料,看看那些參數應該在什麼值,如果低于或者高于會是什麼情況,這和我們體檢的時候,化驗單上面的一些參數名額很類似。
如圖配置(我們會給出參數名額的):
例如,我們資料庫中的索引查找的情況,如圖:
另外,我們還有總體分析一覽圖
2012-11-28 14:05 上傳
就到這裡,更多的功能,大家自己下載下傳之後體會!
<a href="http://agilesharp.com/showtopic-356.aspx">【自主研發】索引診斷與優化軟體使用說明(2)-軟體下載下傳,安裝</a>
<a href="http://agilesharp.com/showtopic-358.aspx">【自主研發】索引診斷與優化軟體使用說明(3)-軟體的功能子產品介紹</a>
本文轉自yanyangtian51CTO部落格,原文連結: http://blog.51cto.com/yanyangtian/1075112,如需轉載請自行聯系原作者