solr update接口常用方法
2014-01-03 15:01
381 查看
solr索引数据更新接口:http://localhost:8080/solr/update
有以下一些操作可以通过update接口完成,只能使用post的形式提交数据。
1、添加索引
确保field已全部在schemal.xml 中定义,日期格式要求的比较奇葩,但必须符合他的格式。此处adaptor,director在schemal.xml中设置了多值属性(multiValued=true)可以看出此处对应的添加xml格式。
2、删除索引
删除单挑索引时,必须指定主键值,主键也就是你再schemal.xml中<uniqueKey>clipId</uniqueKey>节点定义的。
当然也可以批量删除索引,只要在<query>节点中定义好查询语句,solr将删除所查询到的所有索引。提交如下数据将清空索引。
提交如下数据,将删除所有otherName包含“谢娜”的索引
3、更新索引
当用户添加索引后,索引库是不会马上更新的(除非已设置自动更新),那么要让他立即生效的话,提交如下数据即可。
4、重建索引
当索引库经过多次删除、插入等操作时,索引库将产生很多碎片数据,重建索引将提高索引效率,提交如下数据即可。
建议在应用负荷量较小的时间段进行,如凌晨时段。
有以下一些操作可以通过update接口完成,只能使用post的形式提交数据。
1、添加索引
确保field已全部在schemal.xml 中定义,日期格式要求的比较奇葩,但必须符合他的格式。此处adaptor,director在schemal.xml中设置了多值属性(multiValued=true)可以看出此处对应的添加xml格式。
<?xml version="1.0" encoding="utf-8"?> <add> <doc> <field name="clipId">6206</field> <field name="clipName">谢娜和彭宇上演现场版野蛮女友</field> <field name="eName"/> <field name="otherName">谢娜和彭宇上演现场版野蛮女友</field> <field name="story">谢娜和彭宇上演现场版野蛮女友。</field> <field name="scenarist"/> <field name="adaptor">谢娜</field> <field name="adaptor">彭宇</field> <field name="director">马可</field> <field name="director">彭宇</field> <field name="director">李好</field> <field name="director">李响</field> <field name="kind"/> <field name="area"/> <field name="clicks">3334</field> <field name="releaseDate">2009-08-10T00:00:00Z</field> </doc> </add>
2、删除索引
删除单挑索引时,必须指定主键值,主键也就是你再schemal.xml中<uniqueKey>clipId</uniqueKey>节点定义的。
<?xml version="1.0" encoding="utf-8"?> <delete> <id>unikey</id> </delete>
当然也可以批量删除索引,只要在<query>节点中定义好查询语句,solr将删除所查询到的所有索引。提交如下数据将清空索引。
<?xml version="1.0" encoding="utf-8"?> <delete> <query>*:*</query> </delete>
提交如下数据,将删除所有otherName包含“谢娜”的索引
<?xml version="1.0" encoding="utf-8"?> <delete> <query>otherName:谢娜</query> </delete>
3、更新索引
当用户添加索引后,索引库是不会马上更新的(除非已设置自动更新),那么要让他立即生效的话,提交如下数据即可。
<commit/>
4、重建索引
当索引库经过多次删除、插入等操作时,索引库将产生很多碎片数据,重建索引将提高索引效率,提交如下数据即可。
建议在应用负荷量较小的时间段进行,如凌晨时段。
<optimize/>
相关文章推荐
- SERVLET类常用接口及方法
- Hibernate的Session接口中delete/update方法2个参数(entityName)的深入解析
- PreoareStatement接口的常用方法
- 常用公共服务接口(2)百度分享的安装配置方法
- python+selenium初级(3)—WebElement接口常用方法
- phpcms常用接口调用方法
- 学习.NET (8) 实现派生类中Deep Copy的几种常用方法(通过ICloneable接口)
- Hibernate常用方法之update
- 【hibernate框架】核心开发接口-saveOrUpdate方法与delete方法
- 90个PHP常用接口数据过滤的方法
- SERVLET类常用接口及方法
- 9.2-全栈Java笔记:List接口的特点和常用方法
- Java学习之容器上(Collection接口常用方法,Iterator接口,使用foreach循环遍历Collection集合元素,Set集合通用知识(Hashset类,hashcode()与Lin
- Hibernate的Session接口中save/delete/update方法2个参数(entityName)的深入解析
- 29个android开发常用的类、方法及接口
- JavaWeb开发之HttpServletResponse接口和常用方法 (跟着龙哥学JavaWeb)
- 不二法门---Solr常用调优方法
- 工作流JBPM常用方法与接口
- javaoop集合框架——List接口的常用方法
- java中集合类中Collection接口中的List接口的常用方法熟悉