作者:刘春雷

                   安居客TiDB集群优化

--2019-11-20 58公司 春雷



1、汇总



1.1、问题

问题:安居客TiDB集群,SQL执行时间长,达到 500ms-1s

导致业务的消息堆积,无法快速写入到集群



1.2、优化结果汇总

再记一次业务优化_sql



2、具体问题



2.1、业务消息堆积情况

蓝色的是产生数据速度,绿色是写入速度

再记一次业务优化_执行时间_02



2.2、SQL执行时间

SQL执行时间 500ms-1s

再记一次业务优化_执行时间_03



2.3、慢SQL量

慢SQL高峰 52w

再记一次业务优化_sql_04



3、优化前集群信息

再记一次业务优化_sql优化_05



4、优化



4.1、优化汇总

再记一次业务优化_sql_06



4.2、大表清理

业务历史数据不访问,不需要,可以清理

库大小:12.9T

表行数:110亿

再记一次业务优化_执行时间_07



4.3、慢SQL优化

优化前个数:50w+

优化后个数:<700

降低:99.87%

再记一次业务优化_sql优化_08



4.4、集群 迁移 情况

背景:此集群上的某库因增量过大,将其迁移出来

处理:新建一套集群,迁移库

信息:TiDB机器:3台,TiKV机器:3台新的机器

结果:SQL执行时间情况如下,解决了业务的写入QPS要求

再记一次业务优化_执行时间_09



5、优化前后对比



5.1、机器情况

调整前:

再记一次业务优化_sql_10

调整后:

再记一次业务优化_sql优化_11



5.2、SQL执行时间

优化前:

再记一次业务优化_sql优化_12

再记一次业务优化_sql_13

优化后:

再记一次业务优化_执行时间_14



3.3、IO情况

优化前:

再记一次业务优化_sql_15

优化后:

再记一次业务优化_执行时间_16



3.4、CPU情况

优化前:

再记一次业务优化_sql_17

优化后:

再记一次业务优化_执行时间_18



3.5、服务器load情况

优化前:

再记一次业务优化_sql_19

优化后:

再记一次业务优化_sql优化_20



3.6、region情况

优化前:

磁盘: 14T

region数: 63w

再记一次业务优化_sql_21

优化后:

磁盘: 6.2T

region数: 24w

再记一次业务优化_sql_22


相关阅读:

​记一次 TiDB 优化​