Как я могу создать таблицу DynamoDB по требованию в C#? - PullRequest
1 голос
/ 29 мая 2020

Кажется, я не могу найти пример создания таблицы On-Demand DynamoDB в C#.

Примеры C# только для AWS описывает , как создать таблицу с предоставленной пропускной способностью.

1 Ответ

0 голосов
/ 02 июня 2020

На мой взгляд, способ, которым это поддерживается в SDK, не интуитивно понятен.

Нужно сначала создать таблицу со значением по умолчанию ProvisionedThroughput, затем обновить таблицу и установить биллинг на: PAY_PER_REQUEST

CreateTableRequest createRequest = new CreateTableRequest 
{
    TableName = "Foo",
    AttributeDefinitions = new List<AttributeDefinition> {
        new AttributeDefinition {
            AttributeName = "Id",
            AttributeType = ScalarAttributeType.S,
        }
    }, 
    KeySchema = new List<KeySchemaElement> {
        new KeySchemaElement("Id", KeyType.HASH)
    }, 
    ProvisionedThroughput = new ProvisionedThroughput(1, 1)
};

await client.CreateTableAsync(createRequest);
// Wait for it to be created

await client.UpdateTableAsync(new UpdateTableRequest
{
    TableName = name,
    BillingMode = BillingMode.PAY_PER_REQUEST
});
...