博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(五) solr 索引数据导入:csv格式
阅读量:6948 次
发布时间:2019-06-27

本文共 1300 字,大约阅读时间需要 4 分钟。

有时候我们有一些通过SQL导出的csv格式的文件如果需要导入到slor,可以采用以下的方法

首先假定我们的schema.xml如下所示:

我们的csv(books.csv)文件的内容如下:

id;name;isbn;description;publish_date1;Solr cookbook;ABC123456;"Solr Cookbook";2011-062;Some book 1;JHDS871281;"Some book";2010-013;Some book 2;9182KSC98;"Another book";2010-02

为了能够将上面的csv数据正确的导入,我们需要对solrconfig.xml文件进行如下修改:

;
true
publish_date
"

说明:

startup="lazy":通过该参数告诉solr在第一次添加时才实例化这个更新处理程序

<str name="separator">;</str> : 通过该参数告诉solr 字段之间是通过“;”分隔

<str name="header">true</str>:通过该参数告诉solr在数据项之前含有头信息

<str name="skip">publish_date</str> :通过该参数告诉solr,publish_date 这列数据需要忽略掉

<str name="encapsulator">"</str>:通过该参数告诉solr数据项是通过双引号(")进行封装的

设置完毕,重启solr,并提交数据:

curl http://localhost:8983/solr/update/csv?commit=true --data-binary @books.csv -H 'Content-type:text/plain; charset=utf-8'

小提示:

封装好的数据项(此处为双引号),也可以进行拆分,如果过我们将name 字段设为多值,那么在requestHandler里面做一个小的调整,可以对如下文档进行处理:

id;name;isbn;description;publish_date1;"Solr cookbook;New solr cookbook";ABC123456;"Solr Cookbook";2011-06

在 requestHandler里再添加一项:<str name="split">true</str>

这样设置之后,solr里面会添加一条id为1,name 字段有 Solr cookbook、New solr cookbook 两个值

 

转载于:https://www.cnblogs.com/xiazh/archive/2012/10/29/2545080.html

你可能感兴趣的文章
mysql+redis
查看>>
[Android]Dagger2Metrics - 测量DI图表初始化的性能(翻译)
查看>>
sublime开启vim模式
查看>>
Rikka with Chess(规律)
查看>>
【设计模式】迭代器模式
查看>>
MATLAB中imshow()和image()
查看>>
Atitit.eclipse git使用
查看>>
JAVA逆向&反混淆-追查Burpsuite的破解原理(转)
查看>>
cocos2dx 3.1从零学习(一)——入门篇(一天学会打飞机)
查看>>
文档批量格式化之word技能
查看>>
C#~异步编程再续~await与async引起的w3wp.exe崩溃
查看>>
c3p0数据库连接池死锁问题
查看>>
SVN版本冲突解决
查看>>
java多线程知识点汇总(四)多线程知识点脉络图
查看>>
nginx的upstream目前支持5种方式的分配
查看>>
android图像处理(3) 底片效果
查看>>
stl 之set图解
查看>>
HDU 3569 Imaginary Date 简单期望
查看>>
怎么清除火狐浏览器的cookie?
查看>>
连麦介绍
查看>>