我想使用一个8字符的字母数字objectId(就像Parse一样)作为我的主键。 AWS DynamoDB是否具有创建此功能的功能,还是需要在我的iOS应用程序中以某种方式创建它并将其提交到数据库?
了解DynamoDB的工作方式,因为我来自RDB背景。
如果有一个大表,如果我有用户和照片,是否更好,我是否将其放在用户拍摄照片的同一个表中?还是有办法以某种方式链接?
答案 0 :(得分:1)
不,它没有。 DynamoDB功能很少。你必须自己做点什么。 Read了解如何为DynamoDB记录构建自动递增系统。
答案 1 :(得分:0)
DynamoDB 建议使用 single table design。这样做的目的是消除昂贵的 join
,以便它可以专注于获取数据。这样做有一些缺点,而且来自 RDBMS 基础的令人困惑,但是当您处理庞大的数据集时,您确实获得了极好的响应时间。
您可以创建一个包含用户和照片的表格,但您必须手动创建 join
功能。正确利用 DynamoDB 的一个示例是用户照片的单个表(假设这是您唯一的数据),其中主键是用户 ID 和照片 URL 的组合。