Cassandra full text search like

江枫思渺然 提交于 2019-12-21 04:26:11

问题


Let's say I have a column family named Questions like below: Questions = {
Who are you: { username: "user1" }, What is the answer: { username: "user1" }... }

How do I search for all the questions that contain certain words? Get all questions that contain 'what' word. How do I do it using python or at least Java?


回答1:


Solandra (https://github.com/tjake/Solandra) is the new name for Lucandra.

Solandra is a combination of Cassandra and Solr (which is based on the Lucene full-text search engine).

Cassandra alone doesn't tackle text-search, although you could implement some basic text indexing by creating secondary index column families (Google: cassandra secondary index).




回答2:


I'm new to Cassandra, but querying in it is relatively limited, compared to, for instance, a relational database. (This is by design.) I'm pretty sure there's no support for full text search at this time (this may not even be on the roadmap).

You might be best to go with Lucene or something comparable to index the text of the questions, either within the Cassandra datastore or in a separate datastore.

  • http://lucene.apache.org/java/docs/index.html

There appears to be at least one project that is attempting to integrate Lucene with Cassandra, and there may be others:

  • http://github.com/tjake/Lucandra

Another way to go in your case might be to break up the questions into words and maintain your own index of words to questions; your mileage may vary here, and something like Lucene will no doubt give you greater flexibility in querying.




回答3:


Sounds like you could add "DSE Search", from the folks that support Cassandra, and you would have what you need. Lucene/Solr like capabilities but all the data stored in Cassandra.

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

You have a good solution given by the last gent but this solution may serve your purpose better from a usability point of view.

Disclaimer: I work for a NoSQL vendor but not on Cassandra.



来源:https://stackoverflow.com/questions/3153364/cassandra-full-text-search-like

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!