本文讲的是阿里巴巴张瑞谈面向未来的数据库架构【IT168 评论】国内最受关注的数据库技术盛会——2017第八届中国数据库技术大会(DTCC2017)将于2017年5月11-13日如约而至。本届大会以“数据驱动?价值发现”为主题,汇集来自互联网、电子商务、金融、电信、政府、行业协会等20多个领域的120多位技术专家,共同探讨Oracle、MySQL、NoSQL、云端数据库、智能数据平台、区块链、数据可视化、深度学习等领域的前瞻性热点话题与技术。大会共设定2大主场和20个技术专场,将吸引5000多名IT人士参会,为数据库人群、大数据从业人员、广大互联网人士及行业相关人士提供最具价值的交流平台。
(更多大会精彩:http://tech.it168.com/topic/2017/5-10/DTCC2017/)
在大会上,来自阿里巴巴集团研究员张瑞带来了《面向未来的数据库体系架构的思考》的精彩分享。据张瑞介绍,目前,阿里数据库技术团队正在建设阿里下一代数据库技术体系,希望能够把阿里的成果、踩过的坑以及面向未来思考介绍和与会者做一些深入的探讨,能够为中国数据库技术的发展出一份力。
阿里巴巴集团研究员张瑞
据了解,AliSQL 是基于 MySQL 官方版本的一个分支,由阿里云数据库团队维护,目前也应用于阿里巴巴集团业务以及阿里云数据库服务。AliSQL 版本在强度和广度上都经历了极大的考验。最新的 AliSQL 版本不仅从其他开源分支比如Percona,MariaDB,WebScaleSQL 等社区汲取精华,也沉淀了阿里巴巴多年在 MySQL 领域的经验和解决方案。AliSQL 增加更多监控指标,并针对电商秒杀、物联网大数据压缩、金融数据安全等场景提供个性化的解决方案。
以电商的秒杀场景为例,对数据库而言,就是对一条记录的更新,因为事务的特点,单条记录的更新必须串行完成,但秒杀的特点,就是在某个时刻,大量的并发进行减库存,这就造成了大量的线程因获取不到锁而处在死锁检测状态,消耗了大量的CPU资源,最终导致系统无法响应,而引起雪崩效应。AliSQL针对这样的场景,提供了排队和限流的功能,经过了双11零点时刻高并发请求的考验,保持了系统的稳定性和持续吞吐能力。
对于未来,数据库技术应该不仅在数据库内核技术上创新,还应该实现数据库的弹性调度以及如何从自动化走向智能化。
在谈到数据库内核技术创新上,张瑞首次谈到了AliSQLX-Cluster (基于三副本Paxos/Raft协议的AliSQL),在性能上同城三副本与单机性能持平,并且可以异地部署,延时增加,但保持了高吞吐,同时具备网路抖动高容忍性。
从X-Cluster与MySQL Group Replication的对比测试(同IDC)中不难看出,在三节点同IDC部署,sysbench标准化测试 Insert场景,X-Cluster是MySQL GR 的2.4倍。
在异地对比测试中,三节点三地部署,sysbench标准化测试 Insert场景,X-Cluster(5.04万)是MySQL GR(0.85万)的5.94倍;响应延时X-Cluster(58ms)是MySQL GR(150ms)的38%。
对于自动数据生命周期管理,AliSQL依托热数据存储InnoDB引擎和冷数据存储RocksDB引擎实现了多引擎实现自动冷热数据分离。
众所周知,要想实现弹性调度的量大基础挑战是:容器化和计算存储分离。据张瑞介绍,AliSQL支持物理机、VM、Docker,可以保证容器性能与物理机持平,并且DB与其他应用混部,提升CPU利用率。
在存储计算分离上,由于25G网络,RDMA,SPDK等技术的发展,让大规模存储计算分离成为可能。通过数据库优化,减少网络IO,变离散IO为顺序IO,降低网络延迟带来的性能影响。与此同时,共享存储池,提升存储利用率。通过Erasure Code技术,降低副本数。
可以说,AliSQL是伴随着业务的发展一起成长起来的,经历过双11大促这样大压力的考验,同时也经历了阿里云各行各业用户差异化的需求,已是身经百战。
原文发布时间为:2017-05-11
本文作者:张存
原文标题:阿里巴巴张瑞谈面向未来的数据库架构