Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.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
Database 使用MD5作为版本控制标识符_Database_Amazon Dynamodb_Database Schema - Fatal编程技术网

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

Database 使用MD5作为版本控制标识符,database,amazon-dynamodb,database-schema,Database,Amazon Dynamodb,Database Schema,我将一些JSON模式存储在DynamoDB表中,该表由键定义: 类型-哈希键 版本-uuid JSON模式将存储在schema属性中 我想知道,使用模式BLB的MD5或其他散列作为代码> UUID是否合适,与随机生成的uuID?相比,这有点主观,因为它取决于版本属性的语义,但是如果您通常认为相同的模式是相同的版本,即使是坏了,那么是的。如果没有,那么就没有 我的意思是,考虑一下这个场景: “架构A”被添加到表中,由哈希派生的版本为“1” 该项已修改,现在具有“模式A1”,其派生版本为“2”

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

  • 类型-哈希键
  • 版本-uuid
JSON模式将存储在
schema
属性中


我想知道,使用模式BLB的MD5或其他散列作为<<代码>版本>代码> UUID是否合适,与随机生成的uuID?

相比,这有点主观,因为它取决于版本属性的语义,但是如果您通常认为相同的模式是相同的版本,即使是坏了,那么是的。如果没有,那么就没有

我的意思是,考虑一下这个场景:

  • “架构A”被添加到表中,由哈希派生的版本为“1”
  • 该项已修改,现在具有“模式A1”,其派生版本为“2”
  • 再次修改该项,使其与“模式A”相同,因此其版本再次变为“1”
  • 这对你有用吗?在某些情况下,这是可以的,在其他情况下则不是

    注:“模式A”和“模式A1”、“1”和“2”只是简单化,没有失去一般性

    编辑


    在注释中指出,另一个要考虑的问题是空白和顺序变化是否应该被视为不同的模式或相同的。

    另一个重要的方面是数据位置的位置。正如前面提到的,它是基于json的模式,所以一次可以是{A:[1,2]},第二次可以是{A:[2,1]},尽管它可能表示相同的东西,也可能不表示相同的东西,md5将是不同的