猿问

如何将 Kinesis Firehose 数据传递到 dynamodb 表?

Kinesis Firehose 流接收消息。
有一个选项可以持久保存到 S3 中,但我的用例是插入到 dynamodb 表中。
Firehose 有一个启用 Lambda 函数的选项。我应该使用 Lambda 将插入逻辑写入 dynamodb 表吗?这是正确的方法吗?
如果是这样,那么如何使用用 Java 编写的 Lambda 将记录插入到 DynamoDB 中。

料青山看我应如是
浏览 93回答 1
1回答

ibeautiful

没有将 Firehose 流数据插入 DynamoDB(例如 S3 或 Redshift)的标准方法。推荐的方法是执行 Lambda 并将记录插入到 DynamoDB 中。使用dynamoDB.batchWriteItem或dynamoDB.putItem。public String handleRequest(KinesisFirehoseEvent event, Context context)    List<KinesisFirehoseEvent.Record> records = event.getRecords();    for(KinesisFirehoseEvent.Record rec : records)    {        String recordId = rec.getRecordId();        String data = StandardCharsets.UTF_8.decode(rec.getData()).toString();        Item item = transformStringToItem(data);        // Write the item to the table         table.putItem(item);    }    return "success";}
随时随地看视频慕课网APP

相关分类

Java
我要回答