[Azure][SQL]輕鬆檢測 Azure SQL Database 找出可改善之處

利用 Azure SQL PM team 所製作的檢測語法,找出 Azure SQL Database 可改善之處

用了 Azure SQL Database 好一陣子,都一值覺得這真是一個物美價廉的好產品,不只自己在工作上蠻常使用的,也很常推薦別人在開發專案上來做使用。而這幾天剛好在網路上爬文的時候,看到一個蠻好玩的腳本,這是一個由 Azure SQL PM team 所維護的 Open Source 專案,最主要是提供一個檢測的腳本,透過 SSMS or Azure Data Studio 來執行,他會提供一些建議的改善。

首先這個 azure-sql-tips 的專案是放在 github 上面,最主要是維護一個 get-sqldb-tips.sql 的 SQL 腳本,您可以連上您的資料庫之後,再執行這個腳本來做一個檢測,語法中不會去刪除或變更您原本的資料庫和資料,因此使用上也不用擔心。

執行後會得到一個類似這樣的結果

以上圖為例,整個腳本執行完之後,他針對我的資料庫會有 7 個建議事項,我們可以透過 description 這個欄位來看每個建議的簡短描述,如果您覺得說明不夠清楚,也可以透過 additional_info_url 的網址,串接到這個專案的 wiki 網址上,上面會有更詳盡的說明資料。像是我的第四筆紀錄,他的提示代號是 1180 , 那我就可以用那個網址到 https://aka.ms/sqldbtipswiki#tip_id-1180 這裡來查看,像這個是我有些比較存比較大量資料的表格沒有設定壓縮,他就會找到建議我,是否可以在這些上面做設定,來降地 I/O 來提升效能。

或者是像那個 1170 , 我就可以從後面的資料來查看,我有些資料表建立了 Index ,但更新 Index 的次數遠大於搜尋的次數,像這些我就可以來思考看看這些索引是否有存在的必要,或者是把這些索引移到特定的 Stored Procedure 內要使用的時候才去建立,縮短平時不需要使用卻要花資源去維護的浪費。

算是非常貼心好用的小工具,有使用 Azure SQL Database 的朋友可以來試試看,相信對大家是很有幫助的。