Elasticsearch
Definition
Distributed search and analytics engine for storing, searching, and analyzing large volumes of data quickly, widely used for log and event data.
Use Cases
- Wikipedia: Full-text search across encyclopedia articles with relevance ranking and fast autocomplete — Wikipedia’s search stack has used Elasticsearch to index article content and metadata, enabling fast retrieval and relevance scoring for user queries (Improved search speed and relevance for users navigating a very large corpus of articles)
- GitHub: Fast code and repository search across large volumes of text — GitHub has used Elasticsearch as part of its search infrastructure to index and query content efficiently at scale (Enables responsive search experiences over large datasets, supporting developer productivity)
- Stack Overflow: Search across questions, answers, tags, and related content with relevance tuning — Stack Overflow has used Elasticsearch to index posts and metadata to support fast, relevant search for users (Helps users quickly find existing answers, reducing duplicate questions and improving site usability)
Provider Equivalents
- AWS: Amazon OpenSearch Service
- Azure: Azure AI Search
- GCP: Vertex AI Search
- OCI: OCI OpenSearch
Frequently Asked Questions
- What's the difference between Elasticsearch and a relational database (like PostgreSQL)?
- A relational database is optimized for transactions and structured queries (joins, constraints, updates) with strong consistency. Elasticsearch is optimized for fast full-text search, filtering, and aggregations over indexed documents. You often store the system of record in a database and send a copy of searchable fields to Elasticsearch for search and analytics.
- When should I use Elasticsearch?
- Use Elasticsearch when you need fast full-text search (relevance ranking, autocomplete), flexible filtering over many fields, and real-time analytics/aggregations (dashboards, log exploration). Common cases include product search, site search, log/trace search, security analytics, and monitoring. Avoid it as your primary transactional database; it’s typically a search layer on top of another data store.
- How much does Elasticsearch cost?
- Cost depends on how you run it: (1) Self-managed: you pay for compute, storage, and operations time. (2) Managed services (Elastic Cloud, Amazon OpenSearch Service, OCI OpenSearch, etc.): pricing is usually based on instance size/count, storage type/amount, data transfer, and optional features. Major cost drivers are data volume, indexing rate, query load, retention period, replicas, and high availability across zones.
Category: data
Difficulty: advanced
Related Terms
See Also