AWS DMS复制实例内存不足

时间:2019-05-12 13:31:08

标签: amazon-web-services aws-dms

我最近开始使用AWS Data Migration Service(DMS),遇到了一些问题。

当前正在尝试将10GB Oracle DB迁移到AWS RDS Postgres。有效,但具有疯狂的(?)内存要求。感觉好像它会将整个数据库加载到内存中……从dms.r4.large(15.5GB)开始,但在can not allocate memory之后才开始。 98%....使用dms.r4.xlarge(30.5GB)可以流畅运行

memory consumption during replication task run

如您在屏幕快照中所见(可释放内存,最小),在任务完成(或崩溃)之前,实例在所有内存释放之前一直处于“满”状态。

是否有任何设置可以更改此设置,为什么会如此显示?这使整个任务变得不必要的昂贵...

1 个答案:

答案 0 :(得分:1)

AWS确认,这确实是最新引擎(v3.1.3)的错误。 AWS提供了以下其他信息来估计实际的内存需求:

  

全LOB模式(使用单行插入+更新,提交率)

     

内存:(表中的lob列数)x(并行表的数量,   默认值为8)x(lob块大小)x(满载时的提交速率)= 2   * 8 * 64(k)* 10000k

     

注意:您可以考虑降低“满载期间的提交率”   值,因为我们大致使用上述方法分配内存

     

有限的LOB模式(使用数组)

     

内存:(表中的lob列数)x(表中的表数   并行,默认为8)x maxlobSize x bulkArraySize = 2 * 8 * 4096(k)   * 1000