阅读 638

腾讯云TDSQL-C架构解析

       这是我做云原生数据库架构结构的第三篇:腾讯云TDSQL-C架构解析。

    云原生数据库 TDSQL-C(Cloud Native Database TDSQL-C)简称 TDSQL-C,当年的名称是:CynosDB,后面为了统一名称,我们全部使用TDSQL-C。TDSQL-C 是腾讯云自研的新一代高性能高可用的企业级分布式云数据库。融合了传统数据库、云计算与新硬件技术的优势,100%兼容 MySQL 和 PostgreSQL,实现超百万级QPS的高吞吐,128TB海量分布式智能存储,保障数据安全可靠。

       因为TDSQL-C对外的资料比较少,我们这里就直接引用官方对客户分析一个图片,看看TDSQL-C的架构:

图片

     从架构上来看TDSQL-C分成了两层:计算层和存储层。计算层支持:MySQL, PostgreSQL,目前从资料中推断应该是使用了开源的版本,所以可以保持和对应的MySQL和PostgreSQL保持100%的兼容,同样在计算层无持久化的存储。计算层目前也是支持一个Primary(支持读写),1-15个Read节点只读。从一些渠道沟通基本确认在2021Q1也实现一层Proxy层接统一接入。存储层是使用了类似于腾讯的块存储COS,这块有点和Aurora的设计一致采用了极简的IO模型。如下图:

图片

       从图形中可以看出来,数据写入只会写入commit log。log 经过队列最写入后合并成Cell,通过日志导步合并成data block。从而简化了数据库的IO操作,实现日志即数据库,目前TDSQL-C也可以支持生成Binlog,而且支持基于Binlog的快速回档。

TDSQL-C在备份方面引入持续备份,快照备份:写时重定向技术,独立分布式存储高并发度上传COS功能。

图片

      在管控平台方面有相应的数据自动驾驶的概念。同时也集成了腾讯云的DBBrain提供智能诊断处理。

      整体上看TDSQL-C定位是类Aurora的产品实现,从腾讯的风格来讲,前期肯定便宜货又足。性能方面从架构上讲TDSQL-C不是一定是最好的,但可以应该也不差,常见的高并发业务在这个架构下足可以Hold住。 

       因TDSQL-C手里资料不多,不能进一步的解析,欢迎了解或是使用过TDSQL-C的朋友提供使用经验分享。 

      因为近三周对比了Aurora V2, PolarDB(应该说也是V2),以及本篇的TDSQL-C觉得都可以说是云原生数据库的代表,都是非常优秀的产品。 从这里也可能看到云原生数据库这个赛道上还有很多机会。可以说这块的新秀TiDB也是云原生数据库创业的新贵。 技术不断的进步,我们也可以利用新技术的红利为公司的业务增效降本。如果你对云原生数据库方面特别有有兴趣,也欢迎加我微信组队交流。 

文章分类
后端
文章标签