【腾讯云TDSQL-C Serverless 产品测评】为什么要使用TDSQL-C数据库

概要

本文介绍了传统 MVSOL 架构中常见的问题,如写性能受限、数据同步延迟高、性能展效率低等,并提出存算分离架构作为解决方式。TDSOL-C 是一种存储与计算分离的架构,其特点是通过日志传输,实现只写 redo 日志,整体 IO 减少60%以上,写入性能提升90%以上;主从基于 redo 高效同步与回放,延迟降到 ms 级别;计算节点无状态,实现秒级升配、秒级增加 slave,单计算节点可以实现高可用,节省50%的计算节点成本。

传统Mysql 架构 == > Share Nothing
传统mysql 架构
云原生架构 ==> 计算与存储分离
在这里插入图片描述

传统架构的痛点

  1. 写性能受限:传统的主从架构中,写入操作必须同时在主节点和从节点进行复制,导致单条 SQL 的响应时间较长。当并发写入较多时,写入性能受到限制。

  2. 数据同步延迟高:主从架构中,主节点具有多线程写入能力,而从节点只有单线程写入能力,这导致在高并发写入场景下,主从数据同步存在较大的延迟。

  3. 性能扩展效率低:传统架构下,每个 MySQL 实例之间无法共享数据,因此在需要升级 CPU、内存、磁盘规格或增加从库时,需要进行数据搬迁操作,耗时较长。特别是在大数据量情况下,数据搬迁所需时间更为明显。

  4. 存储空间有限:传统架构中,存储空间受到单台物理设备的限制。此外,基于文件的备份方案在大存储场景下效率低下。例如,备份 10T 数据可能需要超过12小时,并且回档所需时间较长。

  5. 高可靠架构成本高:采用多节点架构时,需要成倍增加资源配置(CPU、内存、磁盘),从而增加了高可靠架构的成本。

TDSQL-C 计算与存储架构优势

TDSQL-C(Tencent Distributed SQL for Cloud)是腾讯开发的一种分布式SQL数据库解决方案,它采用了计算与存储分离的架构,具备以下几个优势:

良好的扩展性

TDSQL-C的计算节点和存储节点可以独立扩展。计算节点负责处理查询请求和执行计算任务,而存储节点则专注于数据的存储和管理。这种架构使得 TDSQL-C 在面对大规模数据和高并发请求时能够轻松扩展,提供更好的性能和可伸缩性。

高性能的计算能力

TDSQL-C 的计算节点采用分布式计算引擎,能够以并行化的方式执行查询和计算任务。通过将数据分片存储在多个存储节点上,并利用多个计算节点进行查询和计算操作,可以实现快速的数据处理和高性能的查询响应。

低延迟的数据访问

由于计算节点和存储节点相互分离,并采用高速网络连接进行通信,TDSQL-C 可以实现低延迟的数据访问。计算节点可以直接从存储节点读取数据,无需跨网络传输,大大减少了数据访问的延迟。

高可靠性和容错性

TDSQL-C 通过将数据分片存储在多个存储节点上,并使用冗余备份机制,提供了高度的可靠性和容错性。即使某个存储节点出现故障,系统仍可以继续正常运行,不会导致数据丢失或服务中断。

灵活的数据管理

TDSQL-C 支持水平扩展和在线迁移。可以根据业务需求动态增加计算节点和存储节点,扩展数据库的计算和存储能力。同时,也可以在线迁移数据,实现负载均衡和数据的动态调整,以适应不同的业务场景。

整体架构流程

在这里插入图片描述
架构原理:

  • 日志传输: 计算节点将物理日志(redo log)传输到存储节点,并同时同步redo log到slave节点。
  • 可计算存储: 存储层持久化日志、回放日志,并持久化数据页面。
  • 写入流程:
    • 传输日志到存储节点。
    • 持久化日志。
    • 通知客户端日志完成持久化。
    • 回放日志到数据页面。
    • 持久化新版本页面。
    • 回收日志和页面。

架构特性:

  • 只写redo日志,整体IO减少60%以上,典型场景写入性能提升90%以上。
  • 主从基于redo高效同步与回放,Slave内存中回放redo log生成数据页面,无需落盘,主从延迟降到毫秒级别。
  • 计算节点无状态,可实现秒级升配、秒级增加slave。
  • 单计算节点可以实现高可用(无须备库),可节省50%的计算节点成本。

在这里插入图片描述

技术名词解释

  1. MVSOL(MySQL Virtual Storage Option Layer) 传统的MySQL架构,即主从架构,其中主节点负责写入操作,从节点用于数据复制。

  2. 存算分离架构:TDSOL-C是一种存储与计算分离的架构,通过将计算节点和存储节点分开,实现高性能、低延迟和良好的扩展性。

  3. 写性能受限:传统主从架构中,在写入操作时需要同时在主节点和从节点进行复制,导致单条SQL的响应时间较长,并发写入时写入性能受限。

  4. 数据同步延迟高:主从架构中,主节点具有多线程写入能力,而从节点只有单线程写入能力,导致在高并发写入场景下,主从数据同步存在较大的延迟。

  5. 性能扩展效率低:传统架构下,每个MySQL实例之间无法共享数据,升级硬件或增加从库时需要进行数据搬迁操作,耗时较长。

  6. 存储空间有限:传统架构中,存储空间受到单台物理设备的限制,基于文件的备份方案效率低下。

  7. 高可靠架构成本高:采用多节点架构时,需要成倍增加资源配置,增加了高可靠架构的成本。

  8. TDSQL-C(Tencent Distributed SQL for Cloud):腾讯开发的一种分布式SQL数据库解决方案,采用计算与存储分离的架构,具备良好的扩展性、高性能的计算能力、低延迟的数据访问、高可靠性和容错性以及灵活的数据管理等优势。

  9. 分布式计算引擎:TDSQL-C的计算节点采用分布式计算引擎,以并行化方式执行查询和计算任务,通过数据分片存储和多个计算节点进行操作,实现快速的数据处理和高性能的查询响应。

  10. 只写redo日志:TDSQL-C架构中,只将物理日志(redo log)传输到存储节点,减少整体IO操作,提升写入性能。

  11. 主从基于redo高效同步与回放:使用高效的redo日志同步和回放机制,将主从节点之间的延迟降低到毫秒级别。

  12. 计算节点无状态:TDSQL-C的计算节点是无状态的,可以实现秒级升配和增加slave节点,提高可用性并减少计算节点成本。

小结

通过上述分析,我们再来想一想为什么要使用TDSQL-C数据库嘞! 答案只有一个,那就是 TDSQL-C采用高效的redo日志同步和回放机制,将主从节点之间的延迟降低到毫秒级别,以及使用分布式计算引擎,以并行化方式执行查询和计算任务,进一步提高了计算能力和响应速度。最重要的是,TDSQL-C的计算节点是无状态的,可以实现秒级升配和增加slave节点,提高了可用性并且减少了计算节点成本。 就问 谁能不爱呢??

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值