♥♥  solr是基于lucene的一个全文检索服务器,提供了一些类似webservice的API接口,用户可以通过http请求solr服务器,进行索引的建立和索引的搜索。
索引建立的过程:用户提交的文本会经过分词器进行分词,分词后的关键字会存到索引库里,索引库是关键字和目标文档的映射集。
索引搜索的过程:用户提交的搜索文本也是会经过分析器,得到的关键字会去索引库查询对应的目标文档并返回给客户端,采用的是权重排序算法。

solr和lucene的区别:lucene是一些搜索工具包,任何应用可以引进这些jar包实现自己的搜索引擎系统,而solr是基于lucene的,封装好的搜索引擎系统。lucene需要自己维护索引文件。

solr几个重要的配置文件:solrconfig、schema.xml数据库配置文件、data-config(自定义,用于数据从数据库导入到solr)

  1. Lucene专注于搜索底层的建设,而Solr专注于企业应用。

1.solr的安装

2.中文分词器的安装

配置信息:

  1. <!--中文分词器 -->
  2. <fieldType name="text_ik" class="solr.TextField">
  3. <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
  4. <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
  5. </fieldType>

3.1 DIH全量同步

相关配置信息:

  1. <!-- 数据导入配置 -->
  2. <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
  3. <lst name="defaults">
  4. <str name="config">data-config.xml</str>
  5. </lst>
  6. </requestHandler>

3.2

相关配置信息:

 

3.3 schema.xml同步字段配置

相关配置信息:

  1. <!-- 同步mysql爬虫表的字段 -->
  2. <field name="create_date" type="date" indexed="true" stored="true"/>
  3. <field name="update_date" type="date" indexed="true" stored="true"/>
  4. <field name="news_url" type="text_general" indexed="true" stored="true"/>
  5. <field name="news_origin" type="text_general" indexed="true" stored="true"/>
  6. <field name="key_word" type="text_general" indexed="true" stored="true"/>
  7. <field name="news_html" type="text_ik" indexed="true" stored="true"/>
  8. <field name="is_publish" type="int" indexed="true" stored="true"/>
  9. <field name="is_del" type="int" indexed="true" stored="true"/>
  10. <field name="flag_number" type="text_general" indexed="true" stored="true"/>
  11. <field name="out_line" type="text_ik" indexed="true" stored="true"/>
  12. <field name="state" type="int" indexed="true" stored="true"/>
  13. <!-- 同步mysql爬虫表的字段end -->

4.1DIH的增量同步(其实就是修改data-config.xml配置文件)

相关配置信息:

  1. <dataConfig>
  2. <dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.40.1:3306/shanghang" user="root" password="root" />
  3. <document>
  4. <entity name="consensus_data2" pk="id" transformer="DateFormatTransformer" query="select * from consensus_data2 where id >= '${dataimporter.request.id}'"
  5. deltaImportQuery="select * from consensus_data2 where id = '${dih.delta.id}'"
  6. deltaQuery="select id from consensus_data2 where create_date > '${dataimporter.last_index_time}'">
  7. <field column="id" name="id" />
  8. <field column="create_date" name="create_date" dateTimeFormat='yyyy-MM-dd HH:mm:ss'/>
  9. <field column="update_date" name="update_date" dateTimeFormat='yyyy-MM-dd HH:mm:ss' />
  10. <field column="news_url" name="news_url" />
  11. <field column="news_origin" name="news_origin" />
  12. <field column="keyWord" name="key_word" />
  13. <field column="news_html" name="news_html" />
  14. <field column="is_publish" name="is_publish" />
  15. <field column="is_del" name="is_del" />
  16. <field column="flag_number" name="flag_number" />
  17. <field column="out_line" name="out_line" />
  18. <field column="state" name="state" />
  19. </entity>
  20. </document>
  21. </dataConfig>

基于tomcat的solr环境搭建(Linux)的更多相关文章

  1. jdk、tomcat、solr环境搭建

    环境概述 1)操作系统:windows7旗舰版(64位) 2)jdk:jdk-8u131-windows-x64: 3)tomcat:apache-tomcat-9.0.0.M21 4)solr:so ...

  2. solr环境搭建

    介绍摘自百度百科:Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过 ...

  3. Ubuntu 基于Docker的TensorFlow 环境搭建

    基于Docker的TensorFlow 环境搭建 基于(ubuntu 16.04LTS/ubuntu 14.04LTS) 一.docker环境安装 1)更新.安装依赖包 sudo apt-get up ...

  4. EOS Dapp开发(1)-基于Docker的开发环境搭建

    随着EOS主网的上线,相信基于EOS的Dapp开发会越来越多,查阅了很多资料相关的开发资料都不是很多,只能自己摸索,按照网上仅有的几篇教程,先git clonehttps://github.com/E ...

  5. centos LAMP第一部分-环境搭建 Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

    centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课 打命令之后可以输入: e ...

  6. 基于Python的Appium环境搭建合集

    自动化一直是测试圈中的热聊,也是大家追求的技术方向.在测试中,往往回归测试也是测试人员的“痛点”.对于迭代慢.变更少的功能,就能用上自动化来替代人工回归,减轻工作量. 问题 在分享环境搭建之前,先抛出 ...

  7. [精华]Hadoop,HBase分布式集群和solr环境搭建

    1. 机器准备(这里做測试用,目的准备5台CentOS的linux系统) 1.1 准备了2台机器,安装win7系统(64位) 两台windows物理主机: 192.168.131.44 adminis ...

  8. Solr环境搭建过程中遇到的问题

    Solr下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/6.3.0 Solr搭建步骤转自:http://blog.csdn.net/wbcg ...

  9. Java部署环境搭建(Linux)

    环境搭建必须jdk.tomcat.mysql(基础) 额外的软件包项目中可能用到 jdk:它包含jre和开发所需完整类库. tomcat:它是一个web容器,项目通常往webapps下扔,便于外界访问 ...

随机推荐

  1. lua keynote

    [lua keynote] 1.两个减号是单行注释: -- --[[ 多行注释 多行注释 --]] ---[[ // 三个'-'开启的是一个行注释--]] 1.1.两条语句可以在同一行,并表不需要分号 ...

  2. springboot logback

    /resources/logback-spring.xml <configuration> <appender name="stdout" class=" ...

  3. pytest 学习笔记一:参数化与组织分层

    组织分层: 1.普通方式,和unittest分层类似: setup_module()  # 通常放在类外 setup_class(cls) setup(self) teardown(self) tea ...

  4. PUDN用户名与密码

    Pudn 用户名与密码 boumang8171    que2538  温馨提示:1.  95%的用户第一次登录不成功,都是因为在复制粘贴帐号和密码时,把空格也复制粘贴上了.2. 如果连续3次帐号或密 ...

  5. 可视化工具Navicat的使用

    可视化工具Navicat的使用 掌握Navicat的基本使用 # PS:在生产环境中操作MySQL数据库还是推荐使用命令行工具mysql,但在我们自己开发测试时,可以使用可视化工具Navicat,以图 ...

  6. Cisco无线AP上联口为trunk时无法注册故障处理

    网络环境:WLC5520  AP:1832i-h-k9 客户实施过程中电话告知其将AP和交换机互联的端口类型设置为TRUNK口后,AP无法注册到WLC上,后经过查看配置发现客户用于AP管理的VLAN为 ...

  7. 数据库中where与having区别

    having 和where 都是用来筛选用的 having 是筛选组 而where是筛选记录 他们有各自的区别 1>当分组筛选的时候 用having 2>其它情况用where------- ...

  8. mysql 存储过程 与 循环

    mysql 操作同样有循环语句操作,三种标准循环模式:while, loop,repeat, 外加一种非标准循环:goto [在c或c#中貌似出现过类型循环但是一般不建议用!] 一般格式为:delim ...

  9. instanceof 和 typeof

    instanceof 运算符用来检测 constructor.prototype 是否存在于参数 object 的原型链 function Person(){ Person.prototype.dan ...

  10. JS部分

    前端三剑客(HTML,CSS,JavaScript) Html:负责一个页面的结构 Css:负责一个页面的样式 JavaScript:负责与用户进行交互 JS概念 JS是JavaScript的简称,是 ...