快人一步,X-DB如何实现极速DDL

  1. 云栖社区>
  2. 博客>
  3. 正文

快人一步,X-DB如何实现极速DDL

旺德wonder 2019-03-11 10:12:13 浏览600
展开阅读全文

数据库DDL操作面临的问题

互联网业务发展迅速,应用模式频繁更改是常态。相应地,数据库访问模式和schema也随之变化。DDL(Data Definition Language)是SQL的一类,主要作用是创建和更改数据的schema信息,最常见的操作包括:加减列、更改列类型、加减索引等。熟悉MySQL的同学都知道,在8.0以前,虽然Online DDL不阻塞其它DML(Insert/Update/Delete)操作,但许多重要的DDL操作,如加列、减列等,仍旧需要等待数小时(依据数据量的大小)才会生效。更改列类型等操作甚至仍需要锁表执行,阻塞DML操作。


DDL操作运行时间长,占用系统资源,需要额外的磁盘空间(建立临时表),影响系统吞吐,并且一旦DDL过程中实例crash,恢复时间也会很久。以加列DDL为例,MySQL经历如下过程:

1















网友评论

登录后评论
0/500
评论
旺德wonder
+ 关注