【发布时间】:2018-03-27 10:46:38
【问题描述】:
我想知道这一点,因为我刚刚开始一个使用无服务器和 dynamodb 的新项目。而且我一直在更改或添加索引,因此每次进行这些更改时,由于相同的表名冲突,我无法再次部署。如果我对资源部分进行更改,所有旧数据都会被删除。
那么有必要事先定义 dynamodb 资源(attribs、key、GSI)吗? nosql 不应该是灵活的吗?
【问题讨论】:
标签: amazon-dynamodb serverless-framework
我想知道这一点,因为我刚刚开始一个使用无服务器和 dynamodb 的新项目。而且我一直在更改或添加索引,因此每次进行这些更改时,由于相同的表名冲突,我无法再次部署。如果我对资源部分进行更改,所有旧数据都会被删除。
那么有必要事先定义 dynamodb 资源(attribs、key、GSI)吗? nosql 不应该是灵活的吗?
【问题讨论】:
标签: amazon-dynamodb serverless-framework
关于这种行为的讨论很长: https://github.com/serverless/serverless/issues/3183
根据我的经验,您需要为 dynamodb 表创建另一个项目,稍后您需要为每个表添加自动缩放,这会完全弄乱您的项目。
创建另一个项目,构建阶段 DEV/PROD,因此在 DEV 中您可以删除和添加新 GSI,密钥没有问题。
【讨论】: