Tôi biết rằng bạn có thể tìm thấy hầu hết các cụm từ được sử dụng trong chỉ mục có sử dụng các khía cạnh.Cách tìm các cụm từ được sử dụng nhiều nhất trong elasticsearch?
Ví dụ đầu vào sau:
"A B C"
"AA BB CC"
"A AA B BB"
"AA B"
hạn khía cạnh trả về này:
B:3
AA:3
A:2
BB:2
CC:1
C:1
Nhưng tôi tự hỏi rằng là nó có thể liệt kê sau:
AA B:2
A B:1
BB CC:1
....etc...
Is có một tính năng như vậy trong ElasticSearch?
Có thể thử xác định bộ phân tích tùy chỉnh trên trường sử dụng trình phân tích 'shingle'. Điều này sẽ tạo ra các thẻ bằng cách kết hợp các từ (như bạn đang hỏi). Sau đó, bạn có thể thử xem liệu khía cạnh sẽ trả về số lượng trên các mã thông báo kết hợp này hay không. Có một [xem các tài liệu es trên bộ lọc mã thông báo shingle] (http://www.elasticsearch.org/guide/reference/index-modules/analysis/shingle-tokenfilter/) – ramseykhalaf
Cảm ơn, điều này có thể làm việc. Facets trả về mã thông báo, vì vậy hầu hết có thể nó cũng trả về các cụm từ này. Nhưng, điều này không áp dụng cho các chỉ mục hiện có và điều này sẽ làm tăng kích thước tệp quá nhiều, phải không ?. Tôi sẽ cần tính năng này cho trên 5 GB dữ liệu của tôi mỗi ngày. Và sau ngày đó kết thúc tôi sẽ không còn cần nó nữa. Vì vậy, tôi đoán điều tốt nhất để làm chỉ mục rằng 5GB dữ liệu vào cuối mỗi ngày, lưu trữ các kết quả khía cạnh và sau đó xóa dữ liệu chỉ mục mới. (Điều này sẽ tiếp tục trong vòng lặp) Bất kỳ tùy chọn nào khác? – shyos
Tôi tin rằng câu trả lời có sẵn tại http://stackoverflow.com/questions/39380463/get-top-100-most-used-three-word-phrases-in-all-documents – AlexG