我使用solr
进行数据索引以存储某些字段。我使用字段<field name="Content" type="string" indexed="true" stored="true" multiValued="true"/>
,数据采用base64编码格式。
对于字段内容,我想使用纯文本关键字搜索该数据。通过解码base64,我可以在内容中找到该关键字。 (如弹性搜索附件字段类型,我们必须传递base64编码数据,我们可以搜索该数据)
我在solr浏览器上使用查询但无法找到结果:
http://localhost:8983/solr/collection/select?q=Content%3A*English*&wt=json&indent=true
答案 0 :(得分:0)
Solr不知道您的内容是base64。此外, type = string 未被标记化。
所以,你需要做一些预处理。可能是某个地方的自定义元素。如果你只是想搜索该字段,你可能不需要存储它(只是索引),并且可以有一个自定义的UpdateRequestProcessor进行base64解码。
如果要实际存储字段,则需要将处理作为索引管道的第一步。因此,在进行标记化之前,您需要一个自定义的CharacterFilter。
不幸的是,目前基础发行版中都没有任何组件。您必须使用Java编写代码,或者 - 如果您使用的是UpdateRequestProcessor - in Javascript。