DynamoDBへのJSON投入用のLambda
前回 にJSON作成用のEXCEL作成して DataPipeLineでのデータ投入 を試したけれど 全然うまくいかないのでムキーという状態になったのですが、発想を変えてLambdaで S3に保存されたファイルをトリガーに自動実行 させて SNS で メールすれば いいじゃん。 と考えて、試してみました。 S3に保存されたファイルをDynamoDBに取込むところまでは何とか準備できた。 んでこれをどう加工するかですな。SNS側も何とかできました。 が、S3保存トリガーだとなぜかメールが2通飛ぶんだよなぁ。LambdaのWebエディタからだと1回なのに、、S3トリガーだと2通飛ぶ、これ何でだろうなぁ。 誰か親切な方、教えていただけると幸いです、 そして相変わらずコードベタ貼り、SAMとか使っていないからGit管理できていないのが その理由です。(苦笑 import logging import datetime import logging import json import os import urllib import boto3 LOGGER = logging.getLogger() LOGGER.setLevel(logging.INFO) dynamodb = boto3.resource('dynamodb') s3_res = boto3.resource('s3') s3_cl = boto3.client('s3') client = boto3.client('lambda') # DynamoDBに書込み def put_item(writeitems,writetable): try: table = dynamodb.Table(writetable) with table.batch_writer() as batch: for i in range(len(writeitems)): batch.put_item( Item=writeitems[i] ) LOG