Dynamodb 触发器以使用 lambda 更新另一个 dynamobo 表



我正在为我的lambda使用dynamodb触发器。所以我正在考虑两个条件,每当我的表 1 更新时,都应该触发 lambda,并且基于条件表达式应该更新表 2,就像我在表 2 中应用的更改一样。由于我将使用 boto 3 资源,因此需要示例逻辑重新分级相同。我是使用dynamodb触发器处理事件的新手。任何帮助将不胜感激。

通常,您会在表 1 和 lambda 函数之间设置事件源映射。

lambda 函数将处理表 1 中的记录,例如根据某些条件过滤掉它们,然后将剩余的记录写入表 2。

为了写入表 2,boto3 提供了到 dynamodb 的接口。

Table-1 ~~~~~~~~~> AWS Lambda --------->Table2

AWS Lambda 收到的事件将如下所示。您需要做的是基于事件名称处理存在的值并将其存储在表-2中。

def lambda_handler(event, context):
dynamodb = boto3.resource('dynamodb', region_name='eu-west-1')
table2 = dynamodb.Table('Table-2')
# Read the records in the event
for record in event['Records']:
# process record and prepare required object for Table-2
table_2_obj = process_record(record)
put_item_response = table2.put_item(table_2_obj)
# Verify the response if required
print(put_item_response)

最新更新