Azure SQL 資料庫和 Azure SQL 受控執行個體的監視和效能微調
適用於:Azure SQL 資料庫 Azure SQL 受控執行個體
若要在 Azure SQL Database 和 Azure SQL 受控執行個體中監視資料庫的效能,請先監視工作負載所使用的 CPU 和 IO 資源,此工作負載是在選取特定服務層和效能等級時相對於的所選資料庫效能等級。 為了完成此操作,Azure SQL Database 與 Azure SQL 受控執行個體會發出資源計量,可在 Azure 入口網站中檢視,或是使用下列其中一個 SQL Server 管理工具來檢視:
- Azure Data Studio,以 Visual Studio Code 為基礎。
- 以 Microsoft Visual Studio 為基礎的 SQL Server Management Studio (SSMS)。
下列資料表摘要說明,Azure SQL 資料庫和 Azure SQL Managed Studio 中的監視功能。
監視解決方案 | SQL Database | SQL 受控執行個體 | 資產監視 | 低延遲 | 完整資料 |
---|---|---|---|---|---|
計量與警示 | 是 | 是 | 是 | 是 | No |
查詢效能深入解析 | 是 | 無 | 是 | 無 | 否 |
使用 DMV 來監視 | 是 | 是 | 無 | 是 | 是 |
使用查詢存放區進行監視 | 是 | 是 | 無 | 是 | No |
資料庫監看員 (預覽) | 是 | 是 | 是 | 是 | 是 |
資料庫監看員 (預覽)
資料庫監看員會收集深入的工作負載監視資料,為您提供資料庫效能、組態和健康情況的詳細資料檢視。 Azure 入口網站中的儀表板提供 Azure SQL 資產的單一窗格檢視,以及每個監視資源的詳細資料檢視。 資料會被收集到 Azure 訂用帳戶中的中央資料存放區。 可查詢、分析、匯出、視覺化收集的資料,並將其與下游系統整合。
如需資料庫監看員的詳細資訊,請參閱下列文章:
- 使用資料庫監看員監視 Azure SQL 工作負載 (預覽版)
- 快速入門:建立資料庫監看員以監視 Azure SQL (預覽版)
- 建立及設定資料庫監看員 (預覽版)
- 資料庫監看員資料收集和資料集 (預覽版)
- 分析資料庫監看員監視資料 (預覽版)
- 資料庫監看員常見問題
Azure 入口網站中的 Database Advisor
Azure SQL Database 提供數個 Database Advisor,進而提供智慧型效能微調建議和自動調整選項以改善效能。
此外,查詢效能深入解析頁面也會為您顯示針對單一與集區資料庫使用最多 CPU 與 IO 使用量之查詢的詳細資料。
- 查詢效能深入解析可在 [智慧效能] 下 Azure SQL Database [概觀] 窗格的 Azure 入口網站中取得。 使用自動收集的資訊來識別查詢,並開始將工作負載效能最佳化。
- 您也可以設定自動調整來自動實作這些建議,例如:實施查詢執行計畫以防止迴歸,或是根據工作負載模式建立及卸除非叢集索引。 自動調整也可在 [智慧效能] 下 Azure SQL Database [概觀] 窗格的 Azure 入口網站中取得。
Azure SQL 資料庫和 Azure SQL 受控執行個體提供進階監視和微調功能,協助您疑難排解並最大化解決方案和資料庫的效能。 您可以選擇將資料庫資源記錄與計量的串流匯出設定為其中一個目的地以供使用及分析。
在 Azure 入口網站之外,資料庫引擎有自己的監視與診斷功能,可供 Azure SQL 資料庫與 SQL 受控執行個體使用,例如:查詢存放區與動態管理檢視 (DMV)。 如需監視 Azure SQL Database 與 Azure SQL 受控執行個體之各種效能問題的指令碼,請參閱使用 DMV 監視。
監視與診斷遙測
下圖詳述由 Azure SQL 產品所產生的所有資料庫引擎、平台計量、資源記錄與 Azure 活動記錄、處理方式,以及呈現分析的方式。
監視及調整 Azure 入口網站中的 Azure SQL
在 Azure 入口網站中,Azure SQL Database 和 Azure SQL 受控執行個體提供資源計量的監視。 Azure SQL Database 提供 Database Advisor,而查詢效能深入解析提供查詢微調建議和查詢效能分析。 在 Azure 入口網站中,您可以啟用邏輯 SQL Server 及其單一與集區資料庫的自動微調。
注意
極低使用量的資料庫可能會在入口網站中顯示低於實際的使用量。 由於在將雙精度浮點數值轉換為最接近的整數時發出遙測,因此低於 0.5 的特定使用量會捨入到 0,並導致發出的遙測細微性遺失。 如需詳細資訊,請參閱將低資料庫和彈性集區計量四捨五入到零。
Azure SQL Database 和 Azure SQL 受控執行個體資源監視
您可以在 [計量] 檢視的 Azure 入口網站中快速監視各種資源計量。 這些計量可讓您查看資料庫是否接近 CPU、記憶體、IO 或儲存體資源的限制。 高 DTU、CPU 或 IO 使用率可能表示您的工作負載需要更多資源。 這可能也表示查詢需要最佳化。 如需 Azure SQL Database 和 Azure SQL 受控執行個體中支援的計量,請參閱 Microsoft.Sql/servers/databases (機器翻譯)、Microsoft.Sql/servers/elasticPools (機器翻譯) 和 Microsoft.Sql/managedInstances (機器翻譯)。
對於 Azure SQL 資料庫中一組建議的警示規則,請參閱使用 Azure 監視器計量和警示監視 Azure SQL 資料庫。
注意
Azure 入口網站中與儲存體相關的計量 (例如使用的資料空間) 以二次方值報告,但使用十次方單位。 例如,1 MB 的儲存空間指 1,048,576 個位元組,而不是 1,000,000 個位元組。 用於二次方值的較新單位有 KiB、MiB、GiB 等。為了與資料庫引擎中的舊有用法相容且一致,Azure SQL 儲存體計量使用舊的單位,例如 KB、MB、GB 等。
Azure SQL Database 中的 Database Advisor
Azure SQL Database 包含 Database Advisor,可提供單一和集區資料庫的效能微調建議。 這些建議也可在 Azure 入口網站中取得,或使用 PowerShell。 您也可以啟用自動微調,讓 Azure SQL Database 可以自動實作這些微調建議。
Azure SQL Database 中的查詢效能深入解析
查詢效能深入解析會在 Azure 入口網站中顯示效能,包含單一和集區資料庫的最常使用和執行最長的查詢。
將低資料庫和彈性集區計量四捨五入到零
自 2020 年 9 月起,極低使用量的資料庫可能會在入口網站中顯示低於實際的使用量。 由於在將雙精度浮點數值轉換為最接近的整數時發出遙測,因此低於 0.5 的特定使用量會捨入到 0,並導致發出的遙測細微性遺失。
例如:假設 1 分鐘的時間範圍具有下列四個資料點:0.1、0.1、0.1、0.1,這些低值會捨入到 0、0、0、0 並顯示平均值為 0。 如果有任何大於 0.5 的資料點 (例如:0.1、0.1、0.9、0.1),則會捨入到 0、0、1、0 並顯示平均值為 0.25。
啟用計量和資源記錄的串流匯出
診斷設定是一項功能,其中包含資源記錄類別 (先前稱為診斷記錄)。 您可以啟用和設定診斷遙測的串流匯出至數個目的地之一,包括記錄分析、事件中樞和 Azure 儲存體。
注意
Intelligent Insights 的資源記錄類別稱為 SQLInsights
。 這與 SQL Insights (預覽) 監視解決方案無關。
您可以進行診斷設定,將單一資料庫、集區資料庫、彈性集區、SQL 受控執行個體,以及執行個體資料庫的計量和資源記錄類別串流至下列其中一個 Azure 資源。
Azure 監視器中的 Log Analytics 工作區
您可以將計量和資源記錄串流至 Azure 監視器中的 Log Analytics 工作區。 SQL 分析 (預覽)可以使用串流處理到此處的資料,該資料為僅限雲端的監視解決方案,可為您的資料庫提供智慧型監視,包含效能報告、警示與降低風險的建議。 串流至 Log Analytics 工作區的資料可以與其他收集的監視資料一起分析,您也可以使用其他 Azure 監視器功能,例如警示和視覺效果。
注意
Azure SQL 分析 (預覽) 可與 Azure 監視器整合,其中許多監視解決方案不再處於開發中狀態。
Azure 事件中心
您可以將計量和資源記錄串流至 Azure 事件中樞。 將診斷遙測串流至事件中樞,以提供下列功能:
將記錄串流至第三方記錄和遙測系統
將您所有的計量和資源記錄串流至單一事件中樞,以將記錄資料輸送至第三方 SIEM 或記錄分析工具。
建置自訂遙測及記錄平台
事件中樞具高度可調整的發佈/訂閱特性,可讓您靈活將計量和資料記錄內嵌至自訂遙測平台。 如需詳細資訊,請參閱 Azure 事件中樞。
透過將資料串流至 PowerBI 以檢視服務健康情況
使用事件中樞、串流分析和 Power BI,在 Azure 服務上將您的診斷資料轉換為近乎即時的深入解析。 如需此解決方案的詳細資訊,請參閱串流分析及 Power BI:適用於串流資料的即時分析儀表板。
Azure 儲存體
將計量和資源記錄串流至 Azure 儲存體。 使用 Azure 儲存體封存大量的診斷遙測,且只需前兩個串流選項的少量成本。
使用擴充事件
此外,您可以在 SQL Server、Azure SQL Database 與 Azure SQL 受控執行個體中使用擴充事件進行進階監視及疑難排解。 擴充事件是一種「追蹤」工具與事件架構,優於 SQL 追蹤,可讓使用者視需要收集盡可能多或少的資料,以針對效能問題進行疑難排解或識別效能問題,同時降低對持續應用程式效能的影響。 擴充事件取代 SQL 追蹤與 SQL Server Profiler 功能。 如需使用 Azure SQL Database 中擴充事件的詳細資訊,請參閱 SQL Database 中的擴充事件。 在 Azure SQL Database 與 SQL 受控執行個體中,使用裝載於 Azure Blob 儲存體的事件檔案目標。
相關內容
- 如需單一和集區資料庫的智慧型效能建議詳細資訊,請參閱 Database Advisor 效能建議。
- 使用資料庫監看員監視 Azure SQL 工作負載 (預覽版)
- 使用計量和警示監視 Azure SQL 資料庫
- 監視 Azure SQL 資料庫
- 使用 Azure 監視器監視 Azure SQL 受控執行個體