创建用于AWS DynamoDB的唯一主键

时间:2016-02-09 22:10:52

标签: ios objective-c amazon-web-services amazon-dynamodb

我想使用一个8字符的字母数字objectId(就像Parse一样)作为我的主键。 AWS DynamoDB是否具有创建此功能的功能,还是需要在我的iOS应用程序中以某种方式创建它并将其提交到数据库?

了解DynamoDB的工作方式,因为我来自RDB背景。

如果有一个大表,如果我有用户和照片,是否更好,我是否将其放在用户拍摄照片的同一个表中?还是有办法以某种方式链接?

2 个答案:

答案 0 :(得分:1)

不,它没有。 DynamoDB功能很少。你必须自己做点什么。 Read了解如何为DynamoDB记录构建自动递增系统。

答案 1 :(得分:0)

DynamoDB 建议使用 single table design。这样做的目的是消除昂贵的 join,以便它可以专注于获取数据。这样做有一些缺点,而且来自 RDBMS 基础的令人困惑,但是当您处理庞大的数据集时,您确实获得了极好的响应时间。

您可以创建一个包含用户和照片的表格,但您必须手动创建 join 功能。正确利用 DynamoDB 的一个示例是用户照片的单个表(假设这是您唯一的数据),其中主键是用户 ID 和照片 URL 的组合。