文库 云计算 云数据库

PolarDB开发者大会:PolarDB面向云存储的架构优化.pdf

格式PDF   13页   下载0   2024-02-07   浏览133   收藏0   点赞0   评分-   免费文档
温馨提示:当前文档最多只能预览 6 页,若文档总页数超出了 6 页,请下载原文档以浏览全部内容。
PolarDB开发者大会:PolarDB面向云存储的架构优化.pdf 第1页
PolarDB开发者大会:PolarDB面向云存储的架构优化.pdf 第2页
PolarDB开发者大会:PolarDB面向云存储的架构优化.pdf 第3页
PolarDB开发者大会:PolarDB面向云存储的架构优化.pdf 第4页
PolarDB开发者大会:PolarDB面向云存储的架构优化.pdf 第5页
剩余7页未读, 下载浏览全部
DuuCloud.com-IT工程师的文库之家PolarDB 高性能低成本揭秘: 面向云存储的架构优化 陈宗志 DuuCloud.com-IT工程师的文库之家01 CloudJump :面向计存分离架构优化 DuuCloud.com-IT工程师的文库之家• 海量存储能力; • 计算、存储独立高弹性能力; • 服务高可用,数据高可靠; • 极致的性能; • Serverless 、 pay - as - you - go ; • 快速备份、恢复 • …… • 实现云原生能力的标准范式: 计存分离架构 DB node DB node sync Storage Node Storage Node Storage Node Network I/O Local I/O OS Cache Local SSDs DB 计 算 存 储 分 离 架 构 云 原 生 数 据 库 标 准 能 力 DuuCloud.com-IT工程师的文库之家挑战 系统关键点 问题 IO 延迟高,长尾抖动多 Redo Log 串行日志顺序写入 , 延迟高 , 单条 SQL 写入慢 Log replay 串行日志读取 , 应用效率低 , Crash Recovery 慢 Data read 读 取 IO 延迟高 , 用户范围查询慢 Synchronization 写入 IO 持有 Latch, Latch 时间增长 , 并发读写性能下降 带宽利用率低, I/O 热点访 问 Data write 分布式存储提供更大带宽 , 数据库无法充分利用 , 吞吐不符合预期 Data read 多节点 cache 一致性问题 Page cache 为了避免多节点 cache coherence 问题 , buffer IO 无法使用 低 I/O 隔离 性 I/O scheduling I/O 链路更长,存在更多的耦合部分, 并发情况下不同 I/O 更容易相互影响 DB node DB node sync Storage Node Storage Node Storage Node Network I/O 计算存储分离架构的性能挑战 DuuCloud.com-IT工程师的文库之家◼ I/O 延迟高 , 长尾抖动多 Redo 分片 逻辑预读 无锁刷脏 启动快速验证 ◼ 多节点 cache 一致性 Padding Direct IO 引擎层 I/O 请求优化 ◼ I/O 带宽利用率低 , 热点访问 Multi - queue AIO 并行日志应用 & 恢复 Random Redo Redo cache 锁优化索引 PolarIndex ◼ 低 I/O 隔离性 I/O 打标与优先级调度 • 优化云存储本身 硬件升级( RDMA 、 NVM ) 软件栈优化( OS - bypass ) • 优化 DB 架构 / 引擎 多层 cache log as data 架构 DB 引擎针对性适配 面向计算存储分离架构的引擎优化 DuuCloud.com-IT工程师的文库之家• Random Write Redo 大字段的 redo 日志多并发分散写入存储 , 尽可能实 现存储多条带利用 , 有效提升写入场景下系统 redo 吞吐能 力 , 大幅提高用户写入性能 。 游戏行业某头部客户 80 k Blob 写入场景从 190 MB => 500 MB 面向计算存储分离架构的引擎优化T x 1 m tr1 -3 m lo g _ p 1 m lo g _ p n T x 2 m lo g _ p 1 m lo g _ p 2 … L o g B u ffer 1 L o g B u ffer 2 L o g B u ffer n … P e rsistent log s B uffe red logs U n used b uffe r m tr2 -1 P en din g lo gs … A s yn c W rite rs W o rk er G P LS N L P L S N s B R L s L B L S N s LinkB uf Partition 0 Partition 1 Partition n … A la rg e lo g I/O re q u e s t 4 K B a lig n e d 1 6 K B s lice d … hea der traile r … … b lan k L o g B u ffe r - P a rtitio n 1 S licin g F ile1 P art 1 C hunkS erver1 F ile1 P a rt 2 C hunkS erver2 P a ra lle l I/O s DuuCloud.com-IT工程师的文库之家针对远端数据访问延时多优化 • Shadow page (无锁刷脏) 通过 shadow 页去除 write I/O 期间 page 锁占有 ,消除热点场景长 I/O 时的 page 独占,提升写操作并发度 • 逻辑预读 在特定扫描逻辑下预读数据页(例如对于涉及二级索引和非覆盖列 的回表操作,采用 Batched Key 预读),利用云存储高聚合带宽,提前 缓存数据页减少用户访问延时 面向计算存储分离架构的引擎优化主 键 触 发 预 读 逻 辑 异 步 并 发 预 读 二 级 索 引 触 发 预 读 逻 辑 异 步 并 发 预 读 C h u n k C h u n k D a ta F ile C h u n k C h u n k C h u n k D a ta F ile C h u n k L o c k -fre e fo r w rite S h ado w pag e C h u n k D a ta F ile 刷 脏 任 务 DuuCloud.com-IT工程师的文库之家提升并发度,减小独占资源临界区 加锁粒度小: SMO 不持有 Index 锁,允许多个 SMO 并行执行; 加锁时间短:子节点分裂后才拿父节点的锁,尽可能缩短加锁时间 面向计算存储分离架构的引擎优化 • 高性能索引 PolarIndex 去 除 在 SMO 、 BLOB 等 操 作 时 索 引 冗 余 锁 , 提 升 内 存 、 I/O 操 作 并 发 度 。 以 SMO 为例 , 通过 Blink - tree 将分裂和插入父节点操作解耦成两个相对 独立操作 , 允许其它并行查询看到 SMO 中间状态 。 DuuCloud.com-IT工程师的文库之家02 CloudJump :面向多介质云存储优化 DuuCloud.com-IT工程师的文库之家ESSD 块存储( ESSD PL2/3 型) OSS 对象存储( OSS 标准型) 容量范围 1TB ~ 32TB 文件总和无上限 IOPS 100K / 1,000K 顺序读写: 2,000 非顺序
PolarDB开发者大会:PolarDB面向云存储的架构优化.pdf
下载提示

欢迎下载文档

如有下载失败等问题,请邮件联系:duucloud # outlook.com