Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 返回统计信息而不是点击的关键字搜索引擎_Sql_Database_Search_Indexing_Lucene - Fatal编程技术网

Sql 返回统计信息而不是点击的关键字搜索引擎

Sql 返回统计信息而不是点击的关键字搜索引擎,sql,database,search,indexing,lucene,Sql,Database,Search,Indexing,Lucene,关于StackOverflow的第一篇文章,但我一直认为这个网站是分享知识的好来源,我很高兴看到这个问题带来了什么 由于我觉得我现在已经达到了SQL索引、统计数据和全文搜索的极限,我目前正在寻找一个能够为我们提供所需功能的搜索库。我并不反对自己写(如果我能得到老板的批准,我会把它开源),但我更喜欢找到一些已经存在的开源软件,纳奇 我们追求的是一个搜索引擎,它可以提供用户搜索特定关键字时匹配结果的统计信息。比如说,我们在讨论一个网上商店的产品数据库。我们需要能够返回与给定关键字集相匹配的产品数量的

关于StackOverflow的第一篇文章,但我一直认为这个网站是分享知识的好来源,我很高兴看到这个问题带来了什么

由于我觉得我现在已经达到了SQL索引、统计数据和全文搜索的极限,我目前正在寻找一个能够为我们提供所需功能的搜索库。我并不反对自己写(如果我能得到老板的批准,我会把它开源),但我更喜欢找到一些已经存在的开源软件,纳奇

我们追求的是一个搜索引擎,它可以提供用户搜索特定关键字时匹配结果的统计信息。比如说,我们在讨论一个网上商店的产品数据库。我们需要能够返回与给定关键字集相匹配的产品数量的统计信息(并且能够根据价格、类别等筛选此结果集),以及库存产品的总数(假设存储在product表的字段中)。我找到的所有搜索引擎都返回前n个结果,如果您想要统计结果集的大小,则需要枚举整个结果集。即使您没有这样做,您仍然需要这样做来检索库存产品的总数

是否有任何人知道能够实现此功能?正如我所说,我很高兴自己动手,或者自己动手构建,或者修改Lucene之类的功能,但是我在Google上找不到任何合适的东西


提前谢谢各位

这里需要记住的是,“枚举所有结果”可能意味着非常不同的事情-
select count(*)
与执行实际获取每个对象所需的所有连接等非常不同。在Lucene和关系数据库中都是如此。所以我不会担心文件上说“我们列举所有结果”这一事实

根据我的经验,Solr的标准方面可以满足99%的人的需求。如果你在那1%(即,你有一个巨大的数据库),那么我可以建议一些猜测结果的方法,这可能会更快。但Solr可能会为你工作

我觉得我现在已经达到了使用SQL索引所能做的极限


你确定吗?我这样问是因为如果您使用的是MySQL,您可能需要了解PostgreSQL的功能。尤其是当您将它与和模块以及非常体面的功能结合在一起时,它允许您从高度复杂的查询中提取合理的行估计值。

您可以看看,这是一个基于Lucene的分面搜索引擎。Solr除了做全文搜索外,还会为您计算许多不同的事情。它擅长处理结构化数据和全文数据的组合。

+1 for Solr-Solr内置了方面,与您要查找的统计数据类似。设置、导入SQL数据库并查看其是否适合您的需要也相对容易。试试看,这看起来正是我需要的——我显然没有给Solr足够的信任——我会给予更多的关注。谢谢我只是想在这个线程中发布一个更新,因为我现在已经原型化了一个Solr实现,它为我们提供了巨大的(老实说,巨大的)性能改进。这是一个极好的建议。作为参考,我使用了Solr的统计功能来提供我需要的功能,并且能够与我现在使用SolrNet运行的Solr服务器进行对话。@Mike,很高兴听到这个消息!很高兴这是一个有用的建议我注意到你是第一个提到Solr刻面的人,所以即使Yuval F的解释更全面,我还是要把它作为答案。非常感谢你的帮助。