使用现有的dynamodb表,是否可以修改表以添加全局二级索引?从dynamodb控制面板看起来我必须删除表并使用全局索引创建一个新表。
答案 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对现有表格的支持将很快添加