生成唯一标识符,主要类似于UUID但具有命名空间检查功能

时间:2010-07-15 22:00:50

标签: algorithm uuid

我正在设计一个可能拥有数百万条记录的数据库。每条记录只有几条数据(比如大约十五个五十个字符的字符串)。

不同的记录属于同一类对象,但来自不同的“来源”;命名空间将捕获此关系。例如,对象1属于命名空间1,对象12321属于命名空间2等等。

我想为这些记录设计唯一标识符。

如果我使用UUID版本5,生成附加到命名空间的UUID将是微不足道的。但是,无法知道给定的UUID是否属于给定的命名空间。

然后我想到了Luhn's Algorithm(用于信用卡号的那个)的算法,该算法检查数字是“正确”还是“不是”。

你会怎么做?

要求:

  1. 所有UUID requirements
  2. 能够检查UUID是否属于给定的命名空间

1 个答案:

答案 0 :(得分:1)

如果将命名空间存储在同一个表中并对其进行索引,则一个简单的查询将告诉您uuid是否存在于给定的命名空间中。但是,无论如何,uuid suppodes都不是唯一的吗?所以不应该存在重复。