“AI不会替代他们,但善用AI的人会”

慢 SQL 经常会让应用程序呼应变慢,轻者影响用户体验,严重的时候或许会导致服务不可用。假如,每次遇到慢 SQL 都求助于 DBA,一方面功率很低,另一方面也会很没体面。所以,咱们一起来看看怎么运用AI才能给出逾越一般DBA的 SQL 优化主张。NineData( www.ninedata.cloud )面向每个开发人员供给了免费的 SQL 开发功用,同时也供给了免费的 AI SQL 优化功用。

咱们看看,怎么运用 NineData 的 AI 功用完成 SQL 优化。

1. 创立数据源

登录进入控制台,并创立一个永久免费的数据源,用于优化 SQL(假如已经有数据源了则能够跳过这一步)。

使用AI优化慢SQL,开发秒变DBA

登录进入NineData控制台

使用AI优化慢SQL,开发秒变DBA

创立一个永久免费的数据源

2. 一个简单的事例

接着只需求在“ SQL 窗口”,输入想要优化的 SQL,并点击“智能优化”,耐心等候就好了。详细的:

点击右侧导航“SQL 开发->SQL 窗口”,进入一个数据源的 SQL 窗口

接着输入需求优化的 SQL,选中 SQL 并点击“SQL 智能优化”按钮即可

例如,咱们在体系中发现了如下的慢 SQL 需求优化:

SELECT *
FROM t_user
WHERE region_id = '0571';

使用AI优化慢SQL,开发秒变DBA

NineData体系中发现了如下的慢 SQL 需求优化

很快,就获得如下的优化主张:

使用AI优化慢SQL,开发秒变DBA

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

点击智能优化按钮:

使用AI优化慢SQL,开发秒变DBA

NineData体系对杂乱的慢SQL处理

等候后,获得如下优化主张:

使用AI优化慢SQL,开发秒变DBA

NineData智能对杂乱的SQL优化

能够看到,首先给出了新建索引的主张;其次,智能优化引擎很敏锐的发现了在 WHERE 条件中关于某些列做了函数核算,或许很大程度上影响索引运用,并给出修改主张;最终,也十分精确的给出了关于掩盖索引的主张。

4. 交互式对话的解决数据库的问题

别的,NineData 还供给了对话式的“AI 智能”功用,能够直接问他一些关于数据库的问题。例如:能够直接问她“为什么表最好有主键”、“为什么字符集应该尽量运用 utf8mb4,而不是 utf8?”等。

详细的,首先,登录进入控制台,进入“SQL 开发->SQL 窗口”,并点击“AI 智能”,然后就能够直接提出相关的数据库问题。

使用AI优化慢SQL,开发秒变DBA

运用NineData的SQL窗口”,并点击“AI智能

例如,这里关注的问题是:“为什么表最好有主键”、“为什么字符集应该尽量运用 utf8mb4,而不是 utf8?”,很快 AI 智能会给出回答:

使用AI优化慢SQL,开发秒变DBA

为什么表最好有主键?

使用AI优化慢SQL,开发秒变DBA

为什么字符集应该尽量运用 utf8mb4,而不是 utf8?

通过这些事例,咱们能够看到,通过 NineData 的 AI SQL 优化才能,能够大大提高开发者日常 SQL 开发功率,也能够大大减轻 DBA 的工作负担。