Elasticsearch-la-gi

 Elasticsearch là một cơ sở dữ liệu (NoSQL), là một công cụ tìm kiếm và phân tích dữ liệu lớn, có mã nguồn mở được xây dựng trên nền tảng Apache Lucene. Công nghệ cung cấp khả năng tìm kiếm nhanh chóng và phân tích dữ liệu phức tạp thông qua giao diện RESTful và JSON.

Elastic search là gì? Tổng hợp những khái niệm và tính ứng dụng cần biết về Elasticsearch

Đối tượng sử dụng Elasticsearch?

Bạn nên sử dụng Elasticsearch cho những trường hợp sau:
  • Tìm kiếm thông tin dạng text thông thường.
  • Tìm kiếm thông tin dạng text và dữ liệu có cấu trúc.
  • Tổng hợp và phân tích dữ liệu kinh doanh yêu cầu bảo mật.
  • Xử lý và lưu trữ dữ liệu số lượng lớn.
  • Ghi nhật ký và phân tích nhật ký.
  • Kiểm tra hiệu năng hoạt động của ứng dụng.
  • Tìm kiếm dữ liệu theo tọa độ, tổng quan hóa dữ liệu trên không gian địa lý.

Elasticsearch hiện được sử dụng phổ biến bởi các doanh nghiệp lớn như Facebook, Adobe Systems, Wikipedia, StackOverflow, Netflix, GitHub,…

Hệ sinh thái ELK stack

ELK Stack là từ viết tắt được sử dụng để mô tả bộ dịch vụ bao gồm 3 dự án phổ biến: Elasticsearch, Logstash và Kibana. Thường được gọi là Elasticsearch, ELK Stack mang tới cho bạn khả năng tổng hợp nhật ký từ tất cả các hệ thống và ứng dụng của bạn, phân tích những nhật ký này, hiển thị dữ liệu để giám sát ứng dụng và cơ sở hạ tầng, khắc phục sự cố nhanh hơn, phân tích bảo mật, v.v.

  • Elasticsearch - máy chủ lưu trữ và tìm kiếm dữ liệu log
  • Logstash - thành phần xử lý dữ liệu, sau đó nó gửi dữ liệu nhận được cho Elasticsearch để lưu trữ
  • Kibana - ứng dụng web để tìm kiếm và xem trực quan các logs
  • Beats - thành phần gửi dữ liệu thu thập từ log của máy đến Logstash

Components of Elasticsearch

Nguyên tắc hoạt động của Elasticsearch

Elasticsearch hoạt động bằng cách lưu trữ dữ liệu trong các index (chứa các tài liệu) và các shards (phân chia các phần dữ liệu). Khi dữ liệu được thêm vào Elasticsearch sẽ được phân tích và lưu trữ theo cấu trúc dữ liệu JSON. Dữ liệu này sau đó có thể được tìm kiếm và truy xuất thông qua giao diện RESTful API công bố.

Khi tìm kiếm được thực hiện, Elasticsearch sử dụng cấu trúc dữ liệu ngược (inverted index) để nhanh chóng tìm ra kết quả phù hợp với truy vấn. Quá trình này giúp tăng tốc độ tìm kiếm đáng kể và làm cho Elasticsearch trở thành một công cụ tìm kiếm hiệu quả.

Hệ thống của Elasticsearch cũng có khả năng mở rộng tốt, cho phép nó xử lý lượng dữ liệu lớn và tải lớn một cách hiệu quả thông qua khả năng chia nhỏ dữ liệu và phân phối chúng trên các node khác nhau. Điều này cung cấp khả năng mở rộng ngang (horizontal scalability), tức là bạn có thể thêm node mới để tăng khả năng xử lý và lưu trữ mà không làm giảm hiệu suất.

RDBMS vs. Elasticsearch

RDBMS vs. Elasticsearch





Viết nhận xét

Các bạn có thể viết lời nhận xét cho bài viết, nhưng cần tuân thủ một số quy tắc sau:

» Các nhận xét/bình luận phải nghiêm túc, không dung tục, không spam.
» Nội dung phải liên quan tới chủ đề bài viết.
» Viết bằng tiếng việt có dấu hoặc tiếng Anh. Nội dung viết không dấu sẽ bị xóa.
» Hãy để lại tên của bạn khi nhận xét/bình luận, để tôi có thể dễ dàng trả lời bạn khi cần.