DynamoDB - Amazon Serverless Application Model
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

DynamoDB

描述DynamoDB事件源类型的对象。有关更多信息,请参阅《Amazon Lambda开发者指南》中的 “Amazon Lambda与 Amazon DynamoDB 一起使用”。

Amazon SAM设置此事件类型时生成AWS::Lambda::EventSourceMapping资源。

语法

要使用以下语Amazon SAM法,请使用以下语法。Amazon Serverless Application Model

属性

BatchSize

要在单个批次中检索的最大项目数。

类型:整数

必需:否

默认值:100

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的BatchSize属性。

最小值1

最大值1000

BisectBatchOnFunctionError

函数返回错误,则将批次拆分为两批并重试。

类型:布尔值

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的BisectBatchOnFunctionError属性。

DestinationConfig

用于丢弃记录的Amazon Simple Queue Service (Amazon SQS) ation Simple Notification Service (Amazon SNS) 的主题目标。

类型DestinationConfig

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的DestinationConfig属性。

Enabled

禁用事件源映射以暂停轮询和调用。

类型:布尔值

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的Enabled属性。

FilterCriteria

用于确定 Lambda 是否应处理事件的标准。有关更多信息,请参阅《Amazon Lambda开发者指南》中的Amazon Lambda事件筛选

类型FilterCriteria

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的FilterCriteria属性。

FunctionResponseTypes

当前应用于事件源映射的响应类型列表。有关更多信息,请参阅Amazon Lambda开发者指南中的报告批处理项目故障

有效值ReportBatchItemFailures

类型:清单

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的FunctionResponseTypes属性。

MaximumBatchingWindowInSeconds

在调用函数之前收集记录的最长时间(以秒为单位)。

类型:整数

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的MaximumBatchingWindowInSeconds属性。

MaximumRecordAgeInSeconds

Lambda 发送到函数以进行处理的记录的最长期限。

类型:整数

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的MaximumRecordAgeInSeconds属性。

MaximumRetryAttempts

在函数返回错误时重试的最大次数。

类型:整数

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的MaximumRetryAttempts属性。

ParallelizationFactor

每个分区中同时处理的批次数。

类型:整数

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的ParallelizationFactor属性。

StartingPosition

在流中开始读取数据的位置。

  • AT_TIMESTAMP— 指定开始读取记录的时间。

  • LATEST— 仅读取新记录。

  • TRIM_HORIZON— 处理所有可用的记录。

有效值AT_TIMESTAMP | LATEST | TRIM_HORIZON

类型:字符串

必需:是

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的StartingPosition属性。

StartingPositionTimestamp

开始读取的时间(Unix 时间秒为单位)。定义StartingPositionTimestamp何时指定StartingPositionAT_TIMESTAMP

类型:双精度

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的StartingPositionTimestamp属性。

Stream

DynamoDB NS 流的 Amazon 资源名称(ARN)。

类型:字符串

必需:是

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的EventSourceArn属性。

TumblingWindowInSeconds

处理窗口的持续时间(以秒为单位)。有效范围为 1 到 900(15 分钟)。

有关更多信息,请参阅《Amazon Lambda开发者指南》中的 Tumbling Windows

类型:整数

必需:否

Amazon CloudFormation兼容性:此属性直接传递给AWS::Lambda::EventSourceMapping资源的TumblingWindowInSeconds属性。

示例

现有 DynamoDB 表的 DynamoDB 事件源

Amazon账户中已存在的 DynamoDB 表的 DynamoDB 事件源。

YAML

Events: DDBEvent: Type: DynamoDB Properties: Stream: arn:aws:dynamodb:us-east-1:123456789012:table/TestTable/stream/2016-08-11T21:21:33.291 StartingPosition: TRIM_HORIZON BatchSize: 10 Enabled: false

在模板中声明的 DynamoDB 表的 DynamoDB 事件

在同一模板文件中声明的 DynamoDB 表的 DynamoDB 事件。

YAML

Events: DDBEvent: Type: DynamoDB Properties: Stream: !GetAtt MyDynamoDBTable.StreamArn # This must be the name of a DynamoDB table declared in the same template file StartingPosition: TRIM_HORIZON BatchSize: 10 Enabled: false