日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

运用工具优化数据库设计(Database Engine Tuning Advisor)

發布時間:2024/4/11 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 运用工具优化数据库设计(Database Engine Tuning Advisor) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Data Engine Tuning Advisor 是SqlServer自帶的數據庫性能調優工具之一,我們一起來學習一下怎么用這個工具優化數據庫設計

Database Engine Tuning Advisor Tuning?的功能

  • Recommend the best mix of indexes for databases by using the query optimizer to analyze queries in a workload.
    [翻譯]通過查詢優化器分析實際工作負載下的查詢,推薦最好的索引組合
  • Recommend aligned or non-aligned partitions for databases referenced in a workload.
    [翻譯]為工作狀態下用到的數據庫推薦對齊(aligned)和非對齊(non-aligned)分區
  • Recommend indexed views for databases referenced in a workload.
    [翻譯]為工作狀態下用到的數據庫推薦帶索引的試圖
  • Analyze the effects of the proposed changes, including index usage, query distribution among tables, and query performance in the workload.
    [翻譯]分析工作狀態下,對某種變更的效果進行評估,包括索引用法,表間查詢分布,查詢效果
  • Recommend ways to tune the database for a small set of problem queries.
    [翻譯]對一些有問題的查詢進行調優推薦
  • Allow you to customize the recommendation by specifying advanced options such as disk space constraints.
    [翻譯]可以通過高級設置,比如磁盤空間大小限制來影響其作出的推薦方案
  • Provide reports that summarize the effects of implementing the recommendations for a given workload.
    [翻譯]提供工作狀態中其推薦方案的具體實現的效果報告
  • Consider alternatives in which you supply possible design choices in the form of hypothetical configurations for Database Engine Tuning Advisor to evaluate.
    [翻譯]分析替代方案,你可以提供不同假設的配置下的設計方案供Database Engine Tuning Advisor分析

?

索引優化

我們結合示例來看看怎么用調優工具優化索引:

準備工作

我們使用一個缺少索引測試表,來看看在簡單的查詢條件下,工具能給出什么推薦方案

在我的數據庫中有Orders表,其字段如下圖,其中大約有50w行數據,在這里我故意沒有給Info字段建立索引


創建一個sql語句,模擬實際情況的查詢,在這個例子里我們使用一個簡單的查詢語句

Use [ZhuYiTestDataBase2]--注意一定要記住加上Use的數據庫
select * from Orders where Info<>'abc'--我們用了一個沒有索引的字段作為查詢條件,性能一定不高,看看DETA會有什么高見

并保存為一個.sql文件(在實際運用中,一般一個查詢可能要復雜的多)

開始優化

1)運行Database Engine Tuning Advisor,并創建一個Session

2)配置session

在新建的session的配置選項卡中點擊General選項卡(如圖),進行一些常用配置,有如下項需要配置

  • Session Name:可以為Session起一個名字,默認為用戶加創建時間
  • Workload:工作負載,可以從一個文件,可以從表,我們這個例子里就是我們剛才創建的sql文件,DETA會分析這個語句的執行情況,給出優化建議
  • ?Select database and table to tune:選擇需要優化的數據庫和表,在本例中就是我們剛才看到Orders表
  • Save tuning log:是否保存優化日志

點擊TuningOption選項卡,進行一些高級選項的配置(如圖)

  • 首 先我們要選擇需要對哪些配置進行優化,在"Physical Design Structures To Use In DataBase"的復選框組中中我們可以需要優化指定索引,索引視圖,聚焦索引,或者非聚焦索引,我在本例里面選擇Index,這個選項包括聚焦和非聚 焦索引.
  • 接著還有分區(partion)的選擇,這個復選框組在實際運用中非常有用,通過查詢,可以分析出哪些數據訪問頻率高,哪些低,從而給出分區的方案,在本例里面我們簡單的選擇no partition

3)運行分析

點擊Action菜單下的Start Analysis,或者運行快捷方式欄的Start Analysis(如圖)

4)查看分析結果

等待一段時間后,程序給出了分析結果

從中可以看到聰明的DETA發現了查詢中作為條件的Info字段沒有索引,建議我們創建一個索引,點擊可以看到他的創建腳本(如圖)

總結

Database Engine Tuning Advisor的功能遠不只這些,我會在接下來的文章里陸續講一些其他的用法,這里給出一些資源連接,大家可以自己學習

techNet上的參考

http://technet.microsoft.com/en-us/library/ms166805(SQL.90).aspx

繁體中文版本的

http://technet.microsoft.com/zh-tw/library/ms173448(SQL.90).aspx


轉載于:https://www.cnblogs.com/yizhu2000/archive/2007/08/06/844394.html

總結

以上是生活随笔為你收集整理的运用工具优化数据库设计(Database Engine Tuning Advisor)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。