如何使用DynamoDB解决这种可能的情况

时间:2019-05-11 11:22:30

标签: amazon-dynamodb

我正在尝试开发可能存在以下问题的DynamoDB表:

1-客户来说-“嘿,当我单击产品列表中的产品时,我想查看有关该产品的所有信息,包括生产该产品的工厂地址”

2-客户端还需要在必要时更新工厂地址。

您将如何绘制这张桌子?您会在每个产品中添加工厂的完整地址吗?

我主要关心的是必须运行的查询量。

如果我将产品放在一个表中,将工厂放在另一个表中,则必须调用2个查询才能带出客户想要的所有信息

如果我在产品项中添加了工厂地址,则必须更改多行,以防工厂地址被更改。

我想有一种方法,我只需更新一项即可更新工厂地址,并且只运行一个查询即可获取所有产品信息和工厂地址。

有可能还是仅在关系数据库中?

1 个答案:

答案 0 :(得分:1)

“如果我在产品项中添加工厂地址,则工厂地址更改时,我必须更新多行。” <-这绝对不值得。每次更新工厂地址时,您可能要付出很大的写容量。

我在DynamoDB上运行了一个相当复杂的应用程序,并将为您的方案创建2个表:Products表,该表具有一个带有FactoryID的属性,以及一个工厂表,其中带有FactoryID作为哈希键。在实践中,我发现DynamoDB可以快速进行多次查找(如果需要,您可以将它们一起批处理),并且我经常使用这种模式通过来自不同表的信息来“混合”应用程序中的产品。