Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.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
Php 如何在Solr中通过DataImportHandler处理多个MySQL表?_Php_Mysql_Solr_Lucene - Fatal编程技术网

Php 如何在Solr中通过DataImportHandler处理多个MySQL表?

Php 如何在Solr中通过DataImportHandler处理多个MySQL表?,php,mysql,solr,lucene,Php,Mysql,Solr,Lucene,我在MySQL中有33个表。搜索中将使用大约20个表。如何处理和搜索所有这些表?我已经通过导入1个表并清楚地搜索来实现这一点 但是现在我想在所有表中搜索 我是否为不同的表创建所有新核心??或者我应该在导入数据时使用连接查询??请给我更好的建议。这取决于您的要求。这两种方法都可以通过为单个表创建核心或将两个表(考虑相互关联的3-4个表)连接在一起并将数据索引到核心中来实现 我建议选择后者,这样可以减少搜索时间。您可以使用DIH(数据导入处理程序),其中可以为(获取要搜索的选定搜索字段)编写联接查询

我在MySQL中有33个表。搜索中将使用大约20个表。如何处理和搜索所有这些表?我已经通过导入1个表并清楚地搜索来实现这一点

但是现在我想在所有表中搜索


我是否为不同的表创建所有新核心??或者我应该在导入数据时使用连接查询??请给我更好的建议。

这取决于您的要求。这两种方法都可以通过为单个表创建核心或将两个表(考虑相互关联的3-4个表)连接在一起并将数据索引到核心中来实现

我建议选择后者,这样可以减少搜索时间。您可以使用DIH(数据导入处理程序),其中可以为(获取要搜索的选定搜索字段)编写联接查询 有关系的两个表。当你有一个特定区域的搜索,你可以在特定的核心搜索

正如我在申请表中所说,两个主要领域是文档、活动

我有两个不同的核心文件和活动

我已经为文档核心中与文档相关的数据编制了索引。当有来自文档区域的搜索请求时,将对特定核心(即文档)执行搜索

活动也是如此

多核让您可以拥有一个单独的Solr实例,该实例具有单独的配置和索引,并为不同的应用程序提供自己的配置和模式,但仍然可以方便地进行统一管理。单个索引仍然是相当独立的,但是您可以将它们作为单个应用程序进行管理,通过旋转新的SolrCore动态创建新索引,甚至在不重新启动Servlet容器的情况下让一个SolrCore替换另一个SolrCore

有关更多详细信息: