2011-02-07 34 views

Trả lời

4

Có, bạn có thể thực hiện việc này bằng tệp YAML cấu hình bên trong của ElasticSearch.

Xem config docs để biết cách thay đổi cài đặt máy phân tích.

16

Theo mặc định, trình phân tích elasticsearch sử dụng là standard analyzer với các từ dừng mặc định Lucene English. Tôi đã cấu hình elasticsearch để sử dụng cùng một phân tích nhưng không có từ dừng bằng cách thêm phần sau vào tệp elasticsearch.yml.

# Index Settings 
index: 
    analysis: 
    analyzer: 
     # set standard analyzer with no stop words as the default for both indexing and searching 
     default: 
     type: standard 
     stopwords: _none_ 
4

Bạn có thể ghi đè lên phân tích mặc định trên toàn cầu và tắt bộ lọc từ dừng bằng cách thêm các dòng để elasticsearch.yml của bạn:

index.analysis.analyzer.default: 
    type: custom 
    tokenizer: standard 
    filter: standard, lowercase 

này sẽ tạo ra một phân tích tùy chỉnh với các tokenizer tiêu chuẩn và hai bộ lọc: chuẩn và chữ thường. Bằng cách này, bộ phân tích tùy chỉnh của bạn sẽ giống hệt với bộ phân tích tiêu chuẩn nhưng nó sẽ không sử dụng bộ lọc từ dừng. Bởi vì nó được đặt tên là "mặc định", elasticsearch sẽ sử dụng nó ở khắp mọi nơi mà bộ phân tích không được đặt rõ ràng.

+1

Đây thực sự là câu trả lời hay nhất tôi đã thấy cho câu hỏi này, vì nó loại bỏ bộ lọc từ dừng và do đó làm cho mã nhỏ gọn hơn. –

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