按负载将AWS Kinesis Firehose数据分区为s3

问题描述:

我正在使用AWS-Kinesis-Firehose将数据注入S3,并在之后与雅典娜一起使用。按负载将AWS Kinesis Firehose数据分区为s3

我想分析来自不同游戏的事件,为了避免雅典娜探索大量数据我想用每个游戏的标识符来划分s3数据,到目前为止我没有找到解决方案,因为Firehose从不同的数据接收数据游戏。

有谁知道该怎么做?

谢谢, Javi。

+0

最好添加你到目前为止的代码 – anyanwu

您可以将您的流量发送到主流水流 - 然后使用lambda功能将数据分割到多个流水流 - 每个游戏,将保存在一个单独的文件夹/桶数据

+0

我想过这个,但是有一个问题,我期望每天有大约2000万事件,这意味着lambda函数每天将被触发20M次只是为了“分类”事件,这将是昂贵的。 – bracana

+0

我发现了cloudWatch事件,可以在一段时间间隔内帮助我,但仍然可能很昂贵 – bracana

+0

Lambda可以通过FireHose作为批量触发1000个事件 - 这将显着减少触发器 –

你可以可能使用Amazon Kinesis Analytics根据某些逻辑(如游戏ID)将传入的Firehose流划分为单独的输出流。

它可以接受KinesisFirehoseInput并将数据发送到KinesisFirehoseOutput

但是,limits documentation似乎表明,每个应用程序只能有3个输出目标,所以这是不够的。