Easticsearch là gì? Hướng dẫn cài đặt Easticsearch đơn giản

Icon Author Băng Tâm

Ngày đăng: 2021-02-03 18:57:29

Trong hệ thống công nghệ thông tin, có một lượng các nguồn dữ liệu lớn gọi là Big Data đang tồn tại và sản sinh ra từng ngày. Mỗi dữ liệu sẽ mang theo các giá trị khác nhau, có thể hoàn thiện, cũng có thể dở dang. Nhiệm vụ của các lập trình viên chính là biến chúng trở nên ý nghĩa hơn bằng cách phân tích và xử lý, cài đặt. Vậy thì bạn sẽ cần phải có công cụ hỗ trở trong quá trình  này. Trong tất cả, bạn có thể lựa chọn Elasticsearch. Vậy Elasticsearch là gì?

Theo dõi ngay bài viết này để có thể hiểu rõ hơn về thuật ngữ Elasticsearch nhé.

1. Tìm hiểu khái niệm Elasticsearch là gì?

Elasticsearch chính là công cụ tìm kiếm dựa trên cơ sở phần mềm Lucene. Elasticsearch sẽ cung cấp cho người dùng giải pháp tìm kiếm toàn diện, đa nhiệm với khả năng phân tán cao độ thông qua HTTP web interface, schema – free JSON documents. Elasticsearch được phát triển bằng java và phát hành theo giấy phép của Apache.

Tìm hiểu khái niệm Elasticsearch là gì?
Tìm hiểu khái niệm Elasticsearch là gì?

Cách hiểu thông dụng của Elasticsearch thì đó chính là một Database server phát triển trong Java có mã nguồn mở và độc lập hoàn toàn. Người ra dựa vào tính năng, vai trò của nó để phục vụ cho việc tìm kiếm, phân tích dạng tài liệu văn bản. Khả năng của nó có thể lấy được các dữ liệu không hề mang cấu trúc ở rất nhiều nguồn, sau đó tối ưu hóa cao và lưu trữ vào kiểu định dạng phức tạp để phục vụ tốt nhất cho các thao tác tìm kiếm dựa trên nền tảng của ngôn ngữ.

Tìm hiểu chung về Elasticsearch
Tìm hiểu chung về Elasticsearch

Để hiểu và dễ ghi nhớ về Elasticsearch thì bạn có thể ghi lại tóm tắt các yếu tố thuộc về Elasticsearch như sau:

- Nó chính là một Search engine (công cụ tìm kiếm)

- Được xây dựng và hoạt động trên nền tảng của Lucene Apache

- Cơ chế hoạt động tương tự một web server, mang khả năng near realtime nhờ vào giao thức RESTful.

- Chạy ở một máy chủ riêng, giao tiếp qua RESTful, hoàn toàn không phụ thuộc vào ngôn ngữ của client hay ngôn ngữ hệ thống, do đó các lập trình viên có thể tích hợp Elasticsearch vào hệ thống dễ dàng, tức là chỉ cần bạn gửi request http thì đã có được kết quả.

- Là hệ thống phân tán, một mã nguồn mở, khả năng mở rộng đạt đến độ chất lượng.

2. Khám phá về lịch sử hình thành và phát triển của Elasticsearch

Elasticsearch là sản phẩm đến từ phía công ty Elastic, thuộc nhóm những sản phẩm có nguồn mở vô cùng lớn, cùng với Kibana, Logstash, Beats. Năm 2014, tiền thân của Elasticsearch là Compass được tạo lập. Trải qua một cuộc hành trình để đến được như ngày nay, lịch sử đó của Elasticsearch được mô phỏng lại theo dòng thời gian sau:

Lịch sử của Elasticsearch
Lịch sử của Elasticsearch

3. Hiểu rõ hơn về Elasticsearch thông qua các ưu điểm nổi bật

Elasticsearch có rất nhiều ưu điểm, bởi thế mà nó luôn được lựa chọn hàng đầu cho các giải pháp công nghệ tương ứng. Tùy vào thế mạnh của nó là gì mà người ta sẽ đưa ra quyết định chọn Elasticsearch phục vụ cho mục đích đó. Vì vậy các developer hãy nắm bắt chính xác những ưu điểm mà Elasticsearch đang mang để có thể tận dụng sử dụng nó một cách hiệu quả nhé.

- Elasticsearch là một mà nguồn mở hoàn toàn miễn phí mà vẫn rất đáng tin cậy. Nhờ ưu điểm này mà Elasticsearch có thể khiến cho các cấu trúc phức tạp trở nên đơn giản hóa hơn, là cơ sở giúp các dự án được triển khai nhanh chóng.

Đặc điểm của Elasticsearch
Đặc điểm của Elasticsearch

- Tốc độ thực hiện nhanh do Elasticsearch tận dụng được sức mạnh tìm kiếm của Distributed inverted indices.

 - Sử dụng API dễ dàng.

- Lợi thế đa ngôn ngữ: đây là một tính năng khá khác biệt của Elasticsearch. Nó sẽ hỗ trở xử lý dữ liệu ở nhiều ngôn ngữ khác nhau như tiếng Ả Rập, tiếng Hàn, tiếng Anh, Trung,…

- Lưu trữ các thực tể phức tạp, lập chỉ mục mặc định cho các trường nội dung, từ đó dữ liệu sẽ được được tìm kiếm dễ dàng,

- Có chức năng hoàn toàn tự động

- Là một Shema-free, chấp nhận JSON.

4. Hướng dẫn cài đặt Elasticsearch dễ dàng

Hướng dẫn cài đặt Elasticsearch dễ dàng
Hướng dẫn cài đặt Elasticsearch dễ dàng

Với rất nhiều ưu điểm vượt trội mà Elasticsearch tạo ra thì chúng ta nên cài đặt nó về hệ thống:

- Bước 1: Cài đặt Java về máy, nên chọn phiên bản mới nhất. Nếu như trong máy của bạn đã cài java rồi thì hãy kiểm tra lại phiên bản đã được cài là gì bằng cách mở cmd và thực hiện lệnh Java – version. Cần chọn Java phiên bản từ 7 trở lên để có sự tương thích, phù hợp với Elasticsearch.

- Bước 2: Truy cập vào hệ thống của Elastic và tìm kiếm danh mục tải chương trình Elasticsearch.

- Bước 3: Tải Elasticsearch về máy

- Bước 4: Tệp Zip của Elasticsearch được tải về máy, bạn hãy tiến hành giải nén cho tệp.

- Bước 5:  Tìm thư mục Elasticsearch-x.y-z và chọn tệp Bin.

- Bước 6: Trong Bin, bạn tìm tiếp tập tin có tên Elasticsearch.bat, click đúng chuột để tiến hành khởi động là Elasticsearch.

- Bước 7: Chờ đợi quá trình khởi động lại của máy chủ Elasticsearch.

- Bước 8: Mở trình duyệt, gõ vào lệnh localhost:9200. Lệnh này cho phép bạn kiểm tra máy chủ đang chạy để thực hiện lệnh cài đặt Elasticsearch hay không.

- Bước 9: Nếu như bạn nhận được thông báo này thì có nghĩa rằng sự cài đặt của bạn đã thành công.

- Bước 10: Cuối cùng, hãy thêm Plugin Sense cho Elasticsearch.

Bước 9 trong quá trình cài đặt Elasticsearch
Bước 9 trong quá trình cài đặt Elasticsearch

5. Hiểu thêm một vài khái niệm liên quan đến Elasticsearch

Tìm hiểu về Elasticsearch không chỉ khám phá duy nhất Elasticsearch là gì, bạn còn cần phải nắm bắt được các khái niệm liên quan tới Elasticsearch mới có đầy đủ kiến thức để sử dụng tốt Elasticsearch. Ngay dưới đây, chúng ta sẽ tìm hiểu một vài thuật ngữ đó nhé.

- Near Realtime: ai thông thạo tiếng anh sẽ dễ dàng hiểu ý nghĩa của near realtime chính là gần thời gian thực. Như định nghĩa có nói, Elasticsearch chính là near realtime, tức là khẳng định nó có khả năng lên lịch tiếp nhận một trạng thái mới một cách thường xuyên đối với tài liệu mà nó tìm thấy. Trạng thái làm mới tính bằng đơn vị giây vì thế mà khi có độ trễ tồn tại thì cũng chỉ trong một khoảng thời gian rất nhỏ.

Một vài khái niệm liên quan đến Elasticsearch
Một vài khái niệm liên quan đến Elasticsearch

- Index: Đây là một tập hợp gồm các tài liệu tương tự nhau về đặc điểm. Tập hợp này sẽ lưu lại các nguồn dữ liệu bên trong một indices hay nhiều indices dựa vào việc so sánh các SQL. Index dùng trong việc lưu trữ, đọc tài liệu. Mỗi một index trong Elasticsearch sẽ chỉ được thể hiện bẳng một cái tên duy nhất viết bằng chữ thường.

- Document: là đơn vị thông tin cơ bản để phục vụ việc lập nên index. Chúng gồm có nhiều trường khác nhau, mỗi một trường đều có chứa các giá trị, có thể là một hay nhiều và cũng được xác định bằng tên. Document chính là schema free.

- Node: đây là single instance, tham gia trong searching và indexing. Tương tự như hai yếu tố trên, node sẽ dược xác định bằng tên và sẽ nhận Identifier duy nhất, chọn ngẫu nhiên mà gắn vào.

- Type: được dùng để định nghĩa các tài liệu có chung trường nội dung. Type cũng chính là partition hoặc Logical category của một index. Một index có thể xác định được nhiều type.

Ngoài ra, trong Elasticsearch còn có các thuật ngữ gồm Cluster – tập hợp của các node Elasticsearch, Shards và Replicas – thay thế dự phòng.

Như vậy, bài viết dừng lại ở đây và đã mang đến cho những bạn đọc có mối quan tâm đến Elasticsearch những thông tin cơ bản nhất về Elasticsearch. Qua đây, bạn sẽ hiểu rõ ràng Elasticsearch và các vấn đề liên quan để phục vụ cho quá trình hành nghề trong lĩnh vực công nghệ thông tin của bạn.

Tham gia bình luận ngay!

captcha
Chưa có bình luận nào

Thông Báo

Thoát

Bạn có tin nhắn mới từ Đỗ Xuân Mạnh: