[英]Is it sensible to create unused generic local secondary indexes on my DynamoDB tables in case I need them later?
我目前需要将本地二级索引添加到 DynamoDB 表,但我发现在创建表后无法添加它们。 现在在我的项目正在开发中重新创建表对我来说很好,但是如果我在项目公开部署时需要另一个索引,那么稍后再这样做会很痛苦。
这让我想知道重新创建具有允许的最大二级索引数的表是否明智,即使我现在不需要它们。 这些索引将具有我目前未将其用作排序键的通用命名属性。 这样,如果我将来需要此表上的另一个本地二级索引,我可以只使用其中一个未使用的索引。
我不认为这会浪费存储或性能问题,因为我知道只有在写入包含索引属性的项目时才会写入索引。
我用谷歌搜索这个想法是否是一种普遍做法,但还没有发现有人在谈论它。 这不是一个好主意有什么原因吗?
不要那样做。 如果一个表有任何 LSI,它会遵循不同的规则,并且不能将项目集合增长到超过 10 GB 或隔离项目集合中的热门项目。 如果不需要,为什么要招致这些不利因素呢? 另外,以后您始终可以创建 GSI 而不是 LSI。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.