2010-06-30 37 views
6

Hãy nói rằng tôi có một câu hỏi cột gia đình được đặt tên như dưới đây: Câu hỏi = {
bạn là ai: { username: { username:: "user1" }, câu trả lời là gì? " user1 " } ... }Cassandra tìm kiếm đầy đủ văn bản như

Làm cách nào để tìm kiếm tất cả câu hỏi có chứa các từ nhất định? Nhận tất cả các câu hỏi có chứa từ 'what'. Làm cách nào để thực hiện điều đó bằng python hoặc ít nhất là Java?

Trả lời

3

Tôi mới dùng Cassandra, nhưng truy vấn trong đó là tương đối hạn chế, so với, ví dụ, một cơ sở dữ liệu quan hệ. (Đây là do thiết kế.) Tôi khá chắc chắn không có hỗ trợ cho tìm kiếm toàn văn tại thời điểm này (điều này có thể thậm chí không được trên lộ trình).

Bạn có thể là tốt nhất để đi với Lucene hoặc một cái gì đó có thể so sánh để lập chỉ mục văn bản của các câu hỏi, hoặc trong kho dữ liệu Cassandra hoặc trong một kho dữ liệu riêng biệt.

Có vẻ như ít nhất một dự án mà đang nỗ lực để tích hợp Lucene với Cassandra, và có thể có những người khác:

Một cách để đi trong trường hợp của bạn có thể là chia nhỏ các câu hỏi thành các từ và duy trì chỉ mục của riêng bạn các từ cho câu hỏi; mileage của bạn có thể thay đổi ở đây, và một cái gì đó như Lucene sẽ không có nghi ngờ cung cấp cho bạn sự linh hoạt lớn hơn trong truy vấn.

4

Solandra (https://github.com/tjake/Solandra) là tên mới cho Lucandra.

Solandra là sự kết hợp giữa Cassandra và Solr (dựa trên công cụ tìm kiếm toàn văn Lucene).

Chỉ riêng Cassandra không xử lý tìm kiếm văn bản, mặc dù bạn có thể thực hiện một số chỉ mục văn bản cơ bản bằng cách tạo các nhóm chỉ mục phụ thứ cấp (Google: cassandra secondary index).

2

Có vẻ như bạn có thể thêm "DSE Search", từ những người hỗ trợ Cassandra, và bạn sẽ có những gì bạn cần. Lucene/Solr giống như khả năng nhưng tất cả dữ liệu được lưu trữ trong Cassandra.

http://www.datastax.com/dev/blog/cassandra-with-solr-integration-details

Bạn có một giải pháp tốt cho bởi gent cuối cùng nhưng giải pháp này có thể phục vụ mục đích của bạn tốt hơn từ một điểm khả năng sử dụng xem.

Tuyên bố từ chối trách nhiệm: Tôi làm việc cho nhà cung cấp NoSQL nhưng không hoạt động trên Cassandra.

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