创建表后,是否可以向dynamodb添加全局二级索引?

时间:2014-03-26 18:08:34

标签: amazon-web-services amazon-dynamodb

使用现有的dynamodb表,是​​否可以修改表以添加全局二级索引?从dynamodb控制面板看起来我必须删除表并使用全局索引创建一个新表。

3 个答案:

答案 0 :(得分:21)

修改(2015年1月)

是,您可以在创建后为DynamoDB表添加全局二级索引;请参阅here,"飞行中的全球二级索引"。


旧答案(不再严格正确):

不,在创建表后,无法修改表的哈希键,范围键和索引。但是,您可以在创建表格后轻松添加非散列键,范围键或索引元素的元素。

来自UpdateTable API文档:

  

您无法使用UpdateTable添加,修改或删除索引。索引只能在创建表时定义。​​

您应该尽可能地尝试预测当前和未来的查询要求,并相应地设计表和索引。

如果需要,您可以随时将数据迁移到新表。

答案 1 :(得分:19)

刚收到亚马逊的电子邮件:

  

亲爱的Amazon DynamoDB客户,

     

全球二级索引(GSI)使您可以提高效率   查询。现在,您可以随时在表格中添加或删除GSI,   而不只是在表创建期间。 GSI可以通过添加   DynamoDB控制台或简单的API调用。正在添加GSI或   删除后,DynamoDB表仍然可以处理实时流量并提供   在预配置的吞吐量级别上提供连续服务。了解更多   关于在线索引,请read our blog或访问documentation   页面了解更多技术和操作细节。

     

如果您对在线索引有任何疑问或反馈,请   发邮件给我们

     

真诚的,亚马逊DynamoDB团队

答案 2 :(得分:3)

根据AWS的最新消息,GSI对现有表格的支持将很快添加

Official statement on AWS forum