Uploading Data with Index Handlers
索引处理器就是Request Handlers,用于添加,更新,删除索引中的文档.另外,使用Tika抽取富文档数据,使用Data Import Handler抽取结构化数据.solr自然也就支持 XML, CSV 和 JSON格式的结构化文档.
配置并使用request handlers的推荐的方式就是使用基于names的path,在request url中映射path--但是如果request Dispatcher配置合适之后,request handlers也可以指定qt(query type)参数.
The Combined UpdateRequestHandler
联合的UpdateRequesthandler.
在solr4以后,有一个统一的update request handler的方式支持XML,CVS,JSON和javabin更新请求,授权使用ContentStreamLoader,基于ContentSream的Content-Type.
UpdateRequestHandler配置
默认的配置文件有更新请求处理器(update request handler)默认的配置
<requestHandler name="/update" class="solr.UpdateRequestHandler" />
XML Formatted Index Updates
使用 Content-type: application/xml Content-type:text/xml格式可以发送xml格式消息.
添加文档
update handler识别xml结构的数据的方式是很直接的:
- <add>元素引入一个或者多个文档添加到索引中
- <doc>元素引入组成一个文档的字段
- <field>元素代表了一个字段的内容
例子:
<add> <doc> <field name="authors">Patrick Eagar</field> <field name="subject">Sports</field> <field name="dd">796.35</field> <field name="numpages">128</field> <field name="desc"></field> <field name="price">12.40</field> <field name="title" boost="2.0">Summer of the all-rounder: Test and championship cricket in England 1982</field> <field name="isbn">0002166313</field> <field name="yearpub">1982</field> <field name="publisher">Collins</field> </doc> <doc boost="2.5"> ... </doc> </add>
每一个元素都有一些可以指定的属性:
命令 | 参数 | 参数描述 |
<add> | commitWithin=number | 在指定的毫秒数中添加文档 |
<add> | overwrite=boolean | 默认为ture |
<doc> | boost=float | 默认为1.0 设置文档的权值 |
<field> | boost=float | 默认为1.0 设置字段的权值 |
Commit and Optimize Operations
时间: 2024-10-26 08:54:58