gpt4 book ai didi

database - 分面搜索 : ElasticSearch/Solr or a simple database query?

转载 作者:搜寻专家 更新时间:2023-10-30 21:52:26 25 4
gpt4 key购买 nike

请原谅这个 super 基本的问题,来自搜索新手。

我想实现一个使用分面搜索的网站。例如,这是一个有酒店数据库的网站,我想让用户搜索价格范围内的酒店,带游泳池,三星级或四星级。

很明显,我可以通过简单的数据库查询将结果返回给用户。

我应该使用 ElasticSearch 还是 Solr 来实现它而不是使用数据库查询?如果是,为什么?

最佳答案

是的,您应该使用 ES 或 Solr。原因:主要是性能和轻松更改(思考配置)“分面类型”的能力。

分面不是一件小事,虽然您可以使用 RDBMS 来完成,但要快速完成它需要认真思考。如果您可以使用 Solr/ES(+ Lucene)团队花费的大量时间来优化它,为什么还要自己动手呢?

至于我提到的“刻面类型”:

  1. 也许您想进行分层分面。选择价格类别 > 显示较小的价格类别。如何分桶:固定范围、均匀分布等。Solr/ES 从配置中提供这些选项。
  2. 或许您可以使用带有最小/最大 handle 的 slider 实现价格分面?滑动的时候是否显示酒店的nr(SOlr/ES中的histogram/facetstats)
  3. 虽然您已经对价格进行了分面,但也许您仍然想知道价格 slider 的最小值和最大值,就像您没有对价格进行过滤一样。如果您希望能够按比例绘制 slider handle ,则需要这样做。 (作为考虑从 Solr 切换到 ES 的一部分,请参阅我关于 SO 的问题:Elasticsearch: excluding filters while faceting possible? (like in Solr))
  4. 面对星星?如果用户选择那颗星(再次是直方图/统计信息),也许您想显示每个星面的最佳价格

说真的,甚至不要考虑使用 RDBMS 执行上述操作。你会发疯的。

希望对您有所帮助,是的,我熟悉该域 :)

其他问题,尽管问。

关于database - 分面搜索 : ElasticSearch/Solr or a simple database query?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11847890/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com