Elasticsearch là gì
Công cụ tìm kiếm và phân tích
Elasticsearch là một công cụ tìm kiếm và phân tích phân tán, mã nguồn mở được xây dựng trên Apache Lucene. Nó cung cấp tìm kiếm toàn văn, tìm kiếm có cấu trúc và khả năng phân tích thời gian thực.
Elasticsearch là gì
Elasticsearch là cơ sở dữ liệu NoSQL được tối ưu hóa để tìm kiếm và phân tích khối lượng dữ liệu lớn. Nó lập chỉ mục dữ liệu ở định dạng JSON và cung cấp REST API mạnh mẽ cho các truy vấn.
Tính năng chính
- Tìm kiếm toàn văn — tìm kiếm ngôn ngữ tự nhiên với điểm liên quan
- Kiến trúc phân tán — mở rộng theo chiều ngang qua các cụm
- Thời gian thực — lập chỉ mục và tìm kiếm gần như tức thì
- RESTful API — tương tác đơn giản dựa trên HTTP
Khái niệm cốt lõi
- Index — bộ sưu tập tài liệu (tương tự cơ sở dữ liệu)
- Document — đơn vị dữ liệu ở định dạng JSON
- Shard — phân vùng ngang của index
- Replica — bản sao của shard để chịu lỗi
Trường hợp sử dụng
- Tìm kiếm trang web và ứng dụng
- Phân tích log (ELK Stack)
- Giám sát số liệu
- Phân tích kinh doanh
- Hệ thống đề xuất
Lợi ích
- Tốc độ tìm kiếm trên hàng tỷ tài liệu
- Lược đồ dữ liệu linh hoạt
- Ngôn ngữ truy vấn phong phú (Query DSL)
- Tổng hợp cho phân tích
- Cộng đồng năng động