您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[腾讯]:云原生架构下构建数据库服务 - 发现报告
当前位置:首页/其他报告/报告详情/

云原生架构下构建数据库服务

2024-09-13腾讯乐***
云原生架构下构建数据库服务

向着云原生进化 ——集群新架构助力企业轻松应对高并发 主讲人:程昌明 目录 03 RoadMap 02 集群版 (基于新架构的全新形态) 01 为什么 我们需要新架构 导师介绍 腾讯云数据库高级产品经理 程昌明 腾讯云数据库MySQL产品线负责人,在高可用解决方案、信息安全、系统规划、性能优化、灾难恢复与信息系统整合方面拥有丰富的实践经验。曾为网络运营商、银行、能源(国网、南网)及政府等各行业的关键业务系统,提供运维、升级、项目实施与管理、容灾建设等疑难问题咨询与技术实施服务。 01为什么我们需要新架构 VIP1# 只读(在线) VIP0# 读写 VIP2# (全局读写分离) VIP3# 只读(离线) VIP5# TGW(R) TGW(W/R) VIP2# (全局读写分离) TGW(R) TGW(R) 上海二区 广州四区 异步、半同步、强同步 Master replication Slave0# 灾备实例 master 异步、半同步、强同步 replication 灾备实例 slave replication RO0# RO1# RO2# RO3# 上海五区 Slave0# RO1# RO2# RO3# 冷备/binlog备份中心 RO3# RO2# RO1# RO0# 为什么我们需要新架构 存算一体化架构 01 优势 本地磁盘极低IO响应时间 本地资源无损弹性(CPU弹性) 网络架构易扩展 02 劣势 备份恢复时长随数据量增长 磁盘规格受限 计算资源上限受代次限制 需要不可读备机提供可用性保障 底层内核特性更新缓慢 为什么我们需要新架构 COMPUTE Slave Bin Log COMPUTE Master Bin Log COMPUTE Slave Write(Atomic) Read(I/Ouring) STORAGE CloudDisk CloudDisk CloudDisk 快照存储中心 集群版架构 01 特点 计算资源与磁盘规格无需绑定 支持全部性能级别磁盘类型 计算资源按照算力定期迭代 备份使用云盘快照 适用于新架构的内核优化 快速增删节点 支持高频快照(15分钟间隔) 02 特点 业务变化较大,频繁扩缩容或增 加只读实例提升读性能 经常需要快速回档的游戏项目 数据量较大的在线业务系统 为什么我们需要新架构 横向&纵向扩容 512核,2TB内存 读写节点 只读节点 只读节点 只读实例 只读实例 01 纵向上限高 CPU最大支持512核 内存最大支持2TB 存储最大支持32TB (预计年底支持64TB) 02 横向扩容快 5分钟快速扩展 支持独立只读 支持自动读写分离 支持自动故障转移 只读节点扩展 02集群版 集群版 节点重建后bufferpool预热,防止业务抖动 before Bufferpooldata HR afterBufferpooldata 主备缓存同步优化 HotpagesSnapshottherange ofhotpages Bufferpool master dump snapshot load Pagesneedwarmup Scantherangehotpages Bufferpoolmaster 内核特性 ——BP预热 01 背景及问题 节点重建或常态化的实例迁移,新节点BufferPool需要长时间预热,而预热期间影响业务运行,QPS长达数十分钟恢复正常。 主从缓存不同:读写节点业务与只读节点业务缓存数据存在差异。 02 解决方案-主从缓存同步优化 主库异步dumpbufferpool信息,获取Btree热点数据 范围,生成逻辑快照。 从库加载快照信息,通过直接扫描Btree异步预热备库 bufferpool。 主从bufferpool热数据逻辑保持一致。 doublewritebuffer recovery 共享表空间:ibdata1..n文件 数据文件 (.ibd) 磁盘 — 存储 — (1MB) (1MB) 3离散write 1copy 脏页 innodbbufferpool 数据页 doublewritebuffer 内存实例 (1MB) (1MB) 集群版 内核特性 ——原子写 01 2顺序write 背景及问题 MySQLInnoDB的pagesize一般为16KB,数据校验也 是按16KB页面来计算的。但操作系统写入磁盘是以4KB页进行的,为了保证InnoDB的16KB页的原子写入,MySQL采用DoubleWrite的方式完成数据写入,数据页面存在双倍的写入。 02 解决方案-16k原子写 16k原子写是通过文件系统COW异地更新的机制,确保MySQL16k页面原子写入,优化MySQL的写入性能和数据写入量,解决DoubleWrite带来的额外IO带宽占用问题。 集群版 内核特性 ——原子写——快照 01 背景及问题 Linux这种IO不保序导致XFSreflink存在的临界状态被云盘快照到的问题可以认为是XFSreflink不支持云盘快照或者云盘快照不兼容XFSreflink机制。在FS侧想要 彻底解决,只能使用syncIO,但这样性能下降严重,此外,OS内核由于不知道IO的实际用途和快照开始/结束时点。 02 解决方案-锁时同步 通过验证TR提交阶段,log中会包含inode元数据的备份, 确定在TR提交时,将TR转换为syncTR可以解决文件元数据延迟更新的问题。使用syncTR时带来性能下降约2%,影响较小。 集群版 内核特性 ——跨CCD优化 01 背景及问题 AMDZEN4处理器具备更高的性能,不论浮点还是整数运算提升都很明显,IPC提高了14%,L2大小增加了2倍,显著提高了频率和降低平均延迟。但由于芯片架构不同,跨CCD访问时,会有明显的性能下降,下降最大幅度达到40%。 02 解决方案-调度策略优化 调度器在进行调度的是,任务会在两个不同的NUMA节点间进行负载均衡。从而导致task在NUMA间迁移。但是,允许两个NUMA间少量的不平衡,则可以避免这种迁移过于频繁,尤其在负载比较轻的情况下。 cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7 LLC3 NUMA 优化前 CCD0 CCD1 cpu0 cpu1 cpu2 cpu3 cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 进程1 cpu0 cpu4 进程2 进程3 进程4 LLC0 LLC1 CCD2 CCD3 cpu0 进程5 进程6 cpu3 cpu0 进程7 进程8 cpu3 cpu4 cpu5 cpu6 cpu7 cpu4 cpu5 cpu6 cpu7 LLC2 LLC3 CCD0 CCD1 进程1 进程2 进程3 进程4 cpu0 cpu1 cpu2 cpu3 进程5 进程6 进程7 进程8 cpu4 cpu5 cpu6 cpu7 NUMA 优化后 LLC0 LLC1 CCD2 CCD3 cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7 LLC2 集群版 内核特性 ——跨CCD优化 01 优化逻辑 AMDZEN4处理器具备更高的性能,不论浮点还是整数运算提升都很明显,但由于芯片架构不同,跨CCD访问时,会有明显的性能下降,下降最大幅度达到40%;通过优化 使负载均衡能够识别CCD架构,让其对CCD架构开豁免权,保持负载不均衡特性,尽量减少跨CCD访问,让多任务尽 可能集中在一个CCD内,减少核间延迟。 02 后续优化-再次增强 优化numaspinlock锁粒度过粗问题,优先选择llc粒度下的cpu获取spinlock锁,降低cache抖动 跨LLC的调度策略,这种workqueue自动感知,将会进一步降低跨numa的影响,以及有感知的选择相邻的更近的LLCcpu 集群版 代码段锁定/多备份网络配置调优 内核优化 提升15%性能 ORCunwinder io_uring 内核占用内存优化NUMAawarespinlock 集群版 200000 性能提升明显 从实际测试数据观察,对比优化前,在读写混合 场景下有30%~50%的性能提升。 测试方案 使用sysbench工具,在读写混合场景下设定并发度为CPU核数8倍进行测试。 180000 160000 140000 120000 100000 80000 60000 40000 20000 0 2核4G4核8G4核16G8核16G8核32G16核32G16核64G 优化前QPS优化后QPS 集群版 新架构特性 01 支持从机只读 从节点支持配置只读地址,无需额外创建隐藏从机。 多个从节点支持自动负载均衡能力。 02 快速增加节点 从快照进行节点添加,无需等待数据恢复完成即可使用。 更简单易懂的扩展拓扑操作。 03 节点监控 每个节点均有自己的监控指标,可以更直观的了解集群维度下实例运行状态。 03RoadMap 集群版RoadMap 时间节点 迭代概述 2024 Q1 集群版上线 2024 Q2 升级集群版 2024 Q3 备份恢复 2024 Q4 自动运维 迭代目标 关键功能特性 集群版上线 支持集群版(云盘),提供计算与存储解耦架构 一键升级集群版 支持Proxy 支持独立只读实例 生态产品支持 提供一键将存量架构升级为集群版能力,便于用户升级 疏密备份 高频备份 备份下载 极速全局回档 提供完整且灵活的备份策略和能力,满足不同场景下对数据恢复的需求 计算资源SLS 支持64TB 存储自动管理 自动扩缩容存储,以满足不同周期下业务数据的变化 THANKS