[]揭秘MySQL生态重要功能,X-Engine引擎核心能力——OnlineDDL( 三 )
对于InnoDB引擎而言 , DD数据字典操作 , InnoDB引擎数据字典操作都是通过InnoDB引擎存储 , 通过InnoDB事务特征来保证原子性 。对于X-Engine引擎而言 , DD数据字典操作 , X-Engine引擎数据字典操作分别采用InnoDB引擎和X-Engine引擎 , 除了依赖于InnoDB和X-Engine自身是事务引擎特征 , 还需要借助于内部的2PC协议来保证整个事务的原子性 。如果MySQL开启了binlog , 那么就是binlog , X-Engine , InnoDB三者一起通过2PC协议保证事务的原子性 。而Post-ddl阶段就是做善后和清理工作 , 如果最终整个事务提交 , Post-ddl阶段负责真正清理old-table数据;如果最终整个事务回滚 , 那么Post-ddl阶段负责清理临时产生的new-table数据 , 确保DDL变更前后 , 数据库的状态是一致的 。
文章图片
文章图片
使用体验
X-Engine作为MySQL的一个新引擎 , 在语法使用层面完全与MySQL(InnoDB)相同 , 通过algorithm_option指定Online类型 , 通过lock_option指定DDL过程中 , 是否允许其它并发的DML和SELECT操作 。通常情况下 , 这两个选项都不用特别指定 , 采用默认值即可 , MySQL内部会优先选择Instant类型和Inplace类型 , 对于不支持Online的DDL操作 , 选择Copy类型 。在功能层面也与MySQL(InnoDB)相同 , 目前X-Engine暂时还不支持全文索引 , 虚拟列 , 外键等功能 , 因此与这些功能相关的DDL操作会不支持 , 其它DDL操作与MySQL(InnoDB)相同 。常用的DDL操作分类如下:
文章图片
文章图片
后续工作
【[]揭秘MySQL生态重要功能,X-Engine引擎核心能力——OnlineDDL】X-Engine作为一个新的数据库存储引擎 , 通过集团业务场景的打磨 , 已经体现了它的价值 , 我们希望通过云上RDS场景 , 让更多用户享受到新技术带来的红利 。当然 , 目前X-Engine还有一些不足 , 尤其是相对于传统成熟的MySQL(InnoDB)和Oracle , 所以X-Engine引擎在优化自身的稳定性和性能同时 , 会持续不断地丰富数据库功能 , 包括支持外键 , 全文索引 , 虚拟列等 。除了公有云的RDS输出 , 基于X-Engine的一体化分布式数据库PolarDB-X也是一个重要方向 , 我们会以专有云形式输出 , 服务更多对分布式数据库有强需求的用户 。
推荐阅读
- 海信再造海信!揭秘青岛国企混改新样本
- 德林社|再造海信!揭秘青岛国企混改新样本
- 企业观脉科技与聚云科技优势互补,共同打造多云生态
- |稳定币周报:稳定币总活跃地址数创新高,揭秘DAI的用户画像
- 凤凰网辽宁综合|软通动力赋能保险行业,助攻“融入生态”数字化转型
- 保险软通动力赋能保险行业,助攻“融入生态”数字化转型
- 平板荣耀 V6平板又有进步?网友:谈生态先谈续航
- 直播一直播四周年:内容生态多元精耕,“直播+电商”强势出击
- 爱集微APP|价值观 | 华为P40成本揭秘,国产器件成本占比超六成
- CSDN|2020 AI 产业图谱启动,勾勒中国 AI 技术与行业生态