繁体   English   中英

在我的 DynamoDB 表上创建未使用的通用本地二级索引以备日后需要它们是否明智?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM