Elasticsearch was never a database
The article explores why Elasticsearch should not be utilized as a primary database or system of record, despite its popularity. Originally built as an API over Apache Lucene, Elasticsearch excels at full-text search but lacks the fundamental guarantees of a relational database like Postgres. Fundamental issues include the absence of atomic transactions across multiple documents, lack of traditional isolation levels, and asynchronous search refreshes that lead to consistency gaps. Furthermore, schema changes often require full reindexing, and complex relational queries like joins are not natively supported, forcing developers to implement clumsy workarounds. While Elasticsearch is an exceptional search engine, relying on it as a source of truth introduces significant operational risks and complexity regarding data integrity and reliability.
Summaries are AI-generated to help you scan faster. Open the original source for full context.