无法为CSV

时间:2018-05-25 13:03:01

标签: solr solr6

我正在使用SOLR 6.6.2并尝试使用车辆数据的CSV文件更新核心。

每列数据都包含各种数据类型,如整数,字符串,日期和小数值。

问题在于十进制值。我必须将它们更新为零小数位,否则我会收到以下错误:

  

PS C:\ solr-6.6.2 \ example \ exampledocs> java -Dtype = text / csv   -Dc =“vehicles”-jar post.jar vehicles.csv

     

使用内容类型text / csv ... POST文件vehicles.csv到[base]   SimplePostTool:警告:Solr返回错误#400(错误请求)   url:http://localhost:8983/solr/vehicles/update SimplePostTool:   警告:响应:   400124org.apache.solr.common.SolrExceptionjava.lang.NumberFormatExceptionERROR:[doc = d90354e7-3d73-4718-aeb5-80b0ce8fccf9]错误   添加字段'Price'='7950.01'msg =对于输入字符串:   “7950.01”400   SimplePostTool:警告:读取响应时出现IOException:   java.io.IOException:服务器返回HTTP响应代码:400为URL:   http://localhost:8983/solr/vehicles/update索引了1个文件。提交   Solr索引更改为http://localhost:8983/solr/vehicles/update ...   花费的时间:0:00:01.363> SimplePostTool版本5.0.0将文件发布到[base] url   http://localhost:8983/solr/vehicles/update

什么没有帮助的是我从使用SOLR版本4的SOLR复数视频中学习使用schema.xml来定义字段,但是看起来这在版本6中已被弃用,而且我在那里读到的应该是无需修改架构。

1 个答案:

答案 0 :(得分:0)

仍然存在架构 - 您应该明确地创建/编辑它以匹配您的值。

当您在无模式模式下运行时,会在遇到字段的第一个值时进行猜测。对于您的数据集,这种猜测似乎是错误的 - 即,由于某种原因,第一个值不被视为十进制数。您可以在管理界面中的架构浏览器下查看Solr猜测的列类型。

最佳解决方案是创建一个显式模式 - 这样您就可以确保您的列与特定类型匹配。

您可以修改架构directly in the Admin interfaceuse the Schema APImodify the schema.xml file as in previous versions