QCon 演讲火热征集中,快来分享你的技术实践与洞见! 了解详情
写点什么

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

  • 2019-01-11
  • 本文字数:1081 字

    阅读完需:约 4 分钟

英国卫报联手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 迁移也是使用类似的方法完成的。为了跟踪迁移过程,迁移脚本日志被推送到 Elasticsearch。在此过程中,他们还改进了他们的结构化日志。


代理实时地将所有流量定向到 MongoDB API,并异步地定向到 Postgres API。响应中的任何差异都会被记录并分析。为了确保新的 API 和后端能够支撑生产流量,他们运行 GoReplay 进程来生成流量。GoReplay 可以捕获流量,并在不同的环境下进行回放——在本例中是预生产环境。他们在预生产环境上完成了完整的迁移过程。生产迁移的最后一步是将 DNS 名称从代理的端点(一个 Amazon ELB)切换到 Postgres API(另一个 ELB)。这使得它们的客户端可以在不做任何更改的情况下正常工作。迁移之后,他们的集成测试失败了,因为他们没有迁移到新的 API。


还有其他一些组织出于各种原因从 MongoDB 迁移到了 PostgreSQL。


查看英文原文:The Guardian’s Migration From MongoDB to PostgreSQL on Amazon RDS


2019-01-11 10:377200
用户头像

发布了 746 篇内容, 共 488.5 次阅读, 收获喜欢 1552 次。

关注

评论

发布
暂无评论
发现更多内容

Js数组&高阶函数

不在线第一只蜗牛

JavaScript 前端

当三位神话人物,穿越到智能视频新视界……

白洞计划

AI 音视频

什么样的云桌面套餐适合按需计费的用户?

青椒云云电脑

云桌面

全球CDN加速的优势与作用

HUODUNYUN

CDN CDN加速 CDN技术 CDN网络加速 全球CDN

Spring Boot 的执行器是什么?

我爱娃哈哈😍

微服务 执行器 spring-boot

低代码突破:工业领域应用的潜力与难题解析!

不在线第一只蜗牛

低代码

计划建设数据中台前,这些问题要提前考虑

Aloudata

数据中台 数据仓库 数据虚拟化 noetl

1017关键词 | Nvidia模型超越GPT-4 | 全模态框架发布 | ChatGPT访问量超必应

言寡意多

传奇服务器遭遇袭击,广大玩家需密切关注

网络安全服务

服务器 DDoS 带宽 传奇

2024年最佳云桌面服务:为远程工作者量身定制

青椒云云电脑

云桌面 云桌面厂家

2023开年力作!《流程挖掘白皮书》重磅发布

望繁信科技

数字化转型 流程挖掘 流程资产 流程智能 望繁信科技

澜舟科技新突破:大模型实现“持续学习”,应用成本大幅降低

澜舟孟子开源社区

人工智能 持续学习 企业服务

快速开发体育直播平台教程,源码助你一天内上线运营!

软件开发-梦幻运营部

一个挑战与万种答案:OPPO智慧服务的时代之桥

脑极体

AI

【直播预约】下周四大咖云集,不见不散!运维生态直播之“可观测技术实践”等你来~

乘云数字DataBuff

可观测性 zabbix oceanbase 应用性能监控 一体化可观测平台Databuff

Databend 产品月报(2024年9月)

Databend

顶级云桌面套餐:远程办公的终极指南

青椒云云电脑

云桌面 云桌面方案 云桌面系统

淘宝天猫商品评论数据接口 —— 电商决策的宝贵资源

tbapi

淘宝API接口 淘宝商品评论数据接口 天猫商品评论数据接口

5大提升工作效率的桌面软件,深度评测!

秃头小帅oi

专业对比:Project项目管理系统国内外8款热门工具

爱吃小舅的鱼

StarRocks Lakehouse 快速入门——Hive Catalog

StarRocks

数据库 hive LakeHouse

实操上手TinyEngine低代码引擎插件化开发

OpenTiny社区

开源 前端 插件化 OpenTiny 低代码引擎

C# 并发控制框架:单线程环境下实现每秒百万级调度

快乐非自愿限量之名

C# 前端框架

如何利用海外服务器推广国际业务?

Ogcloud

云服务器 服务器租用 海外服务器 海外高防服务器 海外云服务器

怎么提升国外服务器访问速度?实用技巧分享

Ogcloud

网络加速 国外服务器 服务器加速

一文搞懂应用架构的3个核心概念

快乐非自愿限量之名

架构 开发

如何让数据清洗工作变得简单

RestCloud

数据同步 ETL 数据清洗 数据集成平台

IT行业还有未来吗?

程序员高级码农

程序员 互联网 计算机 #编程

干货分享|工作8年,我的职场成长笔记

京东零售技术

技术成长

复旦大学全球供应链研究中心揭牌,合合信息共话大数据赋能

合合技术团队

大数据‘’

理解 Spring Boot

我爱娃哈哈😍

微服务 spring-boot

英国卫报联手AWS:从MongoDB迁移到PostgreSQL_数据库_Hrishikesh Barua_InfoQ精选文章