确定您正在使用的全局表版本 - Amazon DynamoDB

确定您正在使用的全局表版本

DynamoDB 全局表有两种版本:版本 2019.11.21(当前)版本 2017.11.29(旧版)。我们建议使用 版本 2019.11.21(当前)。与版本 2017.11.29(旧版)相比,它的效率更高,消耗的写入容量也更少。当前版本的优点包括:

  • 源表和目标表一起维护,并且吞吐量、TTL 设置、自动扩缩设置和其他有用属性也自动保持一致。

  • 全局二级索引也保持一致。

  • 您可以从填充了数据的表中动态添加新的副本表。

  • 控制复制所需的元数据属性是隐藏属性,这有助于防止写入可能导致复制出现问题的元数据属性。

  • 当前版本支持的区域比旧版本多,并允许您向现有表中添加区域或从中删除区域,而旧版本不允许。

  • 版本 2019.11.21(当前)效率更高,消耗的写入容量也比版本 2017.11.29(旧版)更少,因此更具成本效益。具体而言:

    • 对于版本 2017.11.29(旧版),将新项目插入一个区域,然后复制到其他区域时,每个区域需要 2 个 rWCU;但版本 2019.11.21(当前版)仅需要 1 个 rWCU。

    • 在版本 2017.11.29(旧版)中,更新项目要求源区域中有 2 个 rWCU,每个目标区域需要 1 个 rWCU;但在版本 2019.11.21(当前版)中,每个源或目标只需 1 个 rWCU。

    • 在版本 2017.11.29(旧版)中,删除项目要求源区域中有 1 个 rWCU,每个目标区域需要 2 个 rWCU;但在版本 2019.11.21(当前版)中,每个源或目标只需 1 个 rWCU。

    有关更多信息,请参阅 Amazon DynamoDB 定价

通过 CLI 确定版本

要通过 AWS CLI 查看您所使用的是哪个版本的全局表,请检查 DescribeTableDescribeGlobalTable。如果使用的是版本 2019.11.21(当前版),则 DescribeTable 会显示表版本;如果使用的是版本 2017.11.29(旧版),则 DescribeGlobalTable 属性会显示表版本。

通过控制台确定版本

通过控制台查找版本

要通过控制台找出正在使用的全局表的版本,请执行以下操作:

  1. 打开 DynamoDB 控制台:https://console.aws.amazon.com/dynamodb/home

  2. 在控制台左侧的导航窗格中,选择 Tables (表)

  3. 选择要使用的表。

  4. 选择 Global Tables (全局表) 选项卡。

  5. 全局表版本显示正在使用的全局表的版本:

要从全局表版本 2017.11.29(旧版)升级到版本 2019.11.21(当前版),请按此处的步骤操作。整个升级过程将在不中断活动表的情况下进行,并且应该在不到一个小时内完成。有关更多信息,请参阅更新到版本 2019.11.21(当前版)

注意
  • 如果控制台中未出现全局表版本消息,则表示在不同的区域中还存在其他同名的表。在这种情况下,不能将当前表变成全局表。要么必须将当前表复制到具有唯一名称的新表,要么必须删除所有其他同名的表。

  • 如果使用全局表的 版本 2019.11.21(当前),并且还使用生存时间功能,则 DynamoDB 会将 TTL 删除复制到所有副本表。初始 TTL 删除不会在发生 TTL 到期的区域中消耗写入容量。但是,在每个副本区域中,当使用预配置的容量时,复制到副本表的 TTL 删除将消耗一个复制的写容量单位,或在使用按需容量模式时消耗一个复制的写容量单位,并且将收取适用的费用。

  • 版本 2019.11.21(当前) 中,发生 TTL删除时,它将会被复制到所有副本区域。这些复制的写入操作不包含 typeprincipalID 属性。这可能会难以将 TTL 删除与复制表中的用户删除区分开来。