当前位置:首页 > 报告详情

PolarDB for PostgreSQL架构(27页).pdf

上传人: 云闲 编号:86224 2021-01-01 27页 3.58MB

1、PolarDB for PostgreSQL架构嘉宾:冯遵宝(北侠)公司:阿云-PolarDB产品部1.PolarDB-云原架构2.PolarDB-HTAP架构3.PolarDB-开源PolarDB for PostgreSQL架构1.PolarDB-云原架构扩展性差:加节点时级可靠性差:RPO!=0可性差:RTO 30s-5min成本:存储成本随节点数线性增加,并且预占资源MasterPG Server(最60核)本地盘/云盘Host1StandbyHost2PG Server(最60核)StandbyHost3PG Server(最60核)redo 志异步:1s 同步:=0,性能降20%+

2、扩节点拉数据 15min8h+OSS管控备份 本地盘 15min8hHA&Recovery30s5min本地盘/云盘本地盘/云盘1.PolarDB云原架构-背景(传统数据库痛点)1.PolarDB云原架构-计算存储分离PolarDB 计算-存储分离Shared StorageMemoryCPUPrimary(读写节点)架构优势 扩展性:存储计算分离,极致弹性 成本:共享份数据,存储成本低 易性:写多读/透明读写分离,单机体验 可靠性:三副本、秒级备份MemoryCPUReadOnly(只读节点)MemoryCPUReadOnly(只读节点)计算-存储体Local StorageMemoryCP

3、UPrimary(读写节点)架构挑战 致性:1份存储+N份计算 读写分离:低延迟复制 可:快速Recovery和Failover IO模型:DirectIO1.PolarDB云原架构-模块栈libpfspolarvfs数据预读数据预扩展Persisted BufferPoolFull Page SnapshotWAL BufferWAL SenderLogIndexPageIDLSNWAL Meta QueueCSNRW节点存储层缓存层志层PageIDLSN事务层libpfspolarvfs数据预读数据预扩展Persisted BufferPoolFull Page SnapshotWAL B

4、ufferWAL SenderLogIndexPageIDLSNWAL Meta QueueCSNRO节点PageIDLSNWAL FileShared-Storage多版本Data FileLogIndex FileWAL FileWAL File多版本多版本Data FileData FileLogIndex FileLogIndex File模块栈-关键技术点 事务层:CSN快照 志层:复制WAL Meta、Lazy回放,并回放,LogIndex 缓存层:常驻BufferPool、多版本 存储层:DirectIO、数据预读、预扩展、PolarVFS1.PolarDB云原架构-数据致性内存

5、状态同步 WAL和Data被共享 仅需复制WAL Meta 基于共享的Data和WAL在内存中回放Shared-StorageReplica节点WAL100500Data200Shared-StorageWALMeta 100WALMeta 500100500Master节点500100500200+=问题:数据共享存储 会导致不致500100500200+=200UpdateLSN=200LSN=200500P1数据志数据Shared-StorageLSN=200600P1500P1500P1T1T2发送志200T3接收到并且回放志200T4T5再次从共享存储读取P11.回放位点LSN=20

6、0 2.Buffer淘汰后再次reload 3.期望看到最新的600,因为之前回放过了LSN=200数据此时P1是个“过去”的!P1从BufferPool中淘汰update 500-600时间不落盘RW节点RO节点UpdateLSN=200500P1600P1500P1UpdateLSN=200500P1600P1500此时P1是个“过去”的!1.PolarDB云原架构-数据致性问题1-“过去”“过去”备库在内存中回放得到的新被丢弃LogRecord=200P1Shared-StorageLSN=200P1DataFileRO节点LogRecord=400LogRecord=800LSN=40

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要介绍了阿里云的PolarDB for PostgreSQL数据库架构。PolarDB是一种云原生数据库,具有高扩展性、低成本、易用性以及高可靠性等特点。其计算存储分离的架构使得存储计算可以弹性扩展,并且通过共享存储和多版本页面技术实现了数据一致性。PolarDB还支持HTAP架构,即同时支持事务处理和分析处理,可以在毫秒级提供数据新鲜度。文章中还提到了PolarDB的源代码已经开源,并且提供了丰富的文档和视频资料,以便用户更好地了解和使用PolarDB。
"PolarDB如何实现云原生架构?" "PolarDB的HTAP架构有何优势?" "PolarDB如何处理数据一致性问题?"
客服
商务合作
小程序
服务号
折叠