Tôi đã tạo một cụm elasticsearch với dữ liệu lớn và khách hàng có thể gửi yêu cầu tìm kiếm đến nó. Đôi khi, cụm tốn nhiều thời gian để giải quyết một yêu cầu. Câu hỏi của tôi là, có API nào để loại bỏ chuỗi được chỉ định mà tốn quá nhiều thời gian không?Làm thế nào để loại bỏ chuỗi yêu cầu tìm kiếm trên cụm elasticsearch? Có một số API để làm điều này?
Làm thế nào để loại bỏ chuỗi yêu cầu tìm kiếm trên cụm elasticsearch? Có một số API để làm điều này?
Trả lời
Tôi muốn theo dõi câu trả lời này ngay bây giờ mà elasticsearch 1.0.0 đã được phát hành. Tôi vui mừng thông báo rằng có chức năng mới đã được giới thiệu thực hiện một số bảo vệ cho heap, được gọi là bộ ngắt mạch.
Với việc thực hiện hiện tại, bộ ngắt mạch cố gắng dự đoán lượng dữ liệu sẽ được tải vào bộ đệm dữ liệu trường và nếu nó lớn hơn giới hạn (80% theo mặc định), nó sẽ chuyển bộ ngắt mạch và bằng cách giết truy vấn của bạn.
Có hai thông số để bạn có thể thiết lập nếu bạn muốn thay đổi chúng:
indices.fielddata.breaker.limit
indices.fielddata.breaker.overhead
Các nguyên cần thiết là hằng số được sử dụng để ước tính có bao nhiêu dữ liệu sẽ được nạp vào bộ nhớ cache lĩnh vực; đây là 1,03 theo mặc định.
Đây là một sự phát triển thú vị cho elasticsearch và một tính năng mà tôi đã chờ đợi để được triển khai trong nhiều tháng.
Đây là yêu cầu kéo nếu muốn xem cách nó được tạo; cảm ơn dakrone vì đã hoàn thành công việc này!
https://github.com/elasticsearch/elasticsearch/pull/4261
Hope this helps, MatthewJ
Hiện nay nó không thể giết hoặc ngăn chặn các truy vấn chạy dài, Nhưng Elasticsearch sẽ thêm một api quản lý công việc để làm điều này. API có thể được thêm vào trong Elasticsearch 5.0, có thể là vào năm 2016 hoặc muộn hơn.
xem Task management 1 và Task management 2.
Tôi cũng muốn biết câu trả lời cho câu hỏi này; dường như không có cách nào để quản lý/theo dõi các truy vấn trong ES sau khi tìm kiếm thông qua nguồn, vì vậy sẽ rất tuyệt nếu có ai đó ở đây. – MatthewJ
Tôi cũng hỏi googlegroups, và một anh chàng nói không thể dừng yêu cầu hiện tại và đề xuất tôi đặt thời gian chờ trên truy vấn để ngăn yêu cầu chạy dài. – Hoony