Elasticsearch is a search and analytics engine, not a general-purpose database. It is a strong fit when users need relevance-ranked text search, faceted filtering, autocomplete, log exploration, or aggregations over large indexed datasets.
The design mistake to avoid is using it as the source of truth. Keep business data in an OLTP database, sync a derived index into Elasticsearch, and be explicit about refresh delay, operational cost, and update overhead.
This chapter focuses on inverted indexes, mappings, shard placement, query patterns, and read/write scaling.