solr CSV更新映射参数

时间:2013-01-28 07:13:36

标签: solr

感谢之前的回复。我有以下文件。我正在使用/ update / csv处理程序将其索引到solr!我的问题是,我必须先转换此文件,然后才能将第一个字段作为日期索引到所需格式...或者我可以使用map参数来实现相同的目标。

    2011-12-16 21:16:36,510 Total: 2139 Free: 1569
    2011-12-16 21:17:07,593 Total: 2139 Free: 1572
    2011-12-16 21:17:38,819 Total: 2139 Free: 1572
    2011-12-16 21:18:09,789 Total: 2138 Free: 1567
    2011-12-16 21:18:40,667 Total: 2139 Free: 1580

我尝试使用map参数..

字段名= logged_dt,val_s

f.logged_dt.map = * *:* T * Z

基本上我希望每一行都转换为这个

    2011-12-16T21:16:36Z,510 Total: 2139 Free: 1569

所以它符合指定的日期格式..!我错过了什么吗?我可以使用map参数来执行此操作,还是需要转换输入文件?

1 个答案:

答案 0 :(得分:0)

所有更新处理程序都非常严格,格式和日期通常受到的影响最大。

因此,您不能直接在CSV中执行此操作。 地图不支持正则表达式 - 只是直接值。

但是,您可以使用Update Request Processor,可以使用 solrconfig.xml 中的update.chain参数将其添加到任何请求处理器。最好的办法是使用RegexReplaceProcessorFactory(需要Solr 4)。它需要standard Java regular expressions包括组替换。