putdynamodb 如何在 nifi 中工作?

Sur*_*Ram 3 amazon-web-services amazon-dynamodb apache-nifi

我正在尝试使用 nifi 将一个值放入 dynamoDB,但我不知道在 putdynamoDB 属性中的何处输入我的新值。它总是将我的哈希键值插入到 dynamoDB 中。

GetDynamoDB 工作正常。

在此处输入图片说明

任何帮助将不胜感激。

Tro*_*ske 5

我将介绍处理器的每个属性。

表名称- Dynamo 数据库表的名称。

哈希键名称- Dynamo 表中主分区键的名称。

Range Key Name - 主分区键的范围键名称(设置 Dynamo 表时不需要设置)。

哈希键值- 您要用于在 Dynamo 表中查找值的键。这很可能是您在 FlowFile 属性中拥有的唯一 ID,您将使用表达式语言进行引用。示例:${uuid}将使用 NiFi 生成的流文件的唯一 ID。

范围键值- 如果您使用范围键功能,请在此处提供范围键值。

哈希键值类型- 您作为键值、字符串或数字发送的类型。如果您使用 uuid,它将是字符串。

范围键值类型- 除了范围键外,与上面的行相同。如果未设置 Range Key Name 属性,则将被忽略。

Json 文档属性- 这是您希望在 Dynamo 中存储为值的内容。当您引用与此数据关联的相应哈希键时,这就是 Dynamo 将返回的值。该值来自传递到必须为 JSON 格式的处理器的 FlowFile 内容。如果要存储 JSON 格式的 FlowFile 的全部内容,只需在$此处放一个。如果你想有一个特定的JSON属性,这种行为完全像EvaluateJSONPath处理器,在那里,如果你有在根对象的ID,你会被引用此:$.id。需要注意的一件事,您的 JSON 对象中可能没有空字符串,请参阅此处了解更多详细信息:https : //github.com/aws/aws-sdk-js/issues/833

文档字符集- 您的 JSON FlowFile 内容所在的字符格式。

每个请求的批处理项目(1 到 50 之间) - 您希望在一个帖子中发送的项目数量。数字越大,对 Dynamo 的 API 调用越少,写入性能可能越好。

区域- 您的 Dynamo 表所在的 AWS 区域。

访问密钥- 您在注册或创建新用户时提供给您的 AWS 访问密钥。

密钥- 您在注册或创建新用户时提供给您的 AWS 密钥。

AWS Credentials Provider 服务- 如果在使用此服务的 EC2 实例上运行 NiFi,您可以使用默认的 IAM 角色进行身份验证。您必须在控制器服务部分创建此服务。https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi/nifi-aws-nar/1.5.0/org.apache.nifi.processors.aws.credentials.provider.service。 AWSCredentialsProviderControllerService/

通信超时- 等待 Dynamo 响应的时间。

SSL 上下文服务- SSL 上下文服务,如果提供,将用于创建也在 NiFi 的控制器服务部分中创建的连接。