Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.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
Solr单索引与Solr多核_Solr_Lucene_Solrnet_Solr4_Solrcloud - Fatal编程技术网

Solr单索引与Solr多核

Solr单索引与Solr多核,solr,lucene,solrnet,solr4,solrcloud,Solr,Lucene,Solrnet,Solr4,Solrcloud,我需要一些帮助来决定在一个Solr实例中创建一个索引,还是在一个Solr实例中创建多个核心,每个核心服务一个索引。 我的理解是,solr中的单个索引通常用于索引一种类型的文档。当您有不同的文档类型时,最佳做法是什么?例如,如果要索引发票交易的详细信息,可以创建一个模式,其中包含发票交易文档的字段,如下所示: 发票日期 决斗日期 发票摘要 比林触点 发票行项目 注释 假设您还想为产品的详细信息编制索引,您是否会创建一个新的文档类型,并使用如下模式: 产品代码 产品描述 销售价格 买价 现有

我需要一些帮助来决定在一个Solr实例中创建一个索引,还是在一个Solr实例中创建多个核心,每个核心服务一个索引。 我的理解是,solr中的单个索引通常用于索引一种类型的文档。当您有不同的文档类型时,最佳做法是什么?例如,如果要索引发票交易的详细信息,可以创建一个模式,其中包含发票交易文档的字段,如下所示:

  • 发票日期
  • 决斗日期
  • 发票摘要
  • 比林触点
  • 发票行项目
  • 注释
假设您还想为产品的详细信息编制索引,您是否会创建一个新的文档类型,并使用如下模式:

  • 产品代码
  • 产品描述
  • 销售价格
  • 买价
  • 现有
  • 平均成本
  • 注释
并在Solr中创建一个新的核心来索引产品文档?或者您会将事务和产品合并到一个模式中,如下所示:

  • 发票日期
  • 决斗日期
  • 发票摘要
  • 比林触点
  • 发票行项目
  • 产品代码
  • 产品描述
  • 销售价格
  • 买价
  • 现有
  • 平均成本
  • 注释
是否只有一个核心对上述内容进行索引,而不是有一个“发票”核心和一个“产品”核心对两个不同的文档进行索引

我想,当字段相似时,使用中建议的单一平面索引是有意义的,但是在上面的示例中,数据之间甚至没有远程关联,因为它们是独立的实体。我见过这样的例子,人们建议添加一个额外的字段来区分不同的实体,比如表名字段或类似的字段,并根据表名字段过滤查询,我想这是可行的。我不确定当您有如下用例时,它的可伸缩性有多大

“在发票中搜索关键字‘John’,要搜索的字段是‘billingContact’、‘invoiceSummary’、‘notes’。在查询时增加‘billingContact’字段。在产品中搜索‘John’,要搜索的字段是‘productDescription’、‘supplier’、‘notes’。在查询时增加‘supplier’。只返回100张发票和100件产品。”

我正在处理的应用程序需要从单个表单中搜索发票和产品。应用程序中没有搜索不同内容的不同部分

我关心的是把所有的东西都放在一个索引中

1) 大索引大小,例如:5000万张发票+5000万个产品在单个索引中

2) 重新索引该大小的索引

3) 索引调整:调整/调整每个单独的索引以服务于特定的预期搜索结果,而不是在单个索引中尝试这样做,不是更容易吗

4) 我们决定在将来也索引账单联系人的详细信息。这将添加更多要索引的字段,并有助于解决我在第1)点和第2)点中的问题

仅退回100张发票和100件产品

在查询时增加“billingContact”字段 在查询时增加“供应商”

这表明,即使搜索相同的术语,也可以将它们作为单独的概念进行搜索


基于这一点以及缺少公共字段,我建议从单独的集合开始。

详细信息良好,问题陈述清晰、表达良好。