这些高可用架构,堪称PostgreSQL华佗

这篇具有很好参考价值的文章主要介绍了这些高可用架构,堪称PostgreSQL华佗。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

📢📢📢📣📣📣
哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验
一位上进心十足的【大数据领域博主】!😜😜😜
中国DBA联盟(ACDU)成员,目前服务于工业互联网
擅长主流Oracle、MySQL、PG、高斯及Greenplum运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
✨ 如果有对【数据库】感兴趣的【小可爱】,欢迎关注【IT邦德】💞💞💞
❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️

前言

本文对PostgreSQL华佗的高可用架构做了详细的阐述,均来自真实的企业生产环境

📣 1.Citus实现的分布式集群

Citus是一个PostgreSQL扩展,它将Postgres转换为分布式数据库,因此您可以在任何规模上实现高性能。
可以使用这些Citus超能力使您的Postgres数据库在单个Citus节点上扩展。或者,您可以构建一个能够处理高交易吞吐量的大型集群,尤其是在多租户应用程序中,运行快速分析查询,并处理大量时间序列或物联网数据进行实时分析。当数据大小和数量增长时,可以轻松地向集群中添加更多的工作节点并重新平衡碎片。

使用Citus,您可以用新的超能力扩展PostgreSQL数据库:
1.分布式表在PostgreSQL节点集群中进行分片,
以组合它们的CPU、内存、存储和I/O容量。
2.引用表被复制到所有节点,以便从分布式表中进行联接和外键,
从而获得最大的读取性能。
3.分布式查询引擎路由并并行化集群中分布式表上的SELECT、DML和其他操作。
4.列存储压缩数据,加快扫描速度,
并支持在常规表和分布式表上进行快速投影。
5.通过从任何节点进行查询,
您都可以利用集群的全部容量进行分布式查询

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

📣 2.OGG实现PG双主

OGG支持PostgreSQL数据库的初始化加载和事务数据的捕获和交付,俗话说就是针对于表的存量数据库和日志中的变化数据,捕获和交付对应于Extract和Replicat进程,翻译成中文可以“抽取”、“抓取”、“提取”,“投递”、“复制”、“应用”等等

通常来说OGG支持某种数据库,主要是针对于数据库的如下三个方面:
1.数据库本身的支持和限制:比如是否支持归档日志中抽取、
备库是否支持抽取、PostgreSQL的HA配置是否支持抽取等等。
2.数据库支持的数据类型:支持的数据类型和不支持的数据类型,
常用关系数据库的数据类型可能支持,
OGG针对数据库自带的一些或者高级的数据类型可能存在限制,比如json、pg_lsn等。
3.数据库支持的对象和操作:对象方面主要是指针对于表、
分区表、索引及序列的支持兼容特性。
而操作主要是针对DML(插入、更新和删除)、
DDL、truncate等操作的支持力度。

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

📣 3.Bucardo搭建PG的双主

Bucardo是PostgreSQL数据库中实现双向同步的软件,可以实现PostgreSQL数据库的双master的方案,不过bucardo中的同步都是异步的,它是通过触发器记录变化,程序是perl写的。Bucardo可以实现postgresql的多主复制、主从同步,甚至可以以postgresql为源库,可以和oracle、mysql、mongodb等很多数据库进行数据异步同步。

1.Bucardo 是基于表复制的系统,通过触发器记录变化,
同步的表必须有主键,不能同步DDL语句(truncate可以同步)。
2.Bucardo 可以实现PostgreSQL数据库的双master/多master的方案。
3.Bucardo的核心是一个Perl守护进程,它侦听通知请求并对其进行操作,
方法是连接到远程数据库并来回复制数据。

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

📣 4.主从的流复制

所谓流复制,就是备服务器通过tcp流从主服务器中同步相应的数据,主服务器在WAL记录产生时即将它们以流式传送给备服务器,而不必等到WAL文件被填充.

流复制场景:
√适合于单向同步。
√适合于任意事务,任意密度写(重度写)的同步。
√适合于HA、容灾、读写分离。
√适合于备库没有写,只有读的场景。

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

📣 5.Pgpool-II读写分离+负载均衡

Pgpool-II是一个在PostgreSQL服务器和PostgreSQL数据库客户端之间工作的中间件。Pgpool对服务器和应用来说几乎是透明的,现有的数据库应用程序基本上可以不需要更改就可以使用pgpool

pgpool工作进程:
Pcp进程:向pgpool发送管理命令的
父进程:负责检查数据库健康
Pgpool子进程:接受 发送sql
Work进程:检查延迟情况。
Pgpool logger:记录日志
Health Check:检查pg存活状态进程

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

📣 6.高可用之repmgr

repmgr是一个开源工具套件(类似于MySQL的MHA),用于管理PostgreSQL服务器集群中的复制和故障转移。它使用工具来增强PostgreSQL的内置热备份功能,以设置备用服务器,监控复制以及执行管理任务,例如故障转移或手动切换操作。

repmgr的特点是非常轻量,但功能全面:
监视主从流复制过程
自动故障切换和手动故障切换
支持分布式管理集群节点,易扩展,可以在线增加或者删除节点

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

📣 7.Keepalived实现PostgreSQL高可用

Keepalived可提供VRRP以及health-check功能,可以只用它提供双机浮动的vip(VRRP虚拟路由功能),这样可以简单实现一个双机热备高可用功能。

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

📣 8.高可用Patroni

Patroni 起源于Compose项目Governor的一个分支,Patroni采用DCS存储元数据,能够严格的保障元数据的一致性,可靠性高

其中Patroni不仅简单易用而且功能非常强大。
支持自动failover和按需switchover
支持一个和多个备节点
支持级联复制
支持同步复制,异步复制
支持同步复制下备库故障时自动降级为异步复制(功效类似于MySQL的半同步,但是更加智能)
支持控制指定节点是否参与选主,是否参与负载均衡以及是否可以成为同步备机
支持通过pg_rewind自动修复旧主
支持多种方式初始化集群和重建备机,包括pg_basebackup和支持wal_e,pgBackRest,barman等备份工具的自定义脚本
支持自定义外部callback脚本
支持REST API
支持通过watchdog防止脑裂
支持k8s,docker等容器化环境部署
支持多种常见DCS(Distributed Configuration Store)存储元数据,包括etcd,ZooKeeper,Consul,Kubernetes

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库

高可用(High Availability, HA)部署是提供可靠性服务的一种解决方案,对于大多数基于PostgreSQL数据库的系统来说是非常重要的,后期如果更多的PG的学习,可以关注CSDN IT邦德
点击左下角阅读原文跳转

这些高可用架构,堪称PostgreSQL华佗,数据库,架构,postgresql,数据库
https://blog.csdn.net/weixin_41645135/category_11595830.html文章来源地址https://www.toymoban.com/news/detail-775268.html

到了这里,关于这些高可用架构,堪称PostgreSQL华佗的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 【postgresql 基础入门】基础架构和命名空间层次,查看数据库对象再也不迷路

    ​ 专栏内容 : postgresql内核源码分析 手写数据库toadb 并发编程 ​ 开源贡献 : toadb开源库 个人主页 :我的主页 管理社区 :开源数据库 座右铭:天行健,君子以自强不息;地势坤,君子以厚德载物. 入门准备 postgrersql基础架构 快速使用 初始化集群 数据库服务管理 psql客户

    2024年02月09日
    浏览(33)
  • 【PostgreSQL架构】PostgreSQL的最佳群集高可用性方案

    转载:【PostgreSQL架构】PostgreSQL的最佳群集高可用性方案-腾讯云开发者社区-腾讯云 (tencent.com) 如果您的系统依赖PostgreSQL数据库并且您正在寻找HA的集群解决方案,我们希望提前告知您这是一项复杂的任务,但并非不可能实现。 我们将讨论一些解决方案,您可以从中选择对您

    2024年02月19日
    浏览(12)
  • 使用Docker构建的MySQL主从架构:高可用性数据库解决方案

    MySQL主从架构,我们已经在vmware虚拟机上实践过了,接下来我们一起探讨在docker中如何使用MySQL主从架构。 🏠个人主页:我是沐风晓月 🧑个人简介:大家好,我是沐风晓月,阿里云社区博客专家😉😉 💕 座右铭: 先努力成长自己,再帮助更多的人 ,一起加油进步🍺🍺🍺

    2024年02月08日
    浏览(11)
  • 网站架构演变、LNP+Mariadb数据库分离、Web服务器集群、Keepalived高可用

    目录 day02 深入理解程序的数据存储 验证 配置NFS服务器 配置代理服务器 配置名称解析 程序将文字数据保存到数据库中 程序将非文字数据(如图片、视频、压缩包等)保存到相应的文件目录中 验证 发一篇文章,文章内容包含文字和图片 在数据库中查看文字数据。在最新的一

    2024年02月20日
    浏览(13)
  • 构建高可用性数据库架构:深入探索Oracle Active Data Guard(ADG)

    随着企业数据规模的不断增长和业务的复杂化,数据库的高可用性和可靠性变得尤为重要。Oracle Active Data Guard(ADG)作为Oracle数据库提供的一种高可用性解决方案,在实时备份和灾难恢复方面发挥着重要作用。本文将深入探讨ADG的原理、配置步骤、优势以及故障处理方法,旨

    2024年04月15日
    浏览(51)
  • 【PostgreSQL 数据库技术峰会(成都站)】云原生虚拟数仓 PieCloudDB Database 的架构和关键模块实现...

    2023年6月17日,中国开源软件推进联盟 PostgreSQL 分会在成都举办了数据库技术峰会。此次峰会以“新机遇、新态势、新发展”为主题,结合当下信创热潮、人工智能等产业变革背景,探讨 PostgreSQL 数据库在这些新机遇下的发展前景。峰会邀请众多行业大咖、学术精英、技术专家

    2024年02月11日
    浏览(10)
  • 「数据库、数据库连接池、数据源」这些概念你真的理解了吗?

    我学习的过程中,对于连接池和数据源分得不是很清楚,而且我发现有的人将数据库等同于数据源,或者将数据源等同于连接池,实际上这些说法并不准确。 在某次工作中,同事 A 说道,这个数据源不行,那么换一个数据源就可以了,结果我看他操作,原来是改写了配置中的

    2023年04月21日
    浏览(12)
  • PostgreSQL Linux操作PostgreSQL数据库

    PostgreSQL教程 菜鸟教程:https://www.runoob.com/postgresql/postgresql-tutorial.html 登录PG数据库:psql -U 用户名(U需要大写) 登录PG数据库(指定主机、端口,并进入指定数据库): psql -U 用户名 -h 127.0.0.1 -p 5432 -d 数据库名 -U 登录的用户名 -h 连接的主机(默认127.0.0.1,可替换成远程主机

    2024年02月11日
    浏览(14)
  • postgresql|数据库|MySQL数据库向postgresql数据库迁移的工具pgloader的部署和初步使用

    postgresql|数据库|MySQL数据库向postgresql数据库迁移的工具pgloader的部署和初步使用

    MySQL数据库和postgresql数据库之间的差异并不多,这里的差异指的是对SQL语言的支持两者并不大,但底层的东西差异是非常多的,例如,MySQL的innodb引擎概念,数据库用户管理,这些和postgresql相比是完全不同的(MySQL用户就是用户,没有角色,postgresql有用户,有角色,但差异不

    2024年02月14日
    浏览(17)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包