版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
云原生PG数据库Serverless技术解析耿倞
(索久)阿里云PolarDBfor
PostgreSQL高级技术专家IvorySQL
2025生态大会暨PostgreSQL高峰论坛PolarDB
for
PostgreSQL云原生架构PolarDB
for
PostgreSQL
ServerlessIvorySQL
2025生态大会暨PostgreSQL高峰论坛目录Neon
ServerlessCONTENTSPolarDB
for
PostgreSQL云原生架构IvorySQL
2025生态大会暨PostgreSQL高峰论坛高可用:
毫秒级延迟,
秒级切换弹性
:存算分离,
独立弹升性能:
多节点并行,
IO带宽高成本
:共享一份数据,
存储成本低扩展性
:一写多读,
读写分离,
读副本延迟低可靠性
:存储三副本
、秒级备份PolarDB云原生架构IvorySQL
2025生态大会暨PostgreSQL高峰论坛PolarFSPolarFSPolarFSPolarFSShredStorage共享存储Primary主节点CPUMemoryLocalStorageStandby备节点CPURW读写节点CPUMemoryRO只读节点CPUMemory原生PostgreSQL
PolarDB
PostgreSQL云原生架构同步机制WALMetaIvorySQL
2025生态大会暨PostgreSQL高峰论坛MemoryLocalStorageChunkChunkChunkWALWALWALRW•
WAL直接写入共享存储数据页异步写入至共享存储.•
抽取WAL中page
id和LSN(WAL
Meta)同步到RO•
RO完成同步后,数据页异步写入至共享存储.
RO•
根据WAL
Meta构建Key为page
id,Value为LSN链表的哈希表
(LogIndex),
即完成同步,
同步过程无存储IO•
RO读数据页时再根据Logindex
+WAL回放到最新即可WALWAL
MetaWAL
Meta:
从单条WAL中抽出page
id和LSNLogIndex:
根据WAL
Meta构建以page
id为key,
LSN链表为value的Hash表,
方便一次性找到指定数据页的所有变更ModifyPageAModifyPageALSN1LSN3
LSN5LSN7云原生架构同步机制ModifyPageAModifyPageAIvorySQL
2025生态大会暨PostgreSQL高峰论坛Data
PagePageALSN1Data
PagePageALSN1LSN3
PageALSN7
PageARW
ROPageALSN
7LSN1LSN3
LSN5LSN7RW->
RO
同步流程PageAWALLSN3
PageALSN7
PageALSN3LSN7LogIndexData
PageLogindexWALWALStoragePolarDB
for
PostgreSQL
ServerlessIvorySQL
2025生态大会暨PostgreSQL高峰论坛业务周期性:日间夜间流量有波峰波谷峰值负载高:
电商大促
SaaS
Tenant
3Tenant
5Tenant2Tenant1Tenant
6Tenant
4需求:
资源随负载弹性变化弹得快
、弹得稳
、弹得准
、弹得广SaaS:租户多,
业务波动
明显,
流量不可预测Serverless:
场景Serverless
弹性资源规格负载需求时间IvorySQL
2025生态大会暨PostgreSQL高峰论坛Serverless集群资源资源单位:
1
PCU
(PolarDB
Capacity
Unit)
=
1C2G弹升与挑战:-Scale
Up/Down
纵向弹:
社区PostgreSQL不支持共享内存动态扩缩容-Scale
Up/Down
跨机弹:
需要走高可用切换方案,
如何做到无感-Scale
In/Out横向弹:
RO一致性弱,
导致负载上不去4
PCUScaleUp4
PCUScaleUpSharedStorage2
PCU22Serverless:
定义与挑战PCUBuffer
PoolPCUBuffer
PoolWALBuffer
PoolWALWALIvorySQL
2025生态大会暨PostgreSQL高峰论坛ScaleOutRWRORO原理BufferPoolfreelistgranual
3 enlargespinlock新buffer添加仅需在串联进freeIist时加一次spin
Iock。纵向弹升:Buffer
Pool
Online
ResizeBuffer
PooIDynamic
Shared
Memory社区PostgreSQL共享内存无法支持在线扩缩容IvorySQL
2025生态大会暨PostgreSQL高峰论坛连续20次扩缩容,性能无抖动10
11
-1granual
0效果granual
2granual
1371LSN4LSN2PageCPageDLogindexTableLSN6LSN8回放进程:-
仅需构建WAL
–
修改数据页的映射关系(logindex)-
无需读取数据页
数据页:-
由异步进程回放-
且可根据页间依赖关系,
并行执行Data
Page•-
RO:
Online
Promote-
Backup:跨机弹升:
切换后快速回放社区PG切换后必须串行回放完所有数据页才能提供服务Data
Page
WALapplyPage
D
LSN4
LSN8
-
RW:
Restart
/
Crash
Recovery-
Standby:
ReplayIvorySQL
2025生态大会暨PostgreSQL高峰论坛ParaIIeIRepIayWorker1ParaIIeI
RepIay
Worker2apply LSN2
LSN6Page
CLSN
1Page
DLSN
1ReplayStage
2ReplayStage
1Modify
PageCModify
PageDModifyP
ageCModify
PageD异步+
并行回放Data
PageWALWALStorageRO
->
RWRecovery应用场景Page
CLSN
1LSN6LSN8replayLSN
1LSN2LSN4sysbenchreadonly压力,切换后性能快速恢复目标:切换前后保持性能稳定场景:
Switch
Over
/
Fail
Over原理:-
RO构造当前Buffer
Pool中Page
ID的Bloom
Filter,
传递给RW-
RW根据自身的热Buffer与Bloom
Filter的差值,
将对应Page
ID传给RO-
RO再根据Page
ID列表页面读进Buffer
PoolRWPageIDBloom
FilterHot
PageIDShared
StorageBuffer
PoolBuffer
PoolRO跨机弹升:
性能稳定WALWALIvorySQL
2025生态大会暨PostgreSQL高峰论坛ROWarm
Buffer
Pool效果原理:代理保持住客户端连接,
后端数据库切换后重新连接,
续传事务场景:
Restart
/
Switch
Over(小版本升级
、变配)效果:
读写短时hang,
连接保持不断开RO
->
RWBuffer
PoolWALPolar
Proxy跨机弹升:
无感秒切RWBuffer
PoolWALConnection1
Transaction1Connection2
Transaction2IvorySQL
2025生态大会暨PostgreSQL高峰论坛连接保持
&
事务保持背景:•微服务架构时代,
服务间有强一致要求•RO资源无法充分利用,Serverless场景下无法横向弹升原理:•活跃事务列表快照
->
CSN(commit
sequence
number)快照•快照获取:
利用RDMA,
100us
->
20us•RO请求向RW请求最新快照,按需等待回放效果:•会话一致性强一致性•对RW性能无影响,
RO性能影响<10%Polar
ProxyWrite
ReadRWSnapshotCSN(uint64)Wait
ReplayWAL横向弹升:
全局一致性IvorySQL
2025生态大会暨PostgreSQL高峰论坛Connection1Connection2WriteReadWALCSNROServerless:
弹性能力总结1s资源采集间隔,
5秒决策连续弹升步长成指数增长多维度评估弹升弹降:
CPU/
内存
…RW
/
RO独立弹升弹降0.5
PCU的最细弹性粒度Scale
Up:
范围最大支持64PCUScale
Out:
支持最多15个RO,
总计1000+核弹得稳弹得广弹得快弹得准Buffer
Pool弹升无感跨机弹升连接保持IvorySQL
2025生态大会暨PostgreSQL高峰论坛Serverless:
整体效果Scale
Up
ScaleOutIvorySQL
2025生态大会暨PostgreSQL高峰论坛Neon
ServerlessIvorySQL
2025生态大会暨PostgreSQL高峰论坛•
Log
as
a
database,
same
asAWSAurora•
Serverless•
BranchingreadwriteNeon架构IvorySQL
2025生态大会暨PostgreSQL高峰论坛•
Autoscaler-agent•NeonVM:
QEMU(live
migration)ServerlessIvorySQL
2025生态大会暨PostgreSQL高峰论坛Neon计算节点弹性资源自动弹升
(Auto
Scaling)-
CPU
/
Memory:
自定义K8S
scheduler-Share
Buffer:local
file
cache(充分利用OS
page
cache)-
连接:
pgbouncer跨机
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年无锡市精神卫生中心勤学路门诊部医护人员招聘考试备考试题及答案详解
- 2026年南昌大学第一附属医院医护人员招聘笔试参考试题及答案详解
- 2026年山东省眼科医院医护人员招聘笔试参考题库及答案详解
- 2026年济南市中医院医护人员招聘笔试备考试题及答案详解
- 2026年长沙市按摩医院医护人员招聘考试参考试题及答案详解
- 2026年上海解放军455医院医护人员招聘笔试备考试题及答案详解
- 2026年国家开发银行(厦门分行)人员招聘考试备考试题及答案详解
- 2026年武警广东省总队医院医护人员招聘笔试备考题库及答案详解
- 2026年解放军第一七四医院医护人员招聘笔试参考试题及答案详解
- 2026年鹤岗市妇幼保健院医护人员招聘笔试参考试题及答案详解
- 2026上海虹口社工招聘考试试卷(带答案)
- (期末)测试卷2025-2026学年统编版七年级下册历史
- 2026年安全生产月活动启动部署和主题宣贯课件附讲义教案和案例
- 安全生产笔记摘抄
- 2026年基金销售行业分析报告及未来发展趋势报告
- 2026年4月自考13124英语(专)试题试题及答案
- 市政管网工程应急预案
- 2026年道路交通事故受伤人员临床诊疗指南
- 业务外包结算管理制度
- 致敬时代楷模:英雄事迹与精神传承
- 链家中介业务管理制度
评论
0/150
提交评论