Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 创建用于AWS DynamoDB的唯一主键_Ios_Objective C_Amazon Web Services_Amazon Dynamodb - Fatal编程技术网

Ios 创建用于AWS DynamoDB的唯一主键

Ios 创建用于AWS DynamoDB的唯一主键,ios,objective-c,amazon-web-services,amazon-dynamodb,Ios,Objective C,Amazon Web Services,Amazon Dynamodb,我想使用一个8字符的字母数字objectId(就像Parse那样)作为主键。AWS DynamoDB是否具有创建此功能,或者我是否需要在iOS应用程序中以某种方式创建它并将其提交给DB 学习DynamoDB是如何工作的,因为我来自RDB背景 还有,如果我有用户和照片,我会把它们放在用户拍照的同一张表中吗?还是有办法链接?没有。 DynamoDB几乎没有什么特性。你得自己做点什么。 了解如何为DynamoDB记录构建自动递增系统 DynamoDB建议使用。这样做的目的是消除代价高昂的joins,这

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

学习DynamoDB是如何工作的,因为我来自RDB背景

还有,如果我有用户和照片,我会把它们放在用户拍照的同一张表中吗?还是有办法链接?

没有。 DynamoDB几乎没有什么特性。你得自己做点什么。
了解如何为DynamoDB记录构建自动递增系统

DynamoDB建议使用。这样做的目的是消除代价高昂的
join
s,这样它就可以专注于获取数据。这有一些缺点,它会被RDBMS基金会所迷惑,但是当你处理庞大的数据集时,你会得到很好的响应时间。


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

如果我也有一个用户表,我是让它保存所有内容还是将其拆分为包含用户ID的照片的用户和照片?这纯粹是一个设计决策。我通常将数据反规范化,并将相关属性/实体存储在一起。但由于DynamoDB提供的功能有限,如果出于某种原因需要按照片搜索,则需要为照片创建单独的表和索引。我当然更喜欢非规范化的方法,但必须阅读它如何影响DynamoDB中的查询。您使用的表不是越多,您在DynamoDB中需要支付的成本就越高吗?