如何添加DynamoDB全球二级索引?

时间:2016-09-23 20:22:57

标签: java amazon-dynamodb aws-sdk

阅读Java AWS API文档和一些教程我看到适用于DynamoDB的AWS Java API具有createTable方法。在我的情况下,表已经创建,我只想添加一个GSI。有没有办法做到这一点?

只是添加,当我检查是否可以再次调用相同的createTable时,认为新的GSI可能刚刚添加,但我得到了响应:

public void SendEmail(List<string> emails, string body, string subject)
    {
        var emailMessage = new MimeMessage();

        emailMessage.From.Add(new MailboxAddress("Test", "test@gmail.com"));
        foreach(var e in emails)
        {
            emailMessage.To.Add(new MailboxAddress("", e));
        }
        emailMessage.Subject = subject;
        emailMessage.Body = new TextPart("plain") { Text = body };

        using (var client = new SmtpClient())
        {
            client.Connect("smtp.gmail.com", 587, SecureSocketOptions.StartTls);
            client.Authenticate("username", "password");
            client.Send(emailMessage);
            client.Disconnect(true);
        }

    }

更新 刚发现: http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/dynamodbv2/document/Table.html#createGSI-com.amazonaws.services.dynamodbv2.model.CreateGlobalSecondaryIndexAction-com.amazonaws.services.dynamodbv2.model.AttributeDefinition-com.amazonaws.services.dynamodbv2.model.AttributeDefinition-

1 个答案:

答案 0 :(得分:-1)

通过AWS控制台单击它。它 easy

否则,请使用CreateTableRequest, as in the official documentation

CreateTableRequest createTableRequest = new CreateTableRequest()
    .withTableName("WeatherData")
    ...
    .withGlobalSecondaryIndexes(precipIndex);