“AI不會替代他們,但善用AI的人會”
慢 SQL 經常會讓應用程式回應變慢,輕者影響用戶體驗,嚴重的時候可能會導致服務不可用,如果,每次遇到慢 SQL 都求助于 DBA,一方面效率很低,另一方面也會很沒面子,所以,我們一起來看看如何使用AI能力給出超越一般DBA的 SQL 優化建議,NineData( www.ninedata.cloud )面向每個開發人員提供了免費的 SQL 開發功能,同時也提供了免費的 AI SQL 優化功能,
我們看看,如何使用 NineData 的 AI 功能完成 SQL 優化,
1. 創建資料源
登錄進入控制臺,并創建一個永久免費的資料源,用于優化 SQL(如果已經有資料源了則可以跳過這一步),
登錄進入NineData控制臺
創建一個永久免費的資料源
2. 一個簡單的案例
接著只需要在“ SQL 視窗”,輸入想要優化的 SQL,并點擊“智能優化”,耐心等待就好了,具體的:
點擊右側導航“SQL 開發->SQL 視窗”,進入一個資料源的 SQL 視窗
接著輸入需要優化的 SQL,選中 SQL 并點擊“SQL 智能優化”按鈕即可
例如,我們在系統中發現了如下的慢 SQL 需要優化:
SELECT *
FROM t_user
WHERE region_id = '0571';
NineData系統中發現了如下的慢 SQL 需要優化
很快,就獲得如下的優化建議:
NineData智能SQL優化
可以看到,在智能優化建議中,包括了常見的索引添加建議,也有容易忽略的“SELECT * ”優化,還有更加復雜一些覆寫索引建議,已經具備了一般 DBA 的 SQL 智能優化能力,
3.一個較復雜的案例
再看一個更加復雜的案例吧:
SELECT *
FROM t_user
WHERE region_id = '0571'
AND YEAR(birth_date) >= 2012
ORDER BY reg_date
LIMIT 10
點擊智能優化按鈕:
NineData系統對復雜的慢SQL處理
等待后,獲得如下優化建議:
NineData智能對復雜的SQL優化
可以看到,首先給出了新建索引的建議;其次,智能優化引擎很敏銳的發現了在 WHERE 條件中對于某些列做了函式計算,可能很大程度上影響索引使用,并給出修改建議;最后,也非常準確的給出了關于覆寫索引的建議,
4. 互動式對話的解決資料庫的問題
另外,NineData 還提供了對話式的“AI 智能”功能,可以直接問他一些關于資料庫的問題,例如:可以直接問她“為什么表最好有主鍵”、“為什么字符集應該盡量使用 utf8mb4,而不是 utf8?”等,
具體的,首先,登錄進入控制臺,進入“SQL 開發->SQL 視窗”,并點擊“AI 智能”,然后就可以直接提出相關的資料庫問題,
使用NineData的SQL視窗”,并點擊“AI智能
例如,這里關注的問題是:“為什么表最好有主鍵”、“為什么字符集應該盡量使用 utf8mb4,而不是 utf8?”,很快 AI 智能會給出回答:
為什么表最好有主鍵?
為什么字符集應該盡量使用 utf8mb4,而不是 utf8?
通過這些案例,我們可以看到,通過 NineData 的 AI SQL 優化能力,可以大大提高開發者日常 SQL 開發效率,也可以大大減輕 DBA 的作業負擔,
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/551242.html
標籤:MySQL
上一篇:MySQL8.0中Online DDL也要在業務低峰期執行
下一篇:返回列表
