PolarDB for PostgreSQL 开源必读手册-开源PolarDB for PostgreSQL架构介绍(下)

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介: PolarDB for PostgreSQL 开源必读手册-开源PolarDB for PostgreSQL架构介绍

接上篇:https://developer.aliyun.com/article/1223113?spm=a2c6h.13148508.setting.28.44ec4f0eNvAByn


二、 PolarDB企业级特性

 

image.png

PolarDB还实现了企业级特性。

 

架构方面,支持存储计算分离架构、HTAP架构以及三节点高可用架构。

 

 

1. 性能方面

 

实现了CSN快照用于解决单核场景下,随着核数增加其性能线性扩展的问题

实现了WAL Pipeline功能,加速WAL日志的写入,提高写入吞吐量

实现了预读和预扩展功能,一般做分析查询时需要大量扫描,而预读功能可尽可能地发挥共享存储大带宽的特性

实现了RelSizeCache,查询时首先需要得到文件大小,此功能实现了对文件的元数据做缓存

实现了CLOG优化以及FullPageWrite优化,主要为通过LogIndex以及页面多版本彻底避免FullPage的问题。FullPage在PolarDB里有两种解法。

 

解法一:如果共享存储提供了8k或8k以上的原子写,可直接将FullPage关闭。因为共享存储是软件定义的存储,其原子写可以大于硬件的页面单元。

解法二如果共享存储原子写在8k以下,可以使用页面多版本,将FullPage内容从WAL日志剥离,即可大幅减少WAL日志容量。

 

2. 高可用方面

 

实现了DataMax,DataMax指logger节点,可以通过配置文件将PolarDB部署成只存储WAL日志,不存储数据页面。再配合X-Paxos即可实现两地三中心的部署架构。

实现了Online Promote,原生做HA切换时需要重启,而我们通过Online Promote实现了在线将备库切换为主库,进程无需重启

实现了延迟回放和并行回放,能够降低主备之间的复制延迟,经过测试,在高压力情况下,可实现毫秒延迟。

实现了常驻BufferPool,数据库BufferPool做重启时,BufferPool的内存会丢失,导致数据库重启后需要花费长时间做预热。而常驻BufferPool将BufferPool内容剥离,放至共享存储,不会随着进程重启被销毁,维护了buffer的可用性。

实现了Replication Slot持久化功能,能够避免备库变成主库之后replication slot的丢失。

实现了算子级别内存控制。执行分析性查询时,某些算子会占用大量内存,导致内存膨胀,最终导致OOM。而算子级别内存控制可以精细控制每个算子的内存使用上限。

 

安全方面,实现了TDE透明加密功能。支持AES 128、256以及国密SM4算法。

 

三、 PolarDB开源社区

 

image.png

 

PolarDB在2021年云栖大会之前对所有内核代码全部做了开源,包括PolarDB内核、PolarDB分布式文件系统以及PolarDB云管控,我们始终坚持100%兼容社区的PostgreSQL。

 

开源代码与公有云上代码一致,经过了云上客户以及内部测试人员的大量验证,代码质量极高,用户可以直接将其部署在自己的生产环境中使用。

 

image.png

 

PolarDB在开源的同时,还提供了丰富的文档和视频资料,比如整体架构文档介绍、核心功能原理解析、快速入门文档以及每周的钉钉群PolarDB内核原理解析。

 

 


相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
2月前
|
NoSQL 关系型数据库 MySQL
微服务架构下的数据库选择:MySQL、PostgreSQL 还是 NoSQL?
在微服务架构中,数据库的选择至关重要。不同类型的数据库适用于不同的需求和场景。在本文章中,我们将深入探讨传统的关系型数据库(如 MySQL 和 PostgreSQL)与现代 NoSQL 数据库的优劣势,并分析在微服务架构下的最佳实践。
|
29天前
|
人工智能 运维 自然语言处理
对话蚂蚁开源蒋炜:让 Agent 把运维人员从 24 小时的待命中解放出来
当整个行业的智慧都集中在一件事情上时,比起闭门造车,开源一定能带来更好的技术迭代和发展。CodeFuse 「编码挑战季」活动火热进行中,诚邀广大开发者们参与编码挑战
106 3
对话蚂蚁开源蒋炜:让 Agent 把运维人员从 24 小时的待命中解放出来
|
23天前
|
数据库
|
28天前
|
存储 关系型数据库 MySQL
MySQL vs. PostgreSQL:选择适合你的开源数据库
在众多开源数据库中,MySQL和PostgreSQL无疑是最受欢迎的两个。它们都有着强大的功能、广泛的社区支持和丰富的生态系统。然而,它们在设计理念、性能特点、功能特性等方面存在着显著的差异。本文将从这三个方面对MySQL和PostgreSQL进行比较,以帮助您选择更适合您需求的开源数据库。
104 4
|
1月前
|
人工智能 自然语言处理 关系型数据库
阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成
近日,阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成。
|
1月前
|
Web App开发 运维 安全
1Panel:一个现代化、开源的 Linux 服务器运维管理面板
1Panel:一个现代化、开源的 Linux 服务器运维管理面板
|
2月前
|
关系型数据库 分布式数据库 数据库
开源云原生数据库PolarDB PostgreSQL 15兼容版本正式发布
PolarDB进行了深度的内核优化,从而实现以更低的成本提供商业数据库的性能。
|
3月前
|
运维 监控 关系型数据库
【一文搞懂PGSQL】7. PostgreSQL + repmgr + witness 高可用架构
该文档介绍了如何构建基于PostgreSQL的高可用架构,利用repmgr进行集群管理和故障转移,并引入witness节点增强网络故障检测能力。repmgr是一款轻量级的开源工具,支持一键部署、自动故障转移及分布式节点管理。文档详细描述了环境搭建步骤,包括配置postgresql参数、安装与配置repmgr、注册集群节点以及配置witness节点等。此外,还提供了故障手动与自动切换的方法及常用命令,确保集群稳定运行。
|
3月前
|
运维 Kubernetes 监控
|
4月前
|
关系型数据库 分布式数据库 数据库
PolarDB产品使用问题之如何进行PostgreSQL(简称PG)的全量和增量备份管理
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。

相关产品

  • 云原生数据库 PolarDB
  • 下一篇
    无影云桌面