2014-09-03 21 views
5

Có cách nào để giới hạn trường vào một số ký tự nhất định khi nhận kết quả từ Elasticsearch không? Tôi biết cách giới hạn kết quả của mình thành một nhóm trường cụ thể, nhưng tôi không thấy cách lấy một phần dữ liệu. Tôi chỉ muốn nhận 100 ký tự đầu tiên để hiển thị bản xem trước dữ liệu và giới hạn I/O.Độ dài trường giới hạn khi truy vấn Elasticsearch

Tôi đã thấy đánh dấu đó cung cấp tùy chọn đặt kích thước phân đoạn, nhưng tôi không nhất thiết phải truy vấn bất kỳ điều gì từ trường tôi muốn chuỗi con của.

+3

Tôi không nghĩ rằng có một tính năng như vậy cho phép bạn chỉ định chuỗi con của trường. Nhưng bạn có thể chỉ mục 100 ký tự đầu tiên cùng với trường gốc. Sau đó, bạn có thể sử dụng tính năng lọc nguồn để loại trừ trường gốc trong '_source' [ref here] (https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-source-filtering.html) . Hoặc thậm chí bạn có thể loại trừ hoàn toàn trường gốc ở thời gian chỉ mục, [xem tại đây] (https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-source-field.html#include-exclude) – foresightyj

Trả lời

0

Elasticsearch không cung cấp tùy chọn như vậy. Cách lý tưởng để đạt được loại kịch bản này là thay đổi cách bạn đang lập chỉ mục dữ liệu và có thể lưu trữ một đoạn mã cùng với các trường có độ dài dài. (@foresightyj đã cung cấp liên kết tốt để loại trừ/bao gồm các trường tại thời gian lập chỉ mục/truy vấn)

Các vấn đề liên quan