web-dev-qa-db-fra.com

Comment définir le mode de capacité de lecture / écriture DynamoDB sur demande sur CloudFormation

J'ai vu cela site sur DynamoDB On-demand et j'ai mis à jour mes tables, créées par CloudFormation, vers On-demand. Maintenant, lorsque j'essaie de mettre à jour ma pile, j'obtiens cette erreur:

Une ou plusieurs valeurs de paramètre n'étaient pas valides: ni ReadCapacityUnits ni WriteCapacityUnits ne peuvent être spécifiés lorsque BillingMode est PAY_PER_REQUEST

Existe-t-il un moyen de définir le mode de capacité de lecture/écriture DynamoDB sur demande sur CloudFormation?

MODIFIER:

J'ai mis à jour sur demande sur AWS Console.

EDIT 2:

Mon modèle:

DynamoDBUsersTable:
    Type: AWS::DynamoDB::Table
    Description: Users table
    Properties:
      TableName: !Sub ${StackName}-users-table
      AttributeDefinitions:
        - AttributeName: userId
          AttributeType: S
      KeySchema:
        - AttributeName: userId
          KeyType: HASH
      ProvisionedThroughput:
        ReadCapacityUnits: 10
        WriteCapacityUnits: 10

Merci.

12
Pedro Arantes

Vous devez ajouter BillingMode: PAY_PER_REQUEST aux propriétés et supprimez ProvisionedThroughput des propriétés de la table et de tous les GlobalSecondaryIndexes s'ils sont spécifiés. Donc, finalement, votre modèle doit ressembler à:

DynamoDBUsersTable:
    Type: AWS::DynamoDB::Table
    Description: Users table
    Properties:
      TableName: !Sub ${StackName}-users-table
      BillingMode: PAY_PER_REQUEST
      AttributeDefinitions:
        - AttributeName: userId
          AttributeType: S
      KeySchema:
        - AttributeName: userId
          KeyType: HASH
31
Konstantin Labun