使用MD5作为版本控制标识符

时间:2017-01-16 20:31:42

标签: database amazon-dynamodb database-schema

我将一些JSON模式存储在DynamoDB表中,该表使用键定义:

  • 类型 - 哈希键
  • 版本 - uuid

JSON架构将存储在schema属性中。

我想知道的是,与随机生成的uuid相比,使用模式blob的MD5或其他散列作为version uuid是否合适?

1 个答案:

答案 0 :(得分:0)

这有点主观,因为它取决于版本属性的语义,但是如果你通常认为相同的模式是相同的版本,甚至是乱序,那么是。如果没有,那么没有。

我的意思是,考虑这种情况:

  1. " Schema A"被添加到表中,它通过哈希派生的版本是" 1"
  2. 该项目已修改,现在具有" Schema A1",其版本由has" 2"
  3. 该项目再次被修改,并且与#34; Schema A"相同,因此它的版本变为" 1"再次
  4. 这对你有用吗?在某些情况下,这是可以的,在其他情况下,它不是。

    注意:"架构A" " Schema A1"," 1"和" 2"只是简化而不失一般性。

    修改

    正如评论中指出的那样,另一个要考虑的问题是,是否应将空白和排序更改视为不同的模式或相同。