solr

资源:点击打开链接

0.安装概览

1)  先启动,目的,不是为了运行,而是创建些文件,目录

2)  停止服务,进行配置,core(类似rabbitmqvhost虚拟机)

3)  复制很多文件,html(静态文件),jar到指定的目录,如果目录不存在,手工创建

4)  可以运行它的一个控制台,创建core,成功,就可以使用

5)  导入数据库数据

6)  利用solr来进行查询


1.solr基于java环境,必须先安装java并配置JAVA_HOME

参考:点击打开链接

2.安装启动

mkdir /usr/local/src/solr

上传文件:solr-5.2.1.tgz

tar xzf solr-5.2.1.tgz

cd solr-5.2.1/bin

./solr start  #启动solr

3.相关路径

(1)dist第三方的依赖包存放位置


以下两包要用到:做数据导入时用到,

DIH(dataimporthandler)

solr-dataimporthandler-5.2.1.jar

olr-dataimporthandler-extras-5.2.1.jar

数据库的内容直接导入进来,无需编程


(2)solr-5.2.1/example/example-DIH/solr/solr/conf

将来需要从这个位置拷贝文件


(3)server真正的启动目录


两个包都有用

webapps:运行时解包


solr:solr.xml核心配置需要他


solr-webapp:其中需要建立一些东西


(4)bin目录

启动命令在这个目录下:8983是solr的端口,需要开启这个端口


4.开启8983这个端口:点击打开链接

5.只需输入ip加端口

(1)日志


(2)创建core


发现目录,文件都不存在,无法创建。其中schema.xml这个配置文件的作用就是代替一下代码创建document

                Document doc = new Document();
		//如果按id来查询,需要将id加入doc的一个属性(org.apache.lucene.document.LongField;)
		//store表识创建索引时是否保存,索引实际上就是一个文件
		doc.add(new LongField("id", 2402694L, Store.YES));
		/**
		 * StringField和TextField有什么区别?
			StringField不分词,把整个内容作为一个分词。一般也不是用来查询。Store.YES.
			TextField会分词,按各个term来查询
		 */
		doc.add(new org.apache.lucene.document.TextField("title", 
				"小米5 全网通 高配版 3GB内存 64GB ROM 白色 移动联通电信4G手机", Store.YES));
		doc.add(new org.apache.lucene.document.TextField("sellPoint", 
				"该商品已下柜,欢迎挑选其他商品!", Store.YES));
		doc.add(new DoubleField("price", 1799.00, Store.YES));
		doc.add(new TextField("itemDesc","//c-nfa.jd.com/adclick?keyStr=6PQwtwh0f06syGHwQVvRO2qQjwLJ5GHB8CWaVmO7akxE4PBdL2U9aYjtXf0gd37ks791zJuQs2q4I2lpGNOzQQn9fekfXSNiJzgQO88Gv48J7YZU9PHhVH9aIOun3VaO9VEKOHcOEXc2lnu6+dkNEO1SqyDIWE/kI3XzWSi64L5JZPhJaWrgFoMsVyo2W/6sAkuOIdHLRtkW/q4CIdzM/gKe2acHG0Ajuj9L8JXxidE+hmSpgLz9xmR1xEiObDPEY2cXhMASnNvmSUyLnxgFsxMv49nQdfWafuMVCtVmz8qXOlcppL6VE6XAjxQTKJJ8WOo1bdnPYgppNB+nDWfC8A==&cv=2.0&url=//sale.jd.com/act/46aIRiwSg1J.html",Store.YES));
		doc.add(new StringField("image","http://img14.360buyimg.com/n1/s450x450_jfs/t2494/324/1615617468/268135/1677b798/56cd80c5N06181c58.jpg",Store.YES));
		//2.创建索引,索引文件

1)创建core时不会自动创建目录。

cd /usr/local/src/solr/solr-5.2.1/server/solr

mkdir jt

mkdir jt/conf:创建配置文件夹

mkdir jt/data:穿件数据文件夹

2)在conf目录下放置6个文件


schema.xmlsolrconfig.xml ,复制到conf目录下

如果需要实现数据导入必须复制下面3个文件到conf目录下

./example-DIH/solr/solr/conf/admin-extra.html

./example-DIH/solr/solr/conf/admin-extra.menu-bottom.html

./example-DIH/solr/solr/conf/admin-extra.menu-top.html

配置:资料

solrconfig.xml   提供RESFul业务接口,到时候solr对外提供服务,要支持所有的请求,请求以restful的形式体现,这个文件定义有哪些方法,参数有哪些,提供返回值(都是json),默认不支持dih所以要打开

熟悉:



配置

dih-config.xml


schema.xml


schema.xml 构建document的结构

<field name="id" type="long"indexed="true" stored="true" required="true"

indexed是否创建索引true创建,falase不创建

stored是否存储,true存储,false不存储

required必填

id:表识是主键

2)solr-5.2.1/server/solr-webapp/webapp/WEB-INF/lib下放入四个jar包

ik-analyzer-5.3.0.jar、mysql-connector-java-5.1.38-bin.jar、solr-dataimporthandler-5.2.1.jarsolr-dataimporthandler-extras-5.2.1.jar

将ik-analyzer-5.3.0.jar拷贝到(版本要和solr对应,该包在资源中有,其中修正了内容,否则不能用)

/usr/local/src/solr/solr-5.2.1/server/solr-webapp/webapp/WEB-INF/lib






将mysql-connector-java-5.1.38-bin.jar拷贝到(版本要和solr对应,该包在资源中有,其中修正了内容,否则不能用)

/usr/local/src/solr/solr-5.2.1/server/solr-webapp/webapp/WEB-INF/lib

点击打开链接67xv

将以下jar包放入/usr/local/src/solr/solr-5.2.1/server/solr-webapp/webapp/WEB-INF/lib目录

solr-dataimporthandler-5.2.1.jar

solr-dataimporthandler-extras-5.2.1.jar

将solr-5.2.1/dist下的


考到

/usr/local/src/solr/solr-5.2.1/server/solr-webapp/webapp/WEB-INF/lib

目录下

cp/usr/local/src/solr/solr-5.2.1/dist/solr-dataimporthandler-* .

3)ik分词器需要的配置文件

添加中文分词:

IKAnalyzer.cfg.xml(配置文件)ext.dic(扩展词典,将你自己定义的词放到这个字典中,比如你的名字,然后就可以将你的名字当做一个词来处理了)stopword.dic (词典)放入

/usr/local/src/solr/solr-5.2.1/server/solr-webapp/webapp/WEB-INF/classes目录(如果没有该目录自己创建)

资料

4)启动-重新启动-停止solr

    ./solr stop –all  #停止服务

    ./solr start      #启动服务      

    ./solrrestart    #重启服务

5)再创建


以下表识创建成功




6)导入数据库

下图的Configuration中就是dih-config.xml配置文件中的内容,只能查看不能修改


 















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值