首页 > 解决方案 > 在 java 中使用 aws lambda 将记录分批放入 kinesis firehose

问题描述

我需要使用用 Java 编写的 AWS Lambda 将数据分批放入 Firehose。数据是一个字符串列表:["john", "saul", "paul", "jonas"]。我知道如何在 python 中做到这一点,但我在 Java 中苦苦挣扎。

以下是我需要在 Java 中执行的步骤:

1)。构建一个消防软管客户端。

2)。构建一批数据。(比如批量大小为 2)

3)。将数据放入 firehose。

4)。在 firehose 中获取响应并提取哪些记录未能传递。

如何在 Java 中为所有这些步骤编写代码?

标签: javaamazon-web-servicesaws-lambdaamazon-kinesis-firehose

解决方案


此用例可以通过使用 Lambda Java 运行时 API 和Amazon Kinesis Data Firehose Java API来完成。首先,您需要使用 Java 运行时 API 创建一个 Lambda 函数。如果您不知道如何执行此任务,我建议您阅读此 AWS 文档:

使用 AWS Step Functions 和适用于 Java 的 AWS 开发工具包构建通过多个渠道发送通知的工作流

本文档教您如何使用 Java 运行时 API 编写 Lambda 函数,以及如何处理从 Lambda 函数调用 AWS 服务所需的 IAM 角色。对于您的使用案例,您需要创建一个有权使用Amazon Kinesis Data Firehose的 IAM 角色。

此外,此 Lambda 函数可以使用各种 AWS SDK for Java API 调用其他 AWS 服务。在此示例中,调用 Pinpoint、SES 和 SNS 服务来执行特定功能。对于您的使用案例,您需要使用Amazon Kinesis Data Firehose API

要实现您想做的事情,请务必查看Amazon Kinesis Data Firehose API V2的示例。

总而言之,要实现您的用例,您需要使用 Java 运行时 API 编写一个 Lambda 函数,并在 Lambda 函数中使用Amazon Kinesis Data Firehose API,类似于上述教程如何使用其他 AWS Service Java API .


推荐阅读