Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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
Search 狮身人面像搜索还是蜘蛛?选择哪一个?_Search_Full Text Search_Search Engine - Fatal编程技术网

Search 狮身人面像搜索还是蜘蛛?选择哪一个?

Search 狮身人面像搜索还是蜘蛛?选择哪一个?,search,full-text-search,search-engine,Search,Full Text Search,Search Engine,我们拥有SiteA和SiteB,它们共享同一个服务器和数据库,我们可以完全控制它们。 SiteC、siteD和siteE也是我们拥有的一些站点,但它们位于不同的web主机上 目标是为上述所有站点创建统一的搜索功能。也就是说,如果有人在SiteA中搜索某个术语,搜索结果将自动显示SiteB、SiteC、SiteD和SiteE的结果。搜索结果应显示在找到它们的网站下 所有这些网站的内容都存储在自己的数据库中 如果我使用SphinxSearch为上述站点编制索引,那么我会要求那些我们无法完全控制的站点

我们拥有SiteA和SiteB,它们共享同一个服务器和数据库,我们可以完全控制它们。 SiteC、siteD和siteE也是我们拥有的一些站点,但它们位于不同的web主机上

目标是为上述所有站点创建统一的搜索功能。也就是说,如果有人在SiteA中搜索某个术语,搜索结果将自动显示SiteB、SiteC、SiteD和SiteE的结果。搜索结果应显示在找到它们的网站下

所有这些网站的内容都存储在自己的数据库中

如果我使用SphinxSearch为上述站点编制索引,那么我会要求那些我们无法完全控制的站点设置一个web服务,在那里我可以下载一个数据库转储或csv文件进行索引

我不太确定狮身人面像将如何在这里发挥作用,所以需要你的意见

斯芬克斯还是蜘蛛


谢谢

如果你可以要求其他网站的所有者免费提供内容,那么就不需要蜘蛛。只需使用sphinxsearch对内容进行索引


如果你不能直接从他们那里获取内容,蜘蛛是你唯一的选择。这个问题没什么好考虑的。

如果你可以要求其他网站的所有者免费为你提供内容,那么就不需要蜘蛛。只需使用sphinxsearch对内容进行索引


如果你不能直接从他们那里获取内容,蜘蛛是你唯一的选择。这个问题不需要考虑。

Sphinx是一个全文搜索引擎解决方案,而spider则用于从internet获取内容。它们不是彼此的替代品。即使使用spider,也必须使用一些全文搜索引擎软件,例如sphinx或lucene/solr。 所以你必须先做出决定:我想用斯芬克斯来搜索吗?如果答案是肯定的,那么只剩下一件事:如何为搜索内容编制索引

sphinx支持使用数据库或XML作为数据源。作为数据源的数据库更受欢迎,因为以特定格式准备和更新XML文档非常繁琐(与维护数据库表相比)。所以我想最后你必须把所有的数据存储到数据库中。正如您所描述的,数据库中的所有数据都已准备就绪,但有些数据库超出了您的控制范围。对于您自己的数据库,没有问题。对于无法控制的数据库,我建议您使用分布式sphinx搜索:

其关键思想是对搜索到的数据进行横向分区(HP) 搜索节点,然后并行处理

分区是手动完成的。你应该

在上设置多个Sphinx程序实例(indexer和searchd) 不同的服务器

使实例索引(和搜索)数据的不同部分

在一些searchd上配置特殊的分布式索引 实例

并查询此索引

此索引仅包含对其他本地和远程索引的引用 -所以它不能直接重新编制索引,而应该重新编制它引用的索引的索引


Sphinx是一个全文搜索引擎解决方案,而spider则用于从internet获取内容。它们不是彼此的替代品。即使使用spider,也必须使用一些全文搜索引擎软件,例如sphinx或lucene/solr。 所以你必须先做出决定:我想用斯芬克斯来搜索吗?如果答案是肯定的,那么只剩下一件事:如何为搜索内容编制索引

sphinx支持使用数据库或XML作为数据源。作为数据源的数据库更受欢迎,因为以特定格式准备和更新XML文档非常繁琐(与维护数据库表相比)。所以我想最后你必须把所有的数据存储到数据库中。正如您所描述的,数据库中的所有数据都已准备就绪,但有些数据库超出了您的控制范围。对于您自己的数据库,没有问题。对于无法控制的数据库,我建议您使用分布式sphinx搜索:

其关键思想是对搜索到的数据进行横向分区(HP) 搜索节点,然后并行处理

分区是手动完成的。你应该

在上设置多个Sphinx程序实例(indexer和searchd) 不同的服务器

使实例索引(和搜索)数据的不同部分

在一些searchd上配置特殊的分布式索引 实例

并查询此索引

此索引仅包含对其他本地和远程索引的引用 -所以它不能直接重新编制索引,而应该重新编制它引用的索引的索引


这两种工具相互之间有什么好处?这两种工具相互之间有什么好处??