mongodb - NoSQL关键字在大表中搜索

标签 mongodb cassandra bigtable nosql

我很好奇 NoSQL 解决方案如何支持在分布在多个服务器上的非常大的表中进行关键字搜索?

我所说的关键字搜索是指像 Google 那样的数据库,拥有大量文档,并且能够非常快速地回答诸如找到“纽约的酒店”之类的问题。

我在 NoMysql 解决方案中看到支持 OR 操作的非常简单的解决方案(例如,查询:“A 或 B 或 C”)——只是使用另一个非常大的分布式表,该表将保存从任何单词到它所在的文档。在这种情况下,给定“A 或 B 或 C”,我们可以直接转到索引表中的“A”或“B”或“C”条目并收集所有文档 ID。然后,一旦我们有了 id 就可以自己获取文档。

但是如何设计一个支持高效 AND 操作的数据库(例如,如果我需要搜索“A and B and C”)?

最佳答案

我建议你看看elasticsearchsolr .

关于mongodb - NoSQL关键字在大表中搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9060680/

相关文章:

javascript - MongoDB 填充聚合管道分页中的缺失日期

c++ - 将 const char* 类型转换为 int 数组

java - 在 Cloud Bigtable SDK 中找不到类

database - BigTable 是面向对象的数据库吗?

hbase - 为什么说 HBase 行按字典顺序存储?

mongodb - 如何解决 MongoDB 错误 "SyntaxError: Unexpected token ILLEGAL"?

node.js - 通过 mongodb 和 mongoose 中的 id 删除对象

bash - 如何检查docker Cassandra实例是否准备好进行连接

hadoop - Giraph、Hadoop、Spark 和 Cassandra

cassandra - 如何在 Pig 中过滤 Cassandra TimeUUID/UUID