2017-06-16 64 views
0

我們可以從單個Kinesis Firehose有多個目的地嗎?我看到這張圖片enter image description hereKinesis的多個目的地

由此看來,它似乎可以從單一射流中添加s3,redshift和elastic搜索。我完全想要這樣做。

但是,當我從aws控制檯執行它時,它只要求單個目的地。對於彈性搜索,它也要求S3。所以,我可以添加彈性搜索和s3,但仍然是redhift。我不知道如何從相同的kinesis做到這一點。請幫忙。

回答

1

正如你所說的,現在它不可用,但是,使用最近增加的firehose功能,你可以使用一個消防水槍寫入其中的3個。

但我不確定這是做這件事的最佳方式,您需要比較aws成本和開發成本,然後再決定。

如果你想嘗試這裏是你如何做到這一點。

配置firehose寫入紅移,intermadiate文件將在s3上(可能中間文件被刪除),因此您可以將它們存儲在具有存儲桶複製的另一個存儲桶中,或者觸發新文件通知並使用lambda將其移動到另一個存儲桶功能。同時要將每條記錄寫入Elasticsearch,您將使用firehose lambda連接,它位於firehose控制檯中,稱爲數據轉換。 (下面的鏈接)寫一個簡單的elasticsearch http post寫入每個記錄firehose得到的請求,所以你將有3個目的地的數據。

https://aws.amazon.com/blogs/compute/amazon-kinesis-firehose-data-transformation-with-aws-lambda/

前面說過這可以花費更多,並且具有2個firehoses做紅移寫入和ES + S3寫入是更容易的。