英国卫报联手AWS:从MongoDB迁移到PostgreSQL

为了获得一个全托管的解决方案,英国卫报在2018年将CMS的数据存储从一个自托管的MongoDB集群迁移到了Amazon RDS上的PostgreSQL。团队在没有停机的情况下进行了基于API的迁移。

英国卫报的内部CMS(名为Composer)存储着文章、博客内容、照片库和视频,它最初是以MongoDB为数据存储构建的。在此之前,用的是一个后台是Oracle数据库的供应商软件。在这种设置下,每当必须迁移模式时,都需要停机时间。作为替代方案,团队研究了各种NoSQL数据库,选择MongoDB的其中一个关键原因似乎是灵活性。MongoDB最初托管在他们自己的数据中心里,在一次宕机后,他们将其转移到了AWS服务器上。安装和管理脚本必须由卫报的团队手写。他们选择了一项支持合同,并购买了OpsManager工具,这是一个管理MongoDB的前端应用程序。然而,不清楚因为什么原因,该团队没有选择MongoDB Atlas服务,这是一个“全托管的数据库”。OpsManager不管理部署。

在迁移到AWS之后,团队遇到了两次MongoDB宕机。其中一些原因是基本的系统管理问题,比如不允许NTP访问时间服务器以保持时钟同步。根据这篇文章,还有一些和OpsManager本身管理困难以及很难从供应商那里获得及时的支持有关。其团队觉得,迁移到需要最少数据库管理工作的解决方案最适合他们。

该团队选择PostgreSQL的原因是,作为Amazon RDS上的托管数据库,它非常成熟,而且支持jsonb数据类型。Jsonb类型允许对JSON对象中的字段进行索引。迁移计划是在Postgres上编写一个新的API,并使用一个代理向这两个API发送流量,使它们对于新传入的数据保持同步。使用API迁移现有数据,然后将代理切换到新的API。他们之前从Oracle迁移也是使用类似的方法完成的。为了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值