こんにちは! JQです。
前回は『 DtynamoDB編~Localを試してみる①~ 』と題して、DynamoDB Localを試してみました。
今回は『DtynamoDB編~Localを試してみる②~』と題して、DynamoDB LocalをBotoで試してみたいと思います。
1.Botoのインストール
先ずはBotoのインストールを行います。
1$ sudo apt-get install python-setuptools2$ sudo easy_install pip3$ sudo pip install boto確認してみます。
1$ python2Python 2.7.6 (default, Mar 22 2014, 22:59:56)3[GCC 4.8.2] on linux24Type "help", "copyright", "credits" or "license" for more information.5>>> import boto6>>> boto.Version7'2.29.1'2.DynamoDB Localに接続
DynamoDB Localに接続してみます。
※keyは無視されますが、設定しておく必要があります。
1$ python2Python 2.7.6 (default, Mar 22 2014, 22:59:56)3[GCC 4.8.2] on linux24Type "help", "copyright", "credits" or "license" for more information.5>>> from boto.dynamodb2.layer1 import DynamoDBConnection6>>> conn = DynamoDBConnection(7... host='localhost',8... port=8000,9... aws_access_key_id='anything',10... aws_secret_access_key='anything',11... is_secure=False)12>>> conn13DynamoDBConnection:localhost14>>> conn.list_tables()15{u'TableNames': []}3.Table作成
Tableを作成してみます。
1>>> from boto.dynamodb2.table import Table2>>> from boto.dynamodb2.fields import HashKey, RangeKey3>>> from boto.dynamodb2.types import NUMBER4>>> Table.create(5... 'devkc',6... schema=[HashKey('dev_id'), RangeKey('timestamp', data_type=NUMBER)],7... throughput={'read': 5, 'write': 2},8... connection=conn9... )10<boto.dynamodb2.table.Table object at 0x7f6e1d438990> 11>>> conn.list_tables()12{u'TableNames': [u'devkc']}4.ItemのPut
続いてItemをPutしてみます。
1>>> import uuid2>>> import time3>>> table = Table('devkc', connection=conn)4>>> item = Item(table, data={5... 'dev_id': str(uuid.uuid4()),6... 'timestamp': time.time()7... })8>>> item.save()9True確認してみます。
1>>> result = table.scan()2>>> for d in result:3... print d['dev_id'], d['timestamp']4...500c322d5-3f6f-4617-b2b3-dd4d82d73b1f 1402992399.76725101470947265625Localでも問題なく動作しています。
いかがでしたでしょうか?
次回もお楽しみに!!!