假设我有一个名为 Questions 的列族,如下所示: Questions = {
Who are you: { username: "user1" }, What is answer: { username: "user1" }... }
如何搜索包含特定单词的所有问题?获取所有包含“什么”词的问题。我如何使用 python 或至少使用 Java 来做到这一点?
假设我有一个名为 Questions 的列族,如下所示: Questions = {
Who are you: { username: "user1" }, What is answer: { username: "user1" }... }
如何搜索包含特定单词的所有问题?获取所有包含“什么”词的问题。我如何使用 python 或至少使用 Java 来做到这一点?
Solandra ( https://github.com/tjake/Solandra ) 是 Lucandra 的新名称。
Solandra 是 Cassandra 和 Solr(基于 Lucene 全文搜索引擎)的组合。
Cassandra 本身并不处理文本搜索,尽管您可以通过创建二级索引列族(谷歌:cassandra 二级索引)来实现一些基本的文本索引。
我是 Cassandra 的新手,但与例如关系数据库相比,在其中进行查询相对有限。(这是设计使然。)我很确定目前不支持全文搜索(这甚至可能不在路线图上)。
您可能最好使用 Lucene 或类似的东西来索引问题的文本,无论是在 Cassandra 数据存储中还是在单独的数据存储中。
似乎至少有一个项目正在尝试将 Lucene 与 Cassandra 集成,并且可能还有其他项目:
在您的情况下,另一种方法可能是将问题分解为单词并维护您自己的问题单词索引;你的里程在这里可能会有所不同,像 Lucene 这样的东西无疑会给你更大的查询灵活性。
听起来你可以从支持 Cassandra 的人那里添加“DSE 搜索”,你就会得到你需要的东西。类似 Lucene/Solr 的功能,但所有数据都存储在 Cassandra 中。
http://www.datastax.com/dev/blog/cassandra-with-solr-integration-details
您有一个由最后一位绅士给出的很好的解决方案,但从可用性的角度来看,这个解决方案可能更好地满足您的目的。
免责声明:我为 NoSQL 供应商工作,但不在 Cassandra 上。