Menu
Amazon DynamoDB
Getting Started Guide (API Version 2012-08-10)

Step 1: Create a Table

In this step, you create a table named Movies. The primary key for the table is composed of the following two attributes:

  • year – The partition key. The attribute_type is N for number. 

  • title – The sort key. The attribute_type is S for string.

  1. Copy the following program into a file named MoviesCreateTable.rb:

    require "aws-sdk-core"
    
    Aws.config.update({
      region: "us-west-2",
      endpoint: "http://localhost:8000"
    })
    
    dynamodb = Aws::DynamoDB::Client.new
    
    params = {
        table_name: "Movies",
        key_schema: [
            {
                attribute_name: "year",
                key_type: "HASH"  #Partition key
            },
            {
                attribute_name: "title",
                key_type: "RANGE" #Sort key 
            }
        ],
        attribute_definitions: [
            {
                attribute_name: "year",
                attribute_type: "N"
            },
            {
                attribute_name: "title",
                attribute_type: "S"
            },
    
        ],
        provisioned_throughput: { 
            read_capacity_units: 10,
            write_capacity_units: 10
      }
    }
    
    begin
        result = dynamodb.create_table(params)
        puts "Created table. Status: " + 
            result.table_description.table_status;
    
    rescue  Aws::DynamoDB::Errors::ServiceError => error
        puts "Unable to create table:"
        puts "#{error.message}"
    end
    

    Note

    • You set the endpoint (endpoint: "http://localhost:8000") to indicate that you are creating the table in DynamoDB on your computer.

    • In the create_table call, you specify table name, primary key attributes, and its data types.

    • The provisioned_throughput parameter is required; however, the downloadable version of DynamoDB ignores it. (Provisioned throughput is beyond the scope of this exercise.)

  2. Type the following command to run the program:

    ruby MoviesCreateTable.rb

To learn more about managing tables, see Working with Tables in the Amazon DynamoDB Developer Guide.

Next Step

Step 2: Load Sample Data