ELASTICSEARCH 3. MỘT SỐ THAO TÁC CƠ BẢN

  1. Công nghệ thông tin

CÀI ĐẶT ELASTICSEARCH

  • Có nhiều cách để cài đặt Elasticsearch trên các hệ điều hành khác nhau, ta có thể tải về và làm theo cách theo đây:
  • Lưu ý: nếu cài đặt Elasticsearch theo cách trên, trên hệ điều hành Windows 10 - 64bit, cần thực hiện thêm một số thao tác:

Chắc chắn rằng đã cài đặt Java 1.8 và có biến JAVA_HOME trong System Environment Variables. Xem thêm tại:

Trước khi chạy file elasticsearch.bat, hãy mở file đó bằng Notepad++ hoặc một text editor khác, tìm đến dòng chứa

%JAVA%
và thay đổi thành
!JAVA!
rồi lưu lại.


CÁCH THỨC THAO TÁC CƠ BẢN VỚI ELASTICSEARCH

Vì Elasticsearch hỗ trợ thao tác bằng RESTful API, ta có thể làm việc với Elasticsearch bằng một số cách cơ bản sau đây:

  • Sử dụng phần mềm Kibana. Xem chi tiết tại:
  • Sử dụng phần mềm Postman, hoặc app Postman trên Chrome. Xem chi tiết tại:
  • Sử dụng chính thanh địa chỉ của trình duyệt (tuy nhiên cách này chỉ có thể gửi phương thức GET)

Elasticsearch sử dụng port mặc định là 9200, Kibana sử dụng port mặc định là 5601. Bài viết sử dụng Elasticsearch được đặt tại localhost.


KIỂM TRA TRẠNG THÁI CỦA ELASTICSEARCH

Vào trình duyệt và nhập vào thanh địa chỉ

http://localhost:9200
và ví dụ nhận được response nếu Elasticsearch đang hoạt động
{ "name" : "Noron-Vn", "cluster_name" : "elasticsearch", "version" : { "number" : "6.4.2", "build_hash" : "72cd1f1a3eee09505e036106146dc1949dc5dc87", "build_timestamp" : "2018-10-18T22:40:03Z", "build_snapshot" : false, "lucene_version" : "7.4.0" }, "tagline" : "You Know, for Search" }


KHỞI TẠO MỘT INDEX TRÊN ELASTICSEARCH

Gửi request (thay đổi các giá trị index_name, number_value theo yêu cầu sử dụng, giá trị mặc định nếu không khai báo của number_of_shards là 5 và của number_of_replicas là 1)

PUT localhost:9200/index_name { "settings": { "index": { "number_of_shards": number_value, "number_of_replicas": number_value } } } 
Nhận được response nếu việc khởi tạo thành công
{ "acknowledged": true }


KHỞI TẠO MỘT TYPE

Gửi request (thay đổi các giá trị index_name, type_name, field_init(s) theo yêu cầu sử dụng)

PUT /index_name/_mapping/type_name { "properties": { field_init(s) } }
Nhận được response nếu việc khởi tạo thành công
{ "acknowledged": true }
Một field_init có dạng (thay đổi các giá trị field_name, data_type theo yêu cầu sử dụng)
"field_name": { "type": "data_type" }


MỘT SỐ KIỂU DỮ LIỆU TRÊN ELASTICSEARCH

  • Văn bản: text hoặc keyword: text phục vụ việc full-text searching, còn keyword dùng cho các loại dữ liệu có cấu trúc (email, số điện thoại), phù hợp cho việc sắp xếp và tổng hợp (aggregating). Ta có thể dùng kết hợp 2 kiểu dữ liệu này trong cùng 1 field
    "field_name": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }
  • Số: long/ integer/ short/ double/ float/ ...
  • Ngày tháng: date, khi khai báo cần truyền tham số (date_time_pattern thay đổi theo yêu cầu sử dụng)
    "format": date_time_pattern
  • Các kiểu khác: boolean/ binary/ ... hay kiểu nested như đã giới thiệu ở bài trước
  • Xem thêm tại:


(còn tiếp)

Từ khóa: 

elasticsearch

,

vtcc_intern_9

,

công nghệ thông tin

tem! Hữu ích

Trả lời

tem! Hữu ích