2011-08-24 26 views
38

Trong apache Solr tại sao chúng ta luôn cần phải thích trường chuỗi hơn trường văn bản nếu cả hai giải quyết các mục đích?Trường chuỗi Solr Apache hoặc trường văn bản?

Chuỗi hoặc văn bản ảnh hưởng đến các tham số như kích thước chỉ mục, đọc chỉ mục, tạo chỉ mục như thế nào?

Trả lời

83

Các trường như được định nghĩa mặc định trong lược đồ solr là rất khác nhau.

String lưu trữ một từ/câu dưới dạng chuỗi chính xác mà không thực hiện mã thông báo, v.v. Thường hữu ích cho việc lưu trữ kết quả khớp chính xác, ví dụ: để tạo mặt.

Text thường thực hiện mã thông báo và xử lý phụ (chẳng hạn như vỏ dưới, v.v.). Hữu ích cho tất cả các kịch bản khi chúng ta muốn khớp một phần của câu.

Nếu mẫu sau, "This is a sample sentence", được lập chỉ mục cho cả hai lĩnh vực chúng ta phải tìm kiếm chính xác các văn bản This is a sample sentence để có được một hit từ các lĩnh vực string, trong khi nó có thể đủ để tìm kiếm sample (hoặc thậm chí samples với stemmning kích hoạt) để nhận được một hit từ trường text.

+0

bạn cũng có thể nhận xét về kích thước chỉ mục, đọc chỉ mục, tạo chỉ mục không? – Rahul

+2

Bạn sẽ nhận được kích thước chỉ mục lớn hơn khi mã hóa, mức độ lớn tùy thuộc vào chuỗi xử lý của bạn. Việc tạo chỉ mục cũng sẽ chậm hơn một chút vì có nhiều công việc hơn. Chỉ số đọc/sáng tạo sẽ là một trong hai cách tuyệt vời, vì vậy đừng lo lắng về nó trừ khi tiếp cận hàng triệu tài liệu. –

+1

Tôi đang đọc qua hàng triệu tài liệu..về đó không phải là một vấn đề ... vì vậy tôi sẽ cho trường chuỗi vì nó có vẻ hiệu quả trong mọi trường hợp VÀ tôi không cần mã thông báo/tìm kiếm toàn văn bản – Rahul

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