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_Solr4 - Fatal编程技术网

带关联文件的SOLR搜索结果

带关联文件的SOLR搜索结果,solr,solr4,Solr,Solr4,我正在使用solr search(solr 4.X),一切正常,我得到了一个要求,即我需要显示相关文件以及搜索结果 我得到的是搜索结果,但不是文件。如何获取,至少我希望搜索结果中包含文件名 谢谢你的帮助。请帮助我,Solr是一个通用的企业搜索服务器。它不知道有关文件的任何信息,也不知道索引数据来自何处。你必须自己做这件事 模式(Schema.xml)定义了哪些字段被索引。在设计模式时,必须决定存储什么以及以什么方式存储 如果要恢复文件名,必须手动将其添加到索引中,首先在模式中提供一个字段,然后在

我正在使用solr search(solr 4.X),一切正常,我得到了一个要求,即我需要显示相关文件以及搜索结果

我得到的是搜索结果,但不是文件。如何获取,至少我希望搜索结果中包含文件名


谢谢你的帮助。请帮助我,Solr是一个通用的企业搜索服务器。它不知道有关文件的任何信息,也不知道索引数据来自何处。你必须自己做这件事

模式(Schema.xml)定义了哪些字段被索引。在设计模式时,必须决定存储什么以及以什么方式存储

如果要恢复文件名,必须手动将其添加到索引中,首先在模式中提供一个字段,然后在每次向索引中添加内容时填充该字段

你可能不想标记你的文件名,除非你也想搜索它。如果您的文件名包含完整路径,则可以认为它是唯一的,您也可以将其用作id

如果您通过xml添加它,您只需要在文档列表中添加一个新字段,例如

  <doc>
      ...
      <field name="filename">/some/path/basename.extension</field>
      ...
  </doc>

...
/some/path/basename.extension
...
如果您使用的是solrj,它将如下所示:

    HttpSolrServer server = new HttpSolrServer(host);
    SolrInputDocument doc = new SolrInputDocument();
    doc.addField("filename", document.getFilename());
    Collection<SolrInputDocument> docs = new ArrayList<SolrInputDocument>();
    docs.add(doc);
    server.add(docs);
HttpSolrServer服务器=新的HttpSolrServer(主机);
SolrInputDocument doc=新的SolrInputDocument();
doc.addField(“filename”,document.getFilename());
收款单据=新建ArrayList();
docs.add(doc);
添加(文档);

请向我们展示您的模式,并告诉我们有关如何索引和查询文件的更多信息。否则很难帮助你。谢谢你的回复!该模式正是示例模式。我使用post.jar为文件编制索引。我通过solrj客户端查询solr。我得到了我想要的结果,但是我想要关联的文件以及结果。我正在搜索名为“solr”的关键字,结果是所有字段,而不是文件名。我希望文件名为solr.xml或其他任何形式。请帮帮我。Thaknsi如果您没有为文件名编制索引,则此信息不可用,您无法将其取回。如果您需要结果集中的文件名,您需要索引并存储它。谢谢。Ic,例如,如果我正在为pdf文件编制索引,如何将文件名添加为索引的一部分?对于xml文件,是的,我将添加文件名作为我的内容的一部分。请你给我推荐一下。post.jar仅用于示例。您需要使用自己的程序生成xml文件,或者使用SolrPhish之类的库,非常感谢您的回复,我知道了。还有一件事,我理解xml文件的情况。同样的事情,我怎样才能实现pdf文件?你需要从pdf中提取你正在寻找的数据,并将其发送到solr(以字符串的形式)。阿帕奇·蒂卡负责提取。还有一些DataImportHandler可以处理pdf文件,但有限制。明白了。非常感谢你的帮助。