DynamoDB:为含空排序键值的已有表创建新GSI索引的疑问
DynamoDB全局二级索引(GSI)创建问题解答
问题背景
已知DynamoDB的全局二级索引(GSI)字符串键属性要求非空值,插入排序键为空的条目会失败。现咨询:为包含部分排序键属性值为空的已有数据表创建GSI时,会出现何种情况?
解答
- 原表中排序键属性为空的条目不会被同步到新创建的GSI中,只有排序键非空的条目会被纳入GSI。
- GSI的创建操作会正常完成,不会因为原表存在空值条目而失败。
- 后续往原表插入数据时,排序键为空的条目依然无法写入GSI(插入主表是否成功取决于主表自身规则,但GSI会拒绝这类条目),只有排序键非空的新条目才会同步到GSI。
内容的提问来源于stack exchange,提问作者Dima Svider
相关产品推荐
相关产品推荐

