AWS Official Blog

DynamoDB Expands to Japan and Europe

by Jeff Barr | on | in Amazon DynamoDB |

We launched Amazon DynamoDB in the US East (Northern Virginia) Region less than two months ago. At that time we committed to making it available in additional Regions as quickly as possible.

I was in Japan last week for the first JAWS-UG (Japan AWS User Group) Summit Meeting. At that meeting we celebrated the one year anniversary of the launch of our Tokyo Region. I was also able to inform the attendees that DynamoDB was now available in their Region.

Today we are expanding again, bringing DynamoDB to the EU (Ireland) Region. You can access DynamoDB in all three Regions via the AWS SDKs and the AWS Management Console. You can also consult our Regions and Endpoints list for a complete list of service endpoints in each of the AWS Region.

Bringing a couple of threads together, the creator of Ruby (Yukihiro “matz” Matsumoto) was a special guest (via remote video) at one of the sessions of the JAWS-UG Summit. I felt inspired to spend some time brushing up on Ruby with the AWS SDK for Ruby and DynamoDB. It turns out to be really easy to use the SDK to insert data into a DynamoDB table.

The first step is to include the SDK and create a DynamoDB object:

require ‘aws-sdk’
dynamo_db = AWS::DynamoDB. new ( :access_key_id => ACCESS_KEY, :secret_access_key => SECRET_KEY )

Next, reference the table and tell the SDK about its key:

table = dynamo_db. tables [ ‘my_table’ ]
table. hash_key = [ :id, : string ]

And then insert the data:

item - table. items. create ( ‘id’ => key,
                          ‘first_name’ => first_name,
                          ‘last_name’   => last_name )

That’s all it takes. With DynamoDB, the table can be provisioned to handle hundreds, thousands or even hundreds of thousands of inserts (writes) per second. This provisioning can also be done programmatically. Here’s all it takes to double the amount of provisioned write throughput:

writes = table. write_capacity_units * 2
table. provision_throughput :write_capacity_units => writes

This is a lot easier than calling your IT department and asking them to double the I/O capacity of a database! Writes to the table continue to run at the full provisioned speed while the re-provisioning process is underway.

You can verify that the provisioning process has completed by checking the table status:

if table .status != :updating then
  puts “Table throughput updated”
end

We’ll be holding a DynamoDB webinar on March 20th. Everyone is welcome to attend, but the time (10:00 AM GMT) was chosen so as to be amenable to our customers (and potential customers) in Europe.

Finally, my friend Jeffrey McManus is running an online DynamoDB training course later this month. Check it out!

– Jeff;