Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/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
Amazon dynamodb 在DynamoDB中实施模式验证_Amazon Dynamodb - Fatal编程技术网

Amazon dynamodb 在DynamoDB中实施模式验证

Amazon dynamodb 在DynamoDB中实施模式验证,amazon-dynamodb,Amazon Dynamodb,是否可以在DynamoDB上实施表级架构验证 例如,考虑下表 aws dynamodb create-table\ --table-name spaces-tabs-votes\ --attribute-definitions AttributeName=id,AttributeType=S --key-schema AttributeName=id,KeyType=HASH --provisioned-throughput ReadCapacit

是否可以在DynamoDB上实施表级架构验证

例如,考虑下表

aws dynamodb create-table\
      --table-name spaces-tabs-votes\
      --attribute-definitions AttributeName=id,AttributeType=S
      --key-schema AttributeName=id,KeyType=HASH
      --provisioned-throughput ReadCapacityUnits=1,WriteCapacityUnits=1
      --endpoint-url http://localhost:8000
在时间T,表如下所示(注意,
投票
的类型为
N

在T+1时,我能够将
投票的类型从
N
更改为
S
。我所要做的就是做一个
put
,将
投票设置为String
1
,而不是增加已经存在的
N

$ aws dynamodb scan --table-name spaces-tabs-votes
{
    "Count": 2,
    "Items": [
        {
            "votes": {
                "N": "104"
            },
            "id": {
                "S": "space"
            }
        },
        {
            "votes": {
                "S": "1"
            },
            "id": {
                "S": "tab"
            }
        }
    ],
    "ScannedCount": 2,
    "ConsumedCapacity": null
}
我想要模式强制——也就是说,如果我试图发布到DynamoDB的记录不符合模式,我希望它抛出一个异常。有可能吗?

有可能复制
$ aws dynamodb scan --table-name spaces-tabs-votes
{
    "Count": 2,
    "Items": [
        {
            "votes": {
                "N": "104"
            },
            "id": {
                "S": "space"
            }
        },
        {
            "votes": {
                "S": "1"
            },
            "id": {
                "S": "tab"
            }
        }
    ],
    "ScannedCount": 2,
    "ConsumedCapacity": null
}