我正在使用 Solr 制作可搜索的图书目录。我编写了一个查询,它使用 DataImportHandler 获取我感兴趣的所有信息。每本书可能有多种格式,每种格式都有自己的 ISBN、格式名称和价格,以逗号分隔的值表示,如下所示:
| id | title | isbns | prices | formats |
|-------------------------------------------------------------|
| 1 | A Book | isbn1,isbn2 | price1,price2 | fmt1,fmt2 |
| 2 | Another | anisbn | aprice | aformat |
... ... ...
我目前正在使用 RegexTransformer 和 splitBy,以便我可以为分面制作 isbns、价格和格式多值字段。但是,理想情况下,我希望能够单独提取值并将它们存储在索引的另一个字段中。换句话说,对于示例中 ID 为 1 的书,我想将以下字段存储为字符串:
字段 1:“fmt1 (isbn1): price1”
字段 2:“fmt2 (isbn2): price2”
Solr 可以做这种事情吗?我总是可以提取字段并在应用程序端处理它们,但由于这个 Solr 索引将有多个客户端执行查询,我宁愿在构建索引时存储额外的值。