Actually, there is similar question here: <https://stackoverflow.com/questions/23922404/elasticsearch-hadoop-why-would-i>

But the answer doesn't really satisfy me.

My questions are simple:

1. Why should we use Hadoop or Spark, when ElasticSearch exists?
2. What is it that Hadoop or Spark **has**, and ElasticSearch **doesn't have?**
3. If **algorithm** is the answer, I believe I'm no better than Kimchy in creating algorithms. While in Hadoop or Spark, we need to create our own algorithm. Again, why still Hadoop or Spark?
4. The answer said, "Elasticsearch is a distributed search engine and it shouldn't be used as a data warehouse."

Why shouldn't it be used as a **data warehouse**?

Thank you and best regards,

Rizki Sunaryo