Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
247 views
in Technique[技术] by (71.8m points)

Why front Amazon AWS ElasticSearch with AWS Kinesis Firehose

I see several applications where data is being sent to AWS Kinesis Firehose and then automatically transferred to AWS ElasticSearch. You can directly write to AWS ElasticSearch. If I don't need any kind of data transformation and I can directly write data to ElasticSearch does fronting ElasticSearch with AWS Kinesis Firehose still provide any advantage. Like does it protect ElasticSearch from spikes in traffic etc.?

question from:https://stackoverflow.com/questions/66057918/why-front-amazon-aws-elasticsearch-with-aws-kinesis-firehose

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Apart from transformations, the following reasons can be considered for having Firehose in front of AWS ES:

  1. Better control over streaming data

Since Elasticsearch has limit on the write queue size, if there is a burst in data for few seconds, ES might throw rejects if it wont be able to write the data in that limited data. In this, you will end up loosing the rejected data as well.

However, when Firehose is kept in front, it will handle the retries for you and there will be less chances of data loss.

  1. Firehose is one-way to ES

Your ES cluster might contain confidential data and if you are allowing user to make POST requests (required for some writes), you might expose the cluster to more than required users. Firehose can help you in limiting that by only giving write applications/user access to the FH stream instead of the ES cluster.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...