+1

[Elasticsearch - CLI] Explain và Validate Queries

Đôi khi, bạn có thể thấy rằng kết quả tìm kiếm không hiển thị theo thứ tự mong muốn hoặc một số documents được xếp hạng cao hơn những documents khác. Elasticsearch cung cấp hai API hữu ích để giúp bạn hiểu rõ hơn về cách hoạt động của truy vấn tìm kiếm:

  • Explain API: Giải thích điểm số của một query trên một document cụ thể.
  • Validate API: Kiểm tra tính hợp lệ của một query mà không thực thi nó.

Ví dụ, để nhận được lời giải thích về lý do tại sao một cuốn sách cụ thể lại phù hợp với query, ta có thể sử dụng:

$ curl -i https://localhost:9200/catalog/books/978-1617292774/_explain?pretty -d '
{
  "query": {
    "term": {
      "publisher": "Manning"
    }
  }
}'

Kết quả sẽ bao gồm chi tiết về scoring, giúp bạn hiểu tại sao một document có thứ hạng cao hơn hoặc thấp hơn trong kết quả tìm kiếm.

Tương tự, để kiểm tra xem một query có hợp lệ hay không trước khi thực thi, ta có thể sử dụng:

$ curl -i https://localhost:9200/catalog/books/_validate/query?pretty -d '
{
  "query": {
    "term": {
      "publisher": "Manning"
    }
  }
}'

Nếu query hợp lệ, Elasticsearch sẽ trả về "valid": true. Điều này rất hữu ích để kiểm tra trước khi thực thi truy vấn trên một cluster thực tế.


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí