有关Dynamodb中表或索引状态更改的任何通知方法吗?

时间:2015-02-17 22:18:05

标签: amazon-dynamodb

我正在尝试使用AWS SDK for Java的UpdateTable API将一些全局二级索引添加到现有表中。我已经阅读了文档,因此我将每个CreateGlobalSecondaryIndexAction包装到GlobalSecondaryIndexUpdate中,然后进入UpdateTableRequest。

我遇到的问题是这些表更新需要一段时间来处理。一旦其中一个启动,表就会进入UPDATING状态,并且在其状态为ACTIVE之前无法再次更新该表。文档说它们是异步请求,并且有一个可用于执行更新的AmazonDynamoDBAsyncClient,甚至为您提供了可以传入以响应事件的AsyncHandler方法。但问题是,当UpdateTableResult准备好时,这些asyncHandler会收到通知。但是,这并不意味着该表处于ACTIVE状态,可以进行另一次更新。因此,您必须对表进行轮询以检查其状态何时恢复为ACTIVE。

除此之外,如果要更新二级索引,它们也会进入UPDATING状态。因此,表可以处于ACTIVE状态,但如果它具有状态为UPDATING的辅助索引,则您也无法更新该表上的任何其他索引。因此,您最终必须轮询表的状态和表上索引的状态,以确保它们在进行另一次更新之前都是ACTIVE。

是否有任何事件机制可以通知表和/或索引的状态更新以避免此轮询?

1 个答案:

答案 0 :(得分:0)

还没有任何事件机制。如果您通过控制台创建索引,则可以收到电子邮件通知,但这可能不会对您要查找的内容有所帮助。

感谢您的反馈,我们确保团队了解对此功能的兴趣。如果您还有其他希望看到的功能,请随时与我们的forums联系!