|
|
1
7
基本上,有 three ways of reading data from DynamoDB :
sort key 你的数据。一、 e.您可以使用类别作为散列键,使用产品名称作为排序键,以便显示特定类别的项目的页面可以使用按该类别和产品名称进行查询。但这种设计是脆弱的,因为您可能需要其他页面的键,例如,如果用户查找特定的移动电话,您可能需要供应商+价格查询。 Indexes 能帮上忙,但他们有自己的生意 limitations . 此外,在 query scan 操作完成,但在得到结果之前,因此整个查询/扫描都要收费。这就像在应用程序中自己过滤数据,而不是在数据库端。 我想说的是,DynamoDB只是不打算用于许多类型的工作负载。可能,它也不适合你的情况。把它看作是一个富键值(key-to-object)存储,而不是一个“经典”的RDBMS,在这里,索引的成本更低,限制更少,并且为开发人员提供了丰富的查询功能。 有一个 good article Forrest Brazeal .
最后,退房 this short answer 关于DynamoDB用例和问题。 P、 在美国做扫描并没有什么犯罪行为(实际上我在我的一个项目中每天都会做一次扫描),但这是一个例外,我对在这种情况下使用DynamoDB的决定感到遗憾。它在速度、金钱、支持和“肮脏”方面都没有效率。我不得不在工作前增加容量,在工作后减少容量,但那是另一回事 |