排行
数据库百科
核心案例
行业报告
月度解读
大事记
产业图谱
中国数据库
向量数据库
时序数据库
实时数据库
搜索引擎
空间数据库
图数据库
数据仓库
大调查
2021年报告
2022年报告
年度数据库
2020年openGauss
2021年TiDB
2022年PolarDB
2023年OceanBase
首页
资讯
数说
活动
大会
学习
课程中心
推荐优质内容、热门课程
学习路径
预设学习计划、达成学习目标
知识图谱
综合了解技术体系知识点
课程库
快速筛选、搜索相关课程
视频学习
专业视频分享技术知识
电子文档
快速搜索阅览技术文档
文档
问答
服务
智能助手小墨
关于数据库相关的问题,您都可以问我
数据库巡检平台
脚本采集百余项,在线智能分析总结
SQLRUN
在线数据库即时SQL运行平台
数据库实训平台
实操环境、开箱即用、一键连接
数据库管理服务
汇聚顶级数据库专家,具备多数据库运维能力
数据库百科
核心案例
行业报告
月度解读
大事记
产业图谱
我的订单
登录后可立即获得以下权益
免费培训课程
收藏优质文章
疑难问题解答
下载专业文档
签到免费抽奖
提升成长等级
立即登录
登录
注册
登录
注册
首页
资讯
数说
活动
大会
课程
文档
排行
问答
我的订单
首页
专家团队
智能助手
在线工具
SQLRUN
在线数据库即时SQL运行平台
数据库在线实训平台
实操环境、开箱即用、一键连接
AWR分析
上传AWR报告,查看分析结果
SQL格式化
快速格式化绝大多数SQL语句
SQL审核
审核编写规范,提升执行效率
PLSQL解密
解密超4000字符的PL/SQL语句
OraC函数
查询Oracle C 函数的详细描述
智能助手小墨
关于数据库相关的问题,您都可以问我
精选案例
新闻资讯
云市场
登录后可立即获得以下权益
免费培训课程
收藏优质文章
疑难问题解答
下载专业文档
签到免费抽奖
提升成长等级
立即登录
登录
注册
登录
注册
首页
专家团队
智能助手
精选案例
新闻资讯
云市场
微信扫码
复制链接
新浪微博
分享数说
采集到收藏夹
分享到数说
首页
/
PolarDB架构解析
PolarDB架构解析
数据库好文推荐
2021-04-15
2036
2020年11月24日,国际知名行业研究机构Gatner公布2020年全球云数据库魔力象限评估结果,阿里云首次挺进全球云数据库第一阵营--领导者(LEADERS)象限。Gatner分析师评价道:阿里云产品上具备强大的创新能力,其数据库PolarDB已全面应用于零售,电信,物流,金融等多个行业。在云原生关系型数据库领域PolarDB的全球部署能力,分析师认为达到了国际领先水平。
云原生关系型数据库PolarDB是阿里巴巴自主研发的下一代云原生关系型数据库,100%兼容MySQL、PostgreSQL、高度兼容Oracle语法。计算能力最高可扩展至1000核以上,存储容量最高可达 100TB,在新的架构中可以达到PB级。经过阿里巴巴双十一活动的最佳实践,让用户既享受到开源的灵活性与价格的优惠,又享受到商业数据库的高性能和安全性。
PolarDB整体架构
PolarDB整体架构上也可以分为三个部分:Proxy层(PolarDB的接入层), PolarDB计算层(支持MySQL,PostgreSQL,Oracle), PolarDB存储层。
PolarDB的本身的生态非常丰富包含:
下面我们更多的关注在PolarDB-MySQL , PolarDB-X这两个上面。
下面我们对PolarDB-MySQL集群架构做一个分析,最后附带一些PolarDB-2.0的介绍。
PolarDB MySQL集群整体架构
PolarDB Proxy
连接地址,SQL转发,保证事务的一致性,无持久化存储东西。100% MySQL协兼容,多个连接地址,可以起到业务资源隔离,可以一个Proxy访问后面多个计算节点,实现读写分离,多个节点自动负载均衡,应用访问的一致性保障。
通过Proxy层把不同的业务用不同的连接地址,使用不同的数据节点,避免相互影响。并行查询可以在客户端对指定的SQL开启,不会影响核心业务。
PolarDB 计算节点
在该节点支持MySQL, Pg, Oracle相关语法,无持久化存储数据。 该节点主要用于:SQL解析,事务执行及保证,Query Cache功能等。该节点约束:1个写节点Primary,1-15个只读节点Secondary。所有的节点数据共享,节省成本,物理日志复制,主备延迟<1秒,支持ParallelQuery,充分利用多核CPU的优势,主备切换数据0丢失。其中Primary节点也可以直接对外提供服务。
因为计算机节点无数据持久化,所以支持快速扩容。添加一个只读节点大概在5分钟内快速创建并提供服务。如果开启“自动扩容”,PolarDB会根据系统的负载高低,自动扩容或缩容,从而可以让用户更经济地使用PolarDB。
PolarDB 在计算层支持Fast Query Cache在8核64G配置4G的Cache内存查询性能可以提升50%以上。
在事务这块产生的Redo日志均实时写入共享存储,只读节点,利用存储上的数据文件和Redo日志,在内存中恢复最新的数据,对外提供服务。每一次主备故障切换,只读节点均可以从存储中获取最新的事务Redo日志,因此不会出现数据丢现象(RPO=0)
在计算节点这块PolarDB还有对应的MaxScale可以实现对慢SQL的自动改写及优化,从而自动提高SQL的执行效率。
PolarDB 存储层
单可用区3副本,双可用区6副本,ParallelRaft共识算法实现多副本强一致,秒级备份,且无需对数据库加锁,超低的延迟网络IO,利用25Gb的RDMA网络, Bypass Kerner的用用态协议支持。利用RDMA可以避免以太网的性能压力。
在存储层可以实现快速备份:不超过30秒(与容量无关),支持高频备份每个2个小时做一个备份,分钟级恢复:从全量备份到恢复,不超过10分钟。从全备份中可以部分恢复。
在备份中使用了Redirect-on-Write的方式,每次打快照并没真正的Copy数据,只有当数据块后期有修改了(write)时才把历史版本给保留给Snapshot,然后生成新的数据块,被原数据引用(Redirect),因此,不管数据库的容量是10G还是10TB,每次备备份(快照)均不超过30秒。但需要注意历史快照管理,以防止无限增大。
PolarDB的HTAP方案
在PolarDB中支持 Parallel Query, 慢SQL Rewrite, In-memory Column Index(全内存列式索引)
该方案对于OLAP计算节点,估计需要较大的内存,且MySQL版本要选择MySQL 8.0以上。
全球化部署方案
多个PolarDB对外看起来就是一个集群,但所有集群中只有一个能可以写,其它都是可读。最多支持5个集群,集群间数据同步延迟小于2秒。每个集群均支持读写,从集群会把写请求转给主集群,因此集群上的写请求会跨Region,延迟略高。
所以在PolarDB中对于两地三中心,三地六中心 这种架构支持非常好。多Region之间的流量传输目前是免费的。
PolarDB 2.0 (PolarDB-X)特性
到目前来看PolarDB在架构和性能上都在追求极值。但目前在一些业务开发中,动不动还是能在一个库中搞出来几百张表,SQL编写非常复杂,一个SQL上百,上千行,关联十几张表等情况。在PolarDB 2.0版本引入128个RW节点并行写入,库表写入点秒级切换。对于多节点,并发写入进一步的优化。该功能估计需要到2021年Q3才能上线。
备注: 以上解析参考外面公开资料,仅供参考。也欢迎使用过PolarDB或是Auror 的朋友提供使用,评测相关文章投稿&交聊。
polardb
文章转载自
数据库好文推荐
,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
领墨值
有奖问卷
意见反馈
客服小墨