おぎろぐはてブロ

なんだかんだエンジニアになって10年以上

botoでSample IMDB Movie DataをDynamoに挿入する

CloudSearch用のサンプルデータとして、IMDBのMovie Data Sampleが公開されています。

これを検証用にDynamoDBに入れたかったのでざっくりコードを書いた。 HashKeyをstring指定でテーブルを作り、実行。

# -*- coding: utf-8 -*-
import decimal
import json
import boto.dynamodb2
import boto.dynamodb2.table

conn = boto.dynamodb2.connect_to_region('ap-northeast-1')
imdb = boto.dynamodb2.table.Table('imdb', connection=conn)

with open('moviedata2.json') as f:
    records = json.load(f, parse_float=decimal.Decimal)

with imdb.batch_write() as batch:
    for record in records:
        data = record['fields']
        data['id'] = record['id']
        for key in ['directors', 'genres', 'actors']:
            if key in data:
                data[key] = set(data[key])

        # テスト用なので上書きOKにしてる
        batch.put_item(data, overwrite=True)

これでうまく挿入はされるが、release_dateはunixtimeとかで入れるべきである。

米国アマゾンのデジタルコンテンツビジネス戦略2012 (CD+冊子)

米国アマゾンのデジタルコンテンツビジネス戦略2012 (CD+冊子)

  • 作者: インターネットメディア総合研究所
  • 出版社/メーカー: インプレスR&D
  • 発売日: 2011/10/27
  • メディア: 単行本(ソフトカバー)
  • クリック: 1回
  • この商品を含むブログを見る