Вот (DynamoDB часть) мой тропосферы сгенерированных JSON:CloudFormation настаивает мое творение DynamoDB JSON недействительна .. но я не могу видеть, как
"sandbox": {
"Properties": {
"AttributeDefinitions": [
{
"AttributeName": "audit_id",
"AttributeType": "S"
},
{
"AttributeName": "status",
"AttributeType": "S"
},
{
"AttributeName": "filename",
"AttributeType": "S"
},
{
"AttributeName": "file_detected_dt",
"AttributeType": "S"
},
{
"AttributeName": "time_taken",
"AttributeType": "N"
},
{
"AttributeName": "number_rows_processed_file",
"AttributeType": "N"
},
{
"AttributeName": "number_rows_created_db",
"AttributeType": "N"
},
{
"AttributeName": "info_messages",
"AttributeType": "S"
}
],
"KeySchema": [
{
"AttributeName": "audit_id",
"KeyType": "HASH"
}
],
"ProvisionedThroughput": {
"ReadCapacityUnits": {
"Ref": "ReadCapacityUnits"
},
"WriteCapacityUnits": {
"Ref": "WriteCapacityUnits"
}
}
},
"Type": "AWS::DynamoDB::Table"
}
CloudFormation дает мне эту ошибку, пытаясь раскрутить VPC: Property AttributeDefinitions is inconsistent with the KeySchema of the table and the secondary indexes
.
Но ... не так ли? Я указываю audit_id
как одиночный ключ, и он определенно существует в списке AttributeDefinitions. Я очень новичок в CF (и в том числе и в «Динамо»), поэтому я, возможно, вообще не замечаю что-то чрезвычайно очевидное, но в настоящее время это не очевидно.
Я googled вокруг и только действительно нашел одно упоминание об этой ошибке, и это было больше связано со слоем между разработчиком и CF, а не с самим CF.
Может кто-нибудь указать, что не так с моим шаблоном?
Это также захваченный [здесь] (http://stackoverflow.com/a/30924384/1111215) –
Ошибка здесь пытается определить схема таблицы (т. е. говорят «столбцы» таблицы в реляционной БД). В DynamoDb вы определяете только ключ, с помощью которого можно получить значения элемента в таблице, а не схему самого элемента. DynamoDb является схематичным, а значения, хранящиеся в каждом ключе, определяются при добавлении элемента. Форма данных не определена. – Zodman
@ Zodman Большое спасибо за ваш комментарий, особенно эта часть: «DynamoDb является схематичным, и значения, хранящиеся в каждом ключе, определяются при добавлении элемента. Форма данных для определения" –