腾讯云程彬:腾讯云数据库CDB的设计原理

企业动态
纽约时间4月12日,著名开源数据库组织MariaDB在美国纽约曼哈顿召开了第一届M|17 会议

 纽约时间4月12日,著名开源数据库组织MariaDB在美国纽约曼哈顿召开了***届M|17 会议,腾讯云数据库专家程彬分享腾讯云的数据库CDB设计原理,讲述了诸多不为人知的内容,包括设计思想以及技术细节,在腾讯云的数据库设计中,性能优化和Logbus部分为核心特点。

该会议为著名MySQL的分支MariaDB的***次用户大会,旨在让更多用户、开发者和公司学习交流数据库技术,互通有无。


 

 

首先腾讯云数据库产品,基于大规模用户的使用,经过QQ、微信、腾讯游戏等***用户量的产品验证,积累了丰富的经验,在过去的2016年,用户数量倍增。


 

 

据程彬透露,在创立腾讯云数据库之初,各业务均希望数据库能提供更低的成本,同时提供更优的RTO和RPO,并能7*24小时的服务,免去繁琐的运维,让使用者能从繁重的数据库运维中解脱出来。因此,一开始的设计过程就对存储、运维、性能、可用性、扩展性、安全性以及成本等做了全局考虑。


 

 

客户们使用了云数据库后,对他们的运维和DBA团队,带来的工作方式的改变。可以节约更多时间来思考和业务结合更加紧密的工作。例如,他们把原来用于维护数据库的时间来做数据分析,深刻的理解业务数据,挖掘更多的商业价值。


 

 

CDB采用可配置的一主多Slave模式,可以设置这些Slave节点位于不同的可用区,在不同的配置条件下可以去满足不同行业的可用性要求。同时,也可根据可用区延迟灵活的配置同步方式,从而保证性能优先或数据一致性优先。为了提高性能,腾讯云数据库对SQL线程和IO现成的锁冲突,随机IO消耗以及Relaylog的缓存,均做了优化,并提出了自己的同步组件称之为LogBus,加速主备切换时间和故障发现时间。

因为云数据库的服务,和以往自建服务不同,为了完成回档、多份数据的持久性和数据的安全性,跨地域容灾等实例之间的数据同步,是一个用得非常多的特性。这个会关系到整个集群的可用性,因此,这里的logbus 接管了主备同步的数据,在中间优化传输速度,保证传输的可靠性,对整个集群带来了本质的改变。


 

 

演讲中,程彬详细介绍了性能优化的诸多手段,例如线程池、查询计划缓存,MVCC优化,redo log锁优化,以及jemalloc优化等,腾讯云数据库一直以性能著称,除了采用***,***秀的硬件设备外,内核优化也是杀手锏。并且程彬还承诺,这些优化会很快开源出来,共享到全球企业。

在数据持久性方面,腾讯云数据库采用弹性备份策略,可以针对数据进行逻辑备份,单表备份,以及物理备份,然后根据备份的数据,可以提供回档功能。


 

 

在分布式方面,程彬透露了一个新组件的内部开发即将完成。正在紧张测试阶段,该分布式服务可以把现有的数据库分片到主从版数据库,支持分布式事务,支持完整的DDL DML 等语句,扩容方便,支持PB级的分布式存储。

同时程彬也提到和腾讯云数据库在社区方面的一些后续动作,将在2017年投入人力,整理部分云数据库的优秀功能,回馈社区,并广泛的和国内外开源界进行沟通交流,引进优秀方案,输出研究成果,多参与社区活动,一起把将开源数据库提升到企业级品质。

***程彬还透露了部分后续数据库的规划,其中性能诊断、DBA工具集是大家翘首以盼的运维利器,期望早日与用户见面。

责任编辑:Jane 来源: 51cto
相关推荐

2016-08-25 13:47:16

腾讯云云数据库云产品

2022-12-16 17:56:34

2020-12-29 17:14:10

腾讯云数据库融合

2020-02-13 12:52:02

腾讯云腾讯会议数据库Redis

2020-11-24 20:48:44

腾讯云数据库Gartner

2016-07-29 00:09:31

数据库云计算

2017-08-23 10:50:26

腾讯云政企转型

2016-11-23 17:39:57

中安威士数据库

2018-12-10 23:01:44

2021-08-11 15:57:10

数据库开源TDSQL

2015-07-01 10:09:52

2017-05-12 10:34:45

腾讯云第八届中国数据库技术大

2020-06-01 15:13:41

腾讯云图数据库

2017-01-11 16:55:09

腾讯云腾讯地图

2016-08-23 17:33:58

腾讯云云数据库Postgre
点赞
收藏

51CTO技术栈公众号