免费体验区试看120秒 I 91桃色黄色 I 久久久久久综合 I 刺激性视频黄页 I www在线免费观看 I 欧美日韩在线一 I 欧美三级免费看 I 久久人人爽人人爽人人片av I 四虎永久地址www成人久久 I 国产女优一区 I 天天躁日日摸久久久精品 I 中文综合在线观看 I 亚洲xxxx2d动漫1 I jizz中国在线观看 I 欧美精品18videos性欧 I 亚洲三级精品 I 免费色网 I free hd xxxx videos动漫 I 欧美一级在线亚洲天堂 I 免费毛片a在线观看67194 I 国精品午夜福利视频不卡757 I 国产a级黄 I 91精品国产麻豆国产在线观看 I 久久精品入口九色 I 狠狠色图 I 午夜影视体验区 I 加勒比毛片 I 亚洲精片 I 被爱豆们翻来覆去的c的视频 I 性高朝久久久久久久齐齐 I 日本黄色a级片 I 777精品视频 I 成人 在线 亚洲 I 亚洲精品永久免费网站 I 丁香九月综合 I 伊人国 I 玖草在线观看 I 色戒完整未删版在线看 I 爽爽爽在线观看 I 色多多视频在线观看 I 一区二区日本 I 九九九热精品免费视频观看 I 亚洲综合色播 I 天堂av中文字幕 I 久播播av I 国产亚洲精品久久yy5099 I 岛国精品在线播放 I 亚洲最新在线视频 I 国产午夜网 I 91中文字幕网 I 好紧好爽视频 I 性欧美teec I 国产精品久久一卡二卡 I 黄色av男人的天堂 I 国产成人av片无码免费 I 免费情侣作爱视频 I 欧美va日韩

SQL服務器查詢調優的三大步驟

SQL服務器查詢調優的三大步驟

查詢調優通常是加速SQL服務器性能的最快方法。大多數情況下,系統級服務器性能(內存、處理器等)改進措施既無效又昂貴。專家開發人員認為,大多數性能問題都可以追溯到編寫不當的查詢和低效的索引,而不是硬件限制。事實上,有些性能問題只能通過查詢調優來解決。

SQL服務器查詢調優的三大步驟-美聯科技

但是當涉及到SQL服務器性能查詢調優時,DBA 經常會遇到從哪里開始的問題。您如何評估查詢?您如何發現查詢編寫方式中的缺陷?您如何發現隱藏的改進機會?查詢優化一半是科學,一半是藝術,因為沒有正確或錯誤的答案,只有最適合給定情況的解決方案。

這里有 12 個快速提示,可以幫助 DBA 以可衡量的方式提高查詢性能,同時確保特定更改確實提高了查詢速度。

1. 基本查詢分析

DBA 需要了解所有層和有關昂貴查詢的信息,以便隔離根本原因。有效的調優需要了解排名靠前的 SQL 語句、排名靠前的等待類型、SQL 計劃、阻塞的查詢、資源爭用以及缺少索引的影響。從基礎開始——在你投入之前準確地了解你正在處理的是什么會有所幫助。

提示 1:了解您的表和行數

首先,確保您實際操作的是表,而不是視圖或表值函數。表值函數有其自身的性能影響。您可以使用 SSMS 將鼠標懸停在查詢元素上以檢查這些詳細信息。通過查詢 DMV 檢查行數。

SQL服務器查詢調優的三大步驟-美聯科技

技巧 2:檢查查詢過濾器、WHERE 和 JOIN 子句并注意過濾的行數

如果沒有過濾器,并且返回了大部分表,請考慮是否需要所有數據。如果根本沒有過濾器,這可能是一個危險信號,需要進一步調查。這確實會減慢查詢速度。

技巧 3:了解表格的選擇性

根據前兩個技巧中的表格和過濾器,了解您將使用多少行,或實際邏輯集的大小。我們建議使用 SQL 圖表作為評估查詢和查詢選擇性的強大工具。

技巧 4:分析額外的查詢列

仔細檢查 SELECT * 或標量函數以確定是否涉及額外的列。您帶回的列越多,使用某些索引操作的執行計劃可能變得越不理想,而這反過來又會降低性能。

2.高級查詢分析

提示 5:了解和使用約束會有所幫助

了解和使用約束會在您開始調優時有所幫助。查看現有的鍵、約束、索引,以確保避免重復工作或與已存在的索引重疊。要獲取有關索引的信息,請運行 sp_helpindex 存儲過程:

技巧 6:檢查實際執行計劃(而非估計計劃)

估計計劃使用估計統計信息來確定估計行;實際計劃在運行時使用實際統計信息。如果實際計劃和估計計劃不同,您可能需要進一步調查。

技巧 7:記錄您的結果,重點關注邏輯 I/O 的數量

如果您不記錄結果,您將無法確定更改的真正影響。

提示 8:根據您的發現調整查詢并一次進行小的、單一的更改一次

進行過多的更改可能是無效的,因為它們會相互抵消!首先尋找最昂貴的操作。沒有正確或錯誤的答案,只有最適合給定情況的答案。

技巧 9:重新運行查詢并記錄所做更改的結果

如果您發現邏輯 I/O 有所改進,但改進還不夠,請返回技巧 8 檢查可能需要調整的其他因素。繼續一次進行一項更改,重新運行查詢并比較結果,直到您對已解決所有可能的昂貴操作感到滿意為止。

技巧 10:如果您還需要更多改進,請考慮調整索引以減少邏輯 I/O

添加或調整索引并不總是最好的做法,但如果您不能更改代碼,這可能是唯一的選擇你可以做。您可以考慮對現有索引、覆蓋索引和過濾索引進行改進。

技巧 11:重新運行查詢并記錄結果

如果您進行了調整,請重新運行查詢并再次記錄這些結果。

提示 12:設計出愚蠢的

Lookout 以防止經常遇到的性能抑制因素,例如:代碼優先生成器、濫用通配符、標量函數、嵌套視圖、游標和逐行處理。

3. 使用數據庫性能監控工具來促進查詢調優。

傳統的數據庫監控工具專注于健康指標。當前的應用程序性能管理工具提供提示,但不能幫助找到根本原因。

提示:通過使用連續的數據庫性能監控解決方案,您可以大大簡化查詢調優。數據庫性能監控工具的推薦包括:

SolarWinds ?數據庫性能分析器 (DPA)

SolarWinds Database Performance Analyzer (DPA) 可以將性能信息整合到一個地方。使用 DPA,您可以:

  • 識別延遲的特定查詢
  • 識別導致延遲的特定瓶頸(等待事件)
  • 顯示已識別瓶頸的時間影響

SolarWinds? SQL Sentry

SQL Sentry 是另一種SQL服務器性能調整工具,可以幫助您解決性能問題。使用 SQL Sentry,您可以查看歷史性能并檢測問題以更快地開始故障排除。

SQL 哨兵功能包括:

  • 深入了解過去的SQL服務器性能 – 回到過去查看發生了什么變化
  • 查看 Top SQL 查詢、阻塞和死鎖分析——查看特定時刻以更好地了解正在運行的查詢并分析阻塞詳細信息
  • 優化查詢——使用內置的 Plan Explorer 工具,您可以更輕松地分析查詢統計信息和查看查詢計劃圖
客戶經理
主站蜘蛛池模板: 武义县| 疏勒县| 西和县| 孟津县| 黄石市| 高碑店市| 无锡市| 石棉县| 永济市| 福建省| 重庆市| 迁西县| 柳河县| 沂南县| 彭山县| 通江县| 红河县| 南开区| 吉林省| 永靖县| 察雅县| 雅安市| 大悟县| 梨树县| 鄂温| 邛崃市| 武穴市| 循化| 大埔区| 开江县| 获嘉县| 府谷县| 汕尾市| 都安| 桂平市| 大姚县| 枣强县| 兴城市| 辰溪县| 玉山县| 曲阜市|