为什么还原我的 Amazon DynamoDB 表需要很长时间?

上次更新日期:2022 年 8 月 9 日

我正在尝试还原我的 Amazon DynamoDB 表,但还原过程需要很长时间。

解决方法

当您从备份中还原 DynamoDB 表时,在大多数情况下,还原过程将在不到一小时的时间内完成。但是,还原时间与表的配置直接相关,例如表的大小、底层分区的数量以及其他相关变量。当您规划灾难发现时,最好定期记录平均还原完成时间,并确定这些时间对您的总体还原时间目标有何影响。

DynamoDB 还原表所需的时间因多种因素而异,不一定与表的大小直接相关。如果您的表包含严重偏斜的数据并包含二级索引,那么还原时间可能会增加。当还原过程正在进行时,表的状态为正在还原。还原完成后,该表的状态将显示为 活跃。DynamoDB 中的所有备份都能正常工作,而不会占用表上的任何预配置吞吐量。

从备份中还原 DynamoDB 表时,请记住以下几点:

  • 还原时间不一定与表的大小直接相关。
  • 当您对 DynamoDB 表执行时间点还原时,无论表的大小如何,还原过程都至少需要 20 分钟。这是因为还原完成后,DynamoDB 需要时间来预置所有资源以创建新表,并启动还原过程以复制实际数据。
  • 如果表中的数据均匀分布,那么还原时间就与按项目数计算的最大单分区成正比。
  • 如果数据偏斜,则还原时间可能会因潜在的热键节流而增加。例如,如果表的主键使用一年中的月份进行分区,而您的所有数据均来自 12 月,那么就出现了倾斜数据。
  • 如果您不创建二级索引,那么表的还原可能会更快且更具成本效益。
  • 无法比较具有不同模式和数据的两个不同表的还原时间。这是因为表的还原时间取决于分区层面的数据偏斜度。

这篇文章对您有帮助吗?


您是否需要账单或技术支持?