この文書の現在のバージョンと選択したバージョンの差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
aws [2018/01/22 12:52] fifi |
aws [2018/01/22 16:32] (現在) fifi |
||
|---|---|---|---|
| ライン 15: | ライン 15: | ||
| * AmazonDynamoDBFullAccess | * AmazonDynamoDBFullAccess | ||
| - | __lambda_dynamodb_s3_fullacces__ | + | lambda_dynamodb_s3_fullacces |
| + | |||
| + | ### pipを使いたい時 | ||
| + | |||
| + | lambdaで作られたディレクトリないで、 | ||
| + | |||
| + | ``` | ||
| + | pip install requests -t . | ||
| + | ``` | ||
| + | |||
| + | |||
| + | ### エラー処理 | ||
| + | |||
| + | なんどやってもアクセスできない。 | ||
| + | 試しにcreate_tableをしてみると、テーブルは作れるが、Dynamodb上に現れない。 | ||
| + | |||
| + | 他Regionを探してみると見つけた。どうしよ。 | ||
| + | |||
| + | Regionを指定することで解消. | ||
| + | |||
| + | |||
| + | ``` | ||
| + | |||
| + | |||
| + | import os | ||
| + | import json | ||
| + | import time | ||
| + | from datetime import datetime, timedelta | ||
| + | |||
| + | import boto3 | ||
| + | from boto3.dynamodb.conditions import Key, Attr | ||
| + | |||
| + | utc = datetime.utcfromtimestamp(time.time()) | ||
| + | |||
| + | |||
| + | dynamodb = boto3.resource('dynamodb') | ||
| + | |||
| + | table = dynamodb.create_table( | ||
| + | TableName='cities3', | ||
| + | KeySchema=[ | ||
| + | { | ||
| + | 'AttributeName': 'key', | ||
| + | 'KeyType': 'HASH' #Partition key | ||
| + | }, | ||
| + | ], | ||
| + | AttributeDefinitions=[ | ||
| + | { | ||
| + | 'AttributeName': 'key', | ||
| + | 'AttributeType': 'S' | ||
| + | }, | ||
| + | ], | ||
| + | ProvisionedThroughput={ | ||
| + | 'ReadCapacityUnits': 30, | ||
| + | 'WriteCapacityUnits': 30 | ||
| + | } | ||
| + | ) | ||
| + | |||
| + | |||
| + | ``` | ||
| + | |||
| + | ### INSERT | ||
| + | |||
| + | ``` | ||
| + | |||
| + | |||
| + | def insert(results): | ||
| + | date = datetime.now() + timedelta(hours=9) | ||
| + | |||
| + | id = 0 | ||
| + | table = dynamodb.Table('cities3') | ||
| + | table.put_item( | ||
| + | Item={ | ||
| + | "key": date.strftime("%Y/%m/%d %H:%M"), | ||
| + | # "result": results | ||
| + | } | ||
| + | ) | ||
| + | ``` | ||
| + | |||
| + | |||
| + | ### dynamo put_item | ||
| + | |||
| + | [DynamoDB x Python / Decimal を登録する - Qiita](https://qiita.com/dskst/items/10ea3f0d5899d058734e) | ||
| + | |||
| + | ``` | ||
| + | |||
| + | |||
| + | ``` | ||