如何将数据从dynamodb推送到流 [英] How to push the data from dynamodb through stream

查看:84
本文介绍了如何将数据从dynamodb推送到流的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

下面是json文件

[
    {
        "year": 2013,
        "title": "Rush",
        "actors": [
                "Daniel Bruhl",
                "Chris Hemsworth",
                "Olivia Wilde"
            ]
        
    },
    {
        "year": 2013,
        "title": "Prisoners",
        "actors": [
                "Hugh Jackman",
                "Jake Gyllenhaal",
                "Viola Davis"
            ]
        }
]

下面是推送到dynamodb的代码.我创建了testjsonbucket存储桶名称,moviedataten.json是文件名并保存在json上方. 主排序键作为标题(字符串).

Below is the code to push to dynamodb. I have created testjsonbucket bucket name, moviedataten.json is the filename and saved above json.Create a dynamodb with Primary partition key as year (Number) and Primary sort key as title (String).

import json
from decimal import Decimal
import json
import boto3
s3 = boto3.resource('s3')
obj = s3.Object('testjsonbucket', 'moviedataten.json')
body = obj.json
#def lambda_handler(event,context):
#    print (body)

def load_movies(movies, dynamodb=None):
    if not dynamodb:
        dynamodb = boto3.resource('dynamodb')

    table = dynamodb.Table('Movies')
    for movie in movies:
        year = int(movie['year'])
        title = movie['title']
        print("Adding movie:", year, title)
        table.put_item(Item=movie)


def lambda_handler(event, context):
    movie_list = json.loads(body, parse_float=Decimal)
    load_movies(movie_list)

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆