こんにちは! JQです。
前回は『Amazon DynamoDB編~DynamoDBをはじめてみよう!パート③~』ということで、DynamoDBをRuby SDKから触ってみました。
今回は『Amazon DynamoDB編~DynamoDBをはじめてみよう!パート④~』と題して、DynamoDBにRuby SDKからデータをインプットしてみたいと思います。
前準備
以前に掲載しているレシピ「AWS SDK Rubyを使ってみよう!」の記事等を参考にセットアップします。
DynamoDBへデータインプット
サンプルデータのインプット
1. まず、今回はID(INT)とDATEの簡単なデータを100件登録してみます。
※end_pointは適宜変更して下さい。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#!/usr/bin/env ruby require 'rubygems' require 'aws-sdk' #AWS.config(config) dynamo_db = AWS::DynamoDB.new( :dynamo_db_endpoint => "dynamodb.ap-northeast-1.amazonaws.com", :access_key_id => 'xxxxxxxxxxxxxxxx', :secret_access_key => 'xxxxxxxxxxxxxxxxxxxxxxxx' ) table = dynamo_db.tables['ProductCatalog'] table.hash_key = [:Id, :number] for i in 001..100 do date = Time.now table.items.create("Id" => i, "date" => "#{date}") end |
データ取得
2. 次に、インプットされたアイテムのカウントと一覧表示を取得してみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#!/usr/bin/env ruby require 'rubygems' require 'aws-sdk' #AWS.config(config) dynamo_db = AWS::DynamoDB.new( :dynamo_db_endpoint => "dynamodb.ap-northeast-1.amazonaws.com", :access_key_id => 'xxxxxxxxxxxxxxxx', :secret_access_key => 'xxxxxxxxxxxxxxxxxxxxxxxx' ) table = dynamo_db.tables['ProductCatalog'] table.hash_key = [:Id, :number] puts table.items.count table.items.each do |item| p item.attributes.to_hash end |
正しく取得出来ればHashでデータが表示されます!!
いかがでしたでしょうか?
次回は『Amazon DynamoDB編~DynamoDBをはじめてみよう!パート⑤~』ということで、クエリを実行してみたいと思います。
お楽しみに!