in DynamoDB-SDK-Examples/golang/WorkingWithTables/createTableProvisioned/createTableProvisioned.go [25:76]
func createTable() error {
dynamoDBClient := dynamodb.New(getSession())
attributeDefinitions := []*dynamodb.AttributeDefinition{
{
AttributeName: aws.String("Artist"),
AttributeType: aws.String("S"),
},
{
AttributeName: aws.String("SongTitle"),
AttributeType: aws.String("S"),
},
}
keySchema := []*dynamodb.KeySchemaElement{
{
AttributeName: aws.String("Artist"),
KeyType: aws.String("HASH"), // Partition Key
},
{
AttributeName: aws.String("SongTitle"),
KeyType: aws.String("RANGE"), // Sort Key
},
}
provisionedThroughput := &dynamodb.ProvisionedThroughput{
ReadCapacityUnits: aws.Int64(10),
WriteCapacityUnits: aws.Int64(10),
}
_, err := dynamoDBClient.CreateTable(&dynamodb.CreateTableInput{
AttributeDefinitions: attributeDefinitions,
KeySchema: keySchema,
ProvisionedThroughput: provisionedThroughput,
TableName: &table,
})
if err != nil {
return err
}
err = dynamoDBClient.WaitUntilTableExists(&dynamodb.DescribeTableInput{
TableName: aws.String(table),
});
if err != nil {
fmt.Println("Got error calling CreateTable:")
return err
}
return nil
}