如何在SOLR中为无架构集合索引空字段



如何在SOLR中获取空字段索引?我正在使用solr 7.2.0

我正在使用无模式SOLR尝试将所有内容作为字符串进行索引,但对于具有空字段的文件,这些字段不会被索引。有办法让他们出现吗?

col1,col2,col3
a,,1
d,e,
g,h,3

例如列1显示为

{
"col1":"a",
"col3":"1",
}

我也在努力让col2出现。在我的solrconfig.xml中,我有这个

<dynamicField name="*" type="text_general" indexed="true" stored="true" required="true" default="" />

并且我已经从我的配置中删除了删除空白处理器的任何痕迹。我已多次通过集合重新加载和删除/重新创建。有解决方案吗?

CSV导入模块有自己的选项来保留空字段-f.<field name>.keepEmpty=true

如果不提供该选项,CSV处理程序将永远不会将空字段值提供给索引过程中的下一步。

f.col2.keepEmpty=True作为URL参数至少应该为您提供一个更好的起点。

也许可以像这样预处理csv文件:

s/,,/, ,/g

也就是说,在两个逗号之间添加一个空格(您必须特别处理不同的最后一个值,不过有一个regex(。

然后再试一次。现在solr正在读取不存在的值,使其成为一个有更多机会通过的空间,并且不会改变搜索结果(如果你没有一些疯狂的分析链(

最新更新