Postgresql 将on-prem数据库迁移到AWS Aurora

Postgresql 将on-prem数据库迁移到AWS Aurora,postgresql,amazon-web-services,amazon-rds,amazon-aurora,Postgresql,Amazon Web Services,Amazon Rds,Amazon Aurora,我有一个本地运行的postgres数据库,我想迁移到AWS Aurora(或AWS postgres) 我已经pg_dump'd了我想要的数据库,压缩了~30gb 我应该如何上载此文件并从中获取AWS RDS实例到pg_restore 要求: 没有其他人使用数据库,因此我们可以在数据库上进行大量的停机和独占锁定。我们希望迁移成本尽可能低 到目前为止我所尝试/看到的: 在具有远程目标的本地文件上运行pg_restore-未知定价总额 我也希望这样做尽可能便宜,我不知道我是否了解他们的定价策略

我有一个本地运行的postgres数据库,我想迁移到AWS Aurora(或AWS postgres)

我已经
pg_dump
'd了我想要的数据库,压缩了~30gb

我应该如何上载此文件并从中获取AWS RDS实例到
pg_restore

要求:

没有其他人使用数据库,因此我们可以在数据库上进行大量的停机和独占锁定。我们希望迁移成本尽可能低

到目前为止我所尝试/看到的:

  • 在具有远程目标的本地文件上运行
    pg_restore
    -未知定价总额
我也希望这样做尽可能便宜,我不知道我是否了解他们的定价策略

他们的定价是:

Storage Rate            $0.10 per GB-month
I/O Rate                $0.20 per 1 million requests
Replicated Write I/Os   $0.20 per million replicated write I/Os
pg_restore
是否会算作一个请求?数据库有大约22亿个条目,如果每个条目都是一个请求,那么仅仅重新创建数据库就需要440美元吗

  • AWS数据库迁移服务-看起来这将是最便宜的(因为它是免费的?),但它只能通过连接到本地数据库来工作。未压缩的数据约为200gb,我不确定使用DMS进行一对一拷贝是否有意义

  • 我已经读过了,但我仍然不清楚迁移的最佳方式

我们可以花点时间,我们只想尽可能便宜


提前谢谢

迁移时,您应该注意以下几点

AWS数据库迁移服务-看起来这将是最便宜的(因为它是免费的?)

他们免费提供的服务是一个虚拟机(包括软件),提供计算能力和功能,将数据库移动到他们的一些RDS服务

即使该服务是免费的,您使用任何RDS都将收取正常费用

他们提供的数量大致与他们用于为您的数据提供服务的EBS(底层磁盘)相关。一个非常大且复杂的查询可能需要一些I/O,两者并不相等。 可以看到EBS使用的估计

例如,一个中型网站数据库的大小可能为100GB,并且在一个月的时间内平均每秒会有100I/O。这将转化为每月10美元的存储成本(100 GB x 0.10美元/月),以及每月约26美元的请求成本(约260万秒/月x 100 I/O/秒*,每百万I/O 0.10美元)


我个人的建议是:只使用部分数据库克隆数据库(可能是5%)。在那块上使用DMS。你可以在几分钟内看到账单对你的作用。然后,您可以估算一次完整的数据库迁移的价格,不管怎样,传入的数据都是免费的,因此一次简单的
pg_还原
(如果可能,允许多线程使用
--format=directory--jobs=
)就可以很好地完成这项工作。在任何情况下,您都将收取I/O和存储费用。为了减少I/O的数量,您可以在创建转储之前关闭日志记录(
ALTER TABLE xyz SET UNLOGGED;
),并在恢复后重新打开。