2010-04-21 34 views

Trả lời

15

Tùy thuộc vào cấu hình của trường bạn đang truy vấn.

Nếu cấu hình của trình phân tích chỉ mục bao gồm StopFilterFactory, thì các từ dừng chỉ đơn giản là không được lập chỉ mục, do đó bạn không thể truy vấn chúng sau đó. Nhưng vì Solr giữ vị trí của các thuật ngữ trong chỉ mục, bạn có thể hướng dẫn nó tăng giá trị vị trí của các từ còn lại để phản ánh thực tế ban đầu, có các thuật ngữ khác ở giữa.

Các "enablePositionIncrements" đây là chìa khóa để đạt được điều đó:

<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true"/> 

Nếu phân tích truy vấn cũng có StopFilterFactory cấu hình với các thiết lập tương tự, truy vấn của bạn nên làm việc như mong đợi.

Xem liên kết này để biết chi tiết: http://www.lucidimagination.com/search/document/CDRG_ch05_5.6.18

+0

Cảm ơn bạn, đó là những gì tôi cần – Ruth

+0

Rất khó để tìm định nghĩa chính xác của thuộc tính enablePositionIncrements. Cảm ơn anh bạn! – BFree

2

Tôi cũng đã có may mắn sử dụng CommonGramsFilterFactory để đạt được kết quả tương tự bằng cách đặt này ở nơi thích hợp trong khai fieldType của bạn.

<filter class="solr.CommonGramsFilterFactory" words="stopwords.txt" ignoreCase="true"/> 
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/> 

Không chắc nó hoạt động tốt như thế nào với enablePositionIncrements = "true" được bật trong StopFilterFactory. Bạn cũng cần phải chạy solr 1.4 để sử dụng.

+0

Cảm ơn bạn rất nhiều, đó là hữu ích để biết – Ruth

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