“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 的工作负担。