【发布时间】:2019-06-13 11:02:51
【问题描述】:
我正在 DynamoDB 上创建一个用户表,我想将主键设置为用户电子邮件地址的 sha256 哈希字符串。
在 DynamoDB 表中保留 SHA256 值作为主键是否是个好主意?这对于查找会更好还是更糟?
【问题讨论】:
标签: nosql amazon-dynamodb sha256
我正在 DynamoDB 上创建一个用户表,我想将主键设置为用户电子邮件地址的 sha256 哈希字符串。
在 DynamoDB 表中保留 SHA256 值作为主键是否是个好主意?这对于查找会更好还是更糟?
【问题讨论】:
标签: nosql amazon-dynamodb sha256
这个想法是主键唯一标识 DynamoDB 表中的每个项目,
可以是简单的(仅分区键)或复合键(分区键与排序键组合)。
SHA-256 为文本生成几乎唯一 256 位(32 字节)的签名。
另一种方法是使用 UUID V1 作为主键,
这里有一个关于UUID使用的有趣内容-
https://www.sohamkamani.com/blog/2016/10/05/uuid1-vs-uuid4/
有效设计和使用分区键的最佳实践 -
https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-partition-key-design.html
【讨论】: