为什么我们使用像 solr、elastic search 或任何其他搜索引擎这样的搜索引擎,而不是我们有像 ransack 这样的活动记录宝石

why we use search engine like solr,elastic search or any other search engine instead we have active record gems like ransack

为什么我们使用像 solr,elastic search 这样的搜索引擎或任何其他搜索引擎,而不是我们有 active record 个像 ransack,meta_search 等的 gem

我是搜索引擎选择新手。

我知道索引行为和其他可用于搜索引擎的行为。但想知道性能明智或大数据明智的搜索引擎有什么帮助。

我正在创建一个购物网站,我很困惑我应该怎么做?

任何帮助对我来说都是非凡的

你不能轻易比较这些东西。 Ransack 是 "just" 一个 gem,它为您处理数据库中的全文搜索。它为每个搜索请求创建一个 SQL 查询。如果应用程序规模很大,这可能会降低应用程序的速度,因为应用程序还必须执行其他操作。

Elasticsearch 是一个用Java 编写的搜索服务器。除了搜索内部数据库外,它什么也不做。它针对它进行了优化。当然它也有先进的算法,给你带来google-感觉就像Did you mean ...等等。

有关详细信息,请查看 Elastic 的 10 minute walk through

如果它只是一个购物网站并且预计不会达到 Amazon 的规模,我建议您暂时使用 Ransack。以后还可以改。