Я пытаюсь создать таблицу AWS DynamoDB с помощью AWS CloudFormation,
Я получаю сообщение об ошибке при создании того же.
Ранее я указывал все нужные мне столбцы таблицы,
Но казалось, что свойства AttributeDefinitions и KeySchema должны как-то совпадать, хотя и не уверен.
Я сузил до 2 столбцов, которые должны быть в моей таблице,
то есть. user_id and expiry
user_id - это первичный ключ , а expiry - это столбец, используемый для цели TTL .
Я все еще получаю следующую ошибку, хотя -
Свойство AttributeDefinitions не согласуется с KeySchema таблицы и вторичными индексами
Ниже приведен фрагмент моего шаблона, где я получаю проблему в соответствии с CloudFormation StatusReason -
userExpiry:
Type: 'AWS::DynamoDB::Table'
Properties:
TableName: !Join ['_', [!Ref "prefix",'user_expiry'] ]
AttributeDefinitions:
-
AttributeName: 'expiry'
AttributeType: 'N'
-
AttributeName: 'user_id'
AttributeType: 'S'
KeySchema:
- AttributeName: "user_id"
KeyType: "HASH"
TimeToLiveSpecification:
AttributeName: "expiry"
Enabled: true
ProvisionedThroughput:
ReadCapacityUnits: 1
WriteCapacityUnits: 1
Tags:
-
Key: 'Project'
Value: !Ref "ProjectName"
-
Key: 'Environment'
Value: !Ref "ResourceEnvironment"
Я следую этой ссылке Doc -
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html