NOTE

1.7 Elasticsearch

English translation of the original VNote ‘Elasticsearch’, preserving its structure and historical learning notes.

Elasticsearch / SearchCreated Updated 1 min readhistorical

This is a historical learning note and may contain outdated or incomplete understanding.

1. What Is Elasticsearch?

  • A full-text search engine developed based on Lucene:
    • Full-text search engine.
    • Lucene is very powerful, but its API is especially complex. Elasticsearch wraps it. Its features are listed below.

2. Elasticsearch Features

  • Supports distributed operation: horizontal scaling supports massive amounts of data.
  • Supports near-real-time writes and searches: from write to searchable is close to 1 second.
  • Supports data analysis: similar to SQL aggregation/statistics functions.

From the perspective of ACID, D is implemented through translog, I uses optimistic locking to solve dirty writes, and A seems not to be implemented.

3. Elasticsearch Installation

4. Using Elasticsearch

5. Elasticsearch Principles

5.1. Inverted Index

Elasticsearch Index Implementation

5.2. Distributed Architecture

Elasticsearch Architecture

6. Elasticsearch Optimization

Elasticsearch Optimization

7. Elasticsearch-MySQL Synchronization

Elasticsearch and MySQL Synchronization

8. Cloud Elasticsearch

Cloud Elasticsearch

9. References

Discussion

Sign in with GitHub to comment. Discussions are stored as GitHub Issues.View on GitHub