alf*_*onx 4 full-text-search feature-comparison postgresql-9.1
我正在创建一个 Web 应用程序来检索一个大(4m 行)表的子集。400 万行每年仅更改一次。该表有 200 多列布尔型和数字型。它没有文本列。
用户将查询此表的子集以供下载。
我对PostgreSQL 9.1数据库比较熟悉,我的计划是:
现在..我在这里阅读: https : //stackoverflow.com/questions/10053050/why-is-solr-so-much-faster-than-postgres:
我最近从 Postgres 切换到 Solr,发现查询速度提高了约 50 倍。我们运行的查询涉及多个范围,我们的数据是车辆列表。例如:“查找所有里程 < 50,000, $5,000 < price < $10,000, make=Mazda...”
所以现在我想知道:即使不涉及全文搜索,Solr、Lucene、ElasticSearch、Amazon Cloud Search 搜索是否会比 PostgreSQL 更快?
即使不涉及全文搜索,Solr/Lucene 搜索是否会比 PostgreSQL 更快?
是的。根据您引用的示例,对于某些用例,它可能比关系数据库快许多倍。真的不奇怪。
Solr
是一个搜索引擎。PostgreSQL
是一个关系数据库引擎。
Solr
是从头开始构建的,只为做好一件事,即搜索。它不能完成事务数据库系统的工作。Solr
不能保证 ACID 合规性,它不能有效地管理并发,它不是 OLTP 工作负载的可行候选者。
PostgreSQL
从头开始构建以做好一件事,即事务处理。它还可以合理地提供搜索类型的功能,但这不是它的主要作用。它确实保证了 ACID 合规性,它管理并发性,它不是一个搜索引擎。
400 万行每年仅更改一次。
在这种情况下,您可能不需要关系数据库引擎的关键功能。
你需要一个搜索引擎。可能是Solr、Lucene、ElasticSearch、Amazon Cloud Search或其他几十个搜索平台之一,但首先,它将是一个搜索平台,而不是关系数据库。