基于tomcat的solr环境搭建(Linux)
♥♥ solr是基于lucene的一个全文检索服务器,提供了一些类似webservice的API接口,用户可以通过http请求solr服务器,进行索引的建立和索引的搜索。
索引建立的过程:用户提交的文本会经过分词器进行分词,分词后的关键字会存到索引库里,索引库是关键字和目标文档的映射集。
索引搜索的过程:用户提交的搜索文本也是会经过分析器,得到的关键字会去索引库查询对应的目标文档并返回给客户端,采用的是权重排序算法。
solr和lucene的区别:lucene是一些搜索工具包,任何应用可以引进这些jar包实现自己的搜索引擎系统,而solr是基于lucene的,封装好的搜索引擎系统。lucene需要自己维护索引文件。
solr几个重要的配置文件:solrconfig、schema.xml数据库配置文件、data-config(自定义,用于数据从数据库导入到solr)
Lucene专注于搜索底层的建设,而Solr专注于企业应用。
1.solr的安装

2.中文分词器的安装

配置信息:
<!--中文分词器 -->
<fieldType name="text_ik" class="solr.TextField">
<analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
<analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
3.1 DIH全量同步

相关配置信息:
<!-- 数据导入配置 -->
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
3.2

相关配置信息:
3.3 schema.xml同步字段配置

相关配置信息:
<!-- 同步mysql爬虫表的字段 -->
<field name="create_date" type="date" indexed="true" stored="true"/>
<field name="update_date" type="date" indexed="true" stored="true"/>
<field name="news_url" type="text_general" indexed="true" stored="true"/>
<field name="news_origin" type="text_general" indexed="true" stored="true"/>
<field name="key_word" type="text_general" indexed="true" stored="true"/>
<field name="news_html" type="text_ik" indexed="true" stored="true"/>
<field name="is_publish" type="int" indexed="true" stored="true"/>
<field name="is_del" type="int" indexed="true" stored="true"/>
<field name="flag_number" type="text_general" indexed="true" stored="true"/>
<field name="out_line" type="text_ik" indexed="true" stored="true"/>
<field name="state" type="int" indexed="true" stored="true"/>
<!-- 同步mysql爬虫表的字段end -->
4.1DIH的增量同步(其实就是修改data-config.xml配置文件)


相关配置信息:
<dataConfig>
<dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.40.1:3306/shanghang" user="root" password="root" />
<document>
<entity name="consensus_data2" pk="id" transformer="DateFormatTransformer" query="select * from consensus_data2 where id >= '${dataimporter.request.id}'"
deltaImportQuery="select * from consensus_data2 where id = '${dih.delta.id}'"
deltaQuery="select id from consensus_data2 where create_date > '${dataimporter.last_index_time}'">
<field column="id" name="id" />
<field column="create_date" name="create_date" dateTimeFormat='yyyy-MM-dd HH:mm:ss'/>
<field column="update_date" name="update_date" dateTimeFormat='yyyy-MM-dd HH:mm:ss' />
<field column="news_url" name="news_url" />
<field column="news_origin" name="news_origin" />
<field column="keyWord" name="key_word" />
<field column="news_html" name="news_html" />
<field column="is_publish" name="is_publish" />
<field column="is_del" name="is_del" />
<field column="flag_number" name="flag_number" />
<field column="out_line" name="out_line" />
<field column="state" name="state" />
</entity>
</document>
</dataConfig>

基于tomcat的solr环境搭建(Linux)的更多相关文章
- jdk、tomcat、solr环境搭建
环境概述 1)操作系统:windows7旗舰版(64位) 2)jdk:jdk-8u131-windows-x64: 3)tomcat:apache-tomcat-9.0.0.M21 4)solr:so ...
- solr环境搭建
介绍摘自百度百科:Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过 ...
- Ubuntu 基于Docker的TensorFlow 环境搭建
基于Docker的TensorFlow 环境搭建 基于(ubuntu 16.04LTS/ubuntu 14.04LTS) 一.docker环境安装 1)更新.安装依赖包 sudo apt-get up ...
- EOS Dapp开发(1)-基于Docker的开发环境搭建
随着EOS主网的上线,相信基于EOS的Dapp开发会越来越多,查阅了很多资料相关的开发资料都不是很多,只能自己摸索,按照网上仅有的几篇教程,先git clonehttps://github.com/E ...
- centos LAMP第一部分-环境搭建 Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课
centos LAMP第一部分-环境搭建 Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课 打命令之后可以输入: e ...
- 基于Python的Appium环境搭建合集
自动化一直是测试圈中的热聊,也是大家追求的技术方向.在测试中,往往回归测试也是测试人员的“痛点”.对于迭代慢.变更少的功能,就能用上自动化来替代人工回归,减轻工作量. 问题 在分享环境搭建之前,先抛出 ...
- [精华]Hadoop,HBase分布式集群和solr环境搭建
1. 机器准备(这里做測试用,目的准备5台CentOS的linux系统) 1.1 准备了2台机器,安装win7系统(64位) 两台windows物理主机: 192.168.131.44 adminis ...
- Solr环境搭建过程中遇到的问题
Solr下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/6.3.0 Solr搭建步骤转自:http://blog.csdn.net/wbcg ...
- Java部署环境搭建(Linux)
环境搭建必须jdk.tomcat.mysql(基础) 额外的软件包项目中可能用到 jdk:它包含jre和开发所需完整类库. tomcat:它是一个web容器,项目通常往webapps下扔,便于外界访问 ...
随机推荐
- Bootstrap 代码
[Bootstrap 代码] Bootstrap 允许您以两种方式显示代码: 第一种是 <code> 标签.如果您想要内联显示代码,那么您应该使用 <code> 标签. 第二种 ...
- c# 用户页面
第一步: 第二步: 第三步: 结果:
- C# delegate (001)
背景:一直不是很理解C#中的委托,也不是很清楚委托应用的业务场景,有可能和自己一直做B/S有关 业务描述:C/S,父窗口打开子窗口,子窗口把自己文本框里的值传个父窗口的文本框. 子窗体代码: //定义 ...
- Python基础之Python分类
python环境 编译型: 一次性将所有程序编译成二级制文件,开发效率极低,因为一旦出现BUG所有的程序需要全部重新编译 缺点: 开发效率低,不能跨平台 优点: 执行速度快 解释型: 当程序执行时,一 ...
- Could not load conf for core new_core 解決方法
new_core: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: Could not load ...
- thymeleaf 处理模板为字符串
@Autowired private SpringTemplateEngine thymeleaf; public String aa() { Context context = new Contex ...
- springboot org.hibernate.MappingException: No Dialect mapping for JDBC type: -9
参考 https://www.cnblogs.com/luxd/p/8316243.html https://www.cnblogs.com/s648667069/p/6478559.html @Co ...
- Android笔记:OptionsMenu
使用菜单选项OptionsMenu,需要进行以下操作:(1)重写onCreateOptionsMenu方法: public boolean onCreateOptionsMenu(Menu menu) ...
- Python+Selenium学习--启动及关闭浏览器
场景 页面上弹出的对话框是自动化测试经常会遇到的一个问题:很多情况下对话框是一个iframe,如之前iframe介绍的例子,处理起来稍微有点麻烦:但现在很多前端框架的对话框是div 形式的,这就让我们 ...
- 【Android端ANR卡顿检测】BlockCanary检测
一.什么是BlockCanary? 检测主线程卡顿的一个开源工具,基本展现模式等都和LeakCanary很像 二.BlockCanary的工作原理是什么? 工作原理所涉及到的底层的内容一定要理解清楚 ...