2015-10-14 101 views
1

我能够使用Solr为文档建立索引(Word,PDF)。是否有可能获得原始文件?我假设没有,因为Solr仅存储索引 - 但是如果我错了,你能纠正我吗?如何从Solr下载索引文件?

如果否 - 通常解决的方法(我的意思是检索原始文档?)将它们存储在单独的存储中?

回答

1

@Alec 你的理解是正确的。 您无法取回原始文件。因此,您可以选择单独存储原始文档,在主数据存储区中生成唯一ID,并将该唯一ID链接到文档的SOLR导出,以便将搜索结果链接回去。实际上,SOLR是为搜索速度而设计的,并不像RDBMS那样友好。 因此,在我的项目中,我使用这种策略来维护替代数据存储库,作为所有应用程序数据(不仅仅是文档)的权威来源。

为了说明文件处理的内幕,我建议你看看Solr Wiki https://wiki.apache.org/solr/ExtractingRequestHandler的例子。

更多更高版本的记录在这里 https://cwiki.apache.org/confluence/display/solr/Uploading+Data+with+Solr+Cell+using+Apache+Tika

文档说Solr的ExtractingRequestHandler使用提卡允许用户二进制文件上传到Solr并有Solr的从中提取文本,然后建立索引。

这意味着只有提取的文本实际上存储在SOLR中。原始的二进制内容对于搜索/索引目的来说并不真正用于SOLR(并且可能被丢弃,尽管我没有找到确切的文本表明它们丢弃了由此提取的文档的原始二进制内容)。