Oracle迁移至PG,如何保障数据库的高可用和可持续性?

近些年来,金融行业的核心业务系统逐步在向信创的数据库迁移,前面介绍了相关的业务解耦和数据迁移,功能实现的同事,我们希望可以做好日常的运维支持保障工作,那数据库的高可用和连续性是个避不开的话题,Oracle在高可用方面提供了较多的解决方案,还请老师帮忙介绍一下PG在高可用方面与Oracle的一个对比和可能采用的方案,感谢!

参与21

3同行回答

yyf123yyf123联盟成员系统工程师威海市商业银行
PG目前国内华为开放了数据库的核心功能,如果不加改进,只能使用命令行与之交互,其他的图形、容灾等需要引入者自行开发。PG在金融行业一般建议以商业产品的形式引入,而不是引入开源的PG。对数据库的开发要求较高,投入较大,金融企业作为应用单位,投入产出比太低。PG的商业产品有华...显示全部

PG目前国内华为开放了数据库的核心功能,如果不加改进,只能使用命令行与之交互,其他的图形、容灾等需要引入者自行开发。
PG在金融行业一般建议以商业产品的形式引入,而不是引入开源的PG。对数据库的开发要求较高,投入较大,金融企业作为应用单位,投入产出比太低。
PG的商业产品有华为高斯数据库、人大金仓等,目前应用较多,产品高可用、容灾也基本具备。
以金仓为例,oracle的dg、adg这类流复制的方案以及ogg的这类逻辑复制的方案基本都有,在灾备上,同城的灾备也可以达到中心级自动切换的效果;总结来说就是oracle高可用的功能和方案基本都对等具备

收起
银行 · 2023-09-21
浏览456
wangzk0206wangzk0206数据库管理员scrcu
1: 基于SAN存储的HA架构基本上都是有的。与oracle类似2: 基于日志复制的HA架构也是与oracle类似的,也是存在的3: 最难的就是RAC这种高可用架构,好像目前开源的PG没有实现RAC这种高可用架构,但基于中间件层面(pgpool类似)的高可用还是多少可比性的。4: 像国产的PG条线数据库,在...显示全部

1: 基于SAN存储的HA架构基本上都是有的。与oracle类似
2: 基于日志复制的HA架构也是与oracle类似的,也是存在的
3: 最难的就是RAC这种高可用架构,好像目前开源的PG没有实现RAC这种高可用架构,但基于中间件层面(pgpool类似)的高可用还是多少可比性的。
4: 像国产的PG条线数据库,在高可用方面都是下了很大功夫的。自动切换能力都是具备的,可以重点关注下自己选择的PG数据库。

收起
银行 · 2023-09-20
浏览503
陳vino 邀答
austindatabaseaustindatabase数据库架构师互联网金融
首选两者数据库产品的定位不同,开源产品需要有一定的更高维度的运行维护和原理的理解能力,金融机构原有的外包形式,和不培养技术人员的方式,对于开源数据库本身就是一个不利的因素。PG 需要更精通的技术人员,同时在数据库层面应有二次开发,通过二次开发在监控,高可用方面提供更...显示全部

首选两者数据库产品的定位不同,开源产品需要有一定的更高维度的运行维护和原理的理解能力,金融机构原有的外包形式,和不培养技术人员的方式,对于开源数据库本身就是一个不利的因素。

PG 需要更精通的技术人员,同时在数据库层面应有二次开发,通过二次开发在监控,高可用方面提供更大维度的保障。同时开源提供的方案,未必适合金融级别的企业,例如Patroni 本身为基于ETCD 的基于RAFT分布式协议,网络的波动都会导致切换,如何优化相关的参数,适合本企业的硬件结构还需要进行研讨和测试以及后期逐步的参数调整。

收起
互联网服务 · 2023-09-15
浏览517

ChatGPT 回答

在数据库高可用方面,Oracle和PostgreSQL都提供了多种解决方案。下面是Oracle和PostgreSQL在高可用方面的对比:

  1. 集群方案

Oracle提供了Real Application Cluster(RAC)集群方案,可以将多个Oracle实例组成一个集群,实现负载均衡和故障转移。PostgreSQL也提供了类似的解决方案,例如PostgreSQL的pgpool-II和pgCluster等。

  1. 数据复制方案

Oracle提供了Data Guard数据复制方案,可以将主数据库的数据复制到一个或多个备库中,实现数据的备份和故障转移。PostgreSQL也提供了类似的解决方案,例如PostgreSQL的流复制和逻辑复制等。

  1. 容灾方案

Oracle提供了Oracle Data Guard和Oracle GoldenGate等容灾方案,可以实现跨数据中心的数据备份和故障转移。PostgreSQL也提供了类似的解决方案,例如PostgreSQL的pglogical和BDR等。

  1. 自动故障转移方案

Oracle提供了Oracle Clusterware和Oracle Restart等自动故障转移方案,可以自动检测故障并将服务转移到备用节点上。PostgreSQL也提供了类似的解决方案,例如PostgreSQL的pg_auto_failover等。

基于以上对比,可以看出Oracle在高可用方面提供了更多的解决方案,但PostgreSQL也提供了类似的解决方案,并且在某些方面比Oracle更加灵活和易于使用。因此,具体采用哪种方案需要根据实际情况进行选择。

对于采用PostgreSQL的高可用方案,可以考虑使用pgpool-II和pgCluster等集群方案,使用流复制和逻辑复制等数据复制方案,使用pglogical和BDR等容灾方案,使用pg_auto_failover等自动故障转移方案。同时,还需要进行合理的架构设计和配置,以确保系统的高可用性和连续性。

提问者

xiaoyuxiaoxue
技术总监千合资本管理有限公司

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2023-09-13
  • 关注会员:4 人
  • 问题浏览:1481
  • 最近回答:2023-09-21
  • X社区推广