设为首页 收藏本站
查看: 3122|回复: 0

[经验分享] solr indexing 和基本的数据操作

[复制链接]

尚未签到

发表于 2016-12-16 07:46:52 | 显示全部楼层 |阅读模式
  翻译自 Apache Solr Reference Guide
  indexing:
  solr的索引能够接受不同途径的index,包括XML文件,CSV文件,数据库里的表,或者word,PDF中的信息。
  有三种方式可以建立solr的索引,可以用tika中的solr cell 来给word,PDF等office文件来建立索引,可以使用http请求来建,还可以使用提供的标准API,这种方式是最推荐的,如果作为一个应用程序的话。
  这里有个最基本的数据结构,一个document包含多个field,一个field最起码有个name,和value,一个document中最起码有个field能够作为id的,当然在solr中他并不要求id是唯一的。
  schema.xml跟index关联很大,analysis 这个field的时候会根据xml中的配置,把field的内容进行tokenize,如果有些fields没有被精确定义,他会被忽略或者映射到 dymamic field .
  使用index handler上传数据:
  在solrconfig.xml中配置了handler的路径,如果对url的路径有修改,别忘了修改这个
  <requestHandler name="/update" class="solr.UpdateRequestHandler" />
  如果document中有uniq key的时候,新增的文档会替换是这个key的文档,如果不指定uniq key,速度会快点,因为不需要做key的检测,你有u niq key 但是不想让他做check,可以使用{overwrite="false"} 这个参数。
  commit操作时让发过去的数据正真生效,推荐solrconfig中的autocommit。
  optimize操作可以优化index,提高检索效率,在一个非常大的索引中,优化可能会和一些时间来做,但是通过merge一些小文件成一个大的文件,效率会快很多。
  使用集成tika的solr cell可以从xhtml,office的一套中提取内容
  DIH:
  data import handler: 可以从数据库, RSS,email站点,导入数据。
  首先需要在 solrconfig.xml中配置,如下所示:

<requestHandler name="/dataimport"
class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">/path/to/my/DIHconfigfile.xml</str>
</lst>
</requestHandler>
  一个典型的DIHconfigfile.xml如下所示:

<dataConfig>
<dataSource driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:./example-DIH/hsqldb/ex"
user="sa" />
<document>
<entity name="item" query="select * from item"
deltaQuery="select id from item where last_modified >
'${dataimporter.last_index_time}'">
<field column="NAME" name="name" />
<field name="features" column="DESCRIPTION" />
</entity>
</document>
</dataConfig>
  一目了然, item 是表名, queyr是sql, field表示solr中的field跟db中表的字段对应。
  数据更新:
  一般有两种方式,一种是更新一个或者多个field,不需要重新建立索引,还有一个是在nosql中常见的技术,给予版本号做更新,一种叫做 optimistic concurrency的技术。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-314857-1-1.html 上篇帖子: solr(四)索引文件之Extract Metadata 下篇帖子: DataImportHandler Solr数据导入DIH使用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表