2011-11-03 48 views
0

在solr中,我同时搜索数据库,xml文件,pdf等,所以solr搜索响应对每个搜索结果记录(对于每个文档或数据库记录)都有不同的字段。Solr响应的公共解析器

在这里,我怎么能写常见的响应解析器解析不同领域(即我的PDF有不同的领域,数据库表有不同的领域)

+0

你用什么语言?你应该添加更多细节你想要的待办事项。例如。在RoR中我使用acts_as_solr,在那里我很容易将所有模型合并到一个索引中,并决定我想通过SOLR – YvesR

+0

上的多模型搜索获得什么。我正在使用java。在这里我索引PDF文件,数据库表等所有具有不同的字段,如具有名字,姓氏和具有内容字段的PDF文件的表。所以在我做了搜索后,我得到了XML格式的响应。在这里,如何编写通用分析器来解析独立于字段名称并向用户显示的响应。 – user1025397

回答

2

到这样做的常见方法是尝试有一个统一的数据模型。尝试首先识别您想要向用户展示的内容。因为如果你运行库的例子,你可能有领域,如:

  • ISBN(字符串,单一的价值,因为ID是唯一的)
  • 标题(文本字段)
  • 作者(多值文本字段)成本(Int,单值)

然后尝试映射所有数据源以填充这些字段。您可以将此数据模型映射到您的“连接器”(自定义代码提取数据)或您查看复制字段来执行此操作。见链接:

Solr copy fields

+0

哦,当然,Solr是建立了一个“稀疏”数据模型,所以每个数据源当然不必填充所有字段。 –