查询数据

索引完数据就可以进行查询了。启动solr服务后,打开 http://localhost:8983/solr/admin/ 页面,Query String 的值是“*:*”代表查询全部的意思,点击【search】按钮,返回一个xml文件,如下所示:
现在我们看一下 url:http://localhost:8983/solr/select/?q=*%3A*&version=2.2&start=0&rows=10
solr查询过程,是把查询条件放在url中提交给服务器的q这个参数放的就是url编码过的查询条件。start是查询的其实位置,从0开始编号,rows是返回的条数,加入想做翻页,每页15条,这样取第三页就传入start=30&rows=15。默认的查询结果是xml格式,也可以返回json格式,在查询url后加wt=json即可,wt是writeType的缩写,参数后加wt=json的效果如下:

 

提交示例数据到索引库

在搜索之前,需要把数据先索引到索引库中,solr 解压开的文件夹里有 example/exampledocs 这个目录,这个目录中存放在示例的文件。启动 solr 服务后,打开命令行,定位到  example/exampledocs 这里假设 solr 解压在D盘根目录下

cd D:\apache-solr-3.4.0\example\exampledocs

java -Ddata=files -jar post.jar *.xml

这样就将 solr 示例数据通过 post.jar 这个工具提交到本地的 solr 服务中,这时在命令行窗口可以看到如下字眼

SimplePostTool: version 1.2
SimplePostTool: WARNING: Make sure your XML documents are encoded in UTF-
8, other encodings are not currently supported
SimplePostTool: POSTing files to http://localhost:8983/solr/update..
SimplePostTool: POSTing file hd.xml
SimplePostTool: POSTing file ipod_other.xml
SimplePostTool: POSTing file ipod_video.xml
SimplePostTool: POSTing file mem.xml
SimplePostTool: POSTing file monitor.xml
SimplePostTool: POSTing file monitor2.xml
SimplePostTool: POSTing file mp500.xml
SimplePostTool: POSTing file sd500.xml
SimplePostTool: POSTing file solr.xml
SimplePostTool: POSTing file spellchecker.xml
SimplePostTool: POSTing file utf8-example.xml
SimplePostTool: POSTing file vidcard.xml
SimplePostTool: COMMITting Solr index changes..

通过

java -jar post.jar -help

可以查看到更多关于 post.jar 的使用方法

solr admin 界面介绍

访问 http://localhost:8983/solr/admin/,就可以 进入 solr 的 admin 界面,界面如下所示:

solr 管理界面

[SCHEMA] 在线查看 schema.xml 文件的内容

[CONFIG] 在线查看 solrconfig.xml 文件的内容

[ANALYSIS] 按字段或者字段类型的配置,对输入的内容进行索引和搜索的分词分析

[SCHEMA BROWSER] 是对 schema.xml 文件的细化,把里面的字段、动态字段、分词类型

[STATISTICS] 统计各请求访问情况

[INFO] 显示各 handle 对应的处理类等

[DISTRIBUTION] 显示分布式信息

[PING] 用于检测 solr 服务是否可用

[LOGGING] 设置常用类的日志级别

[JAVA PROPERTIES] 显示系统的 Java 参数

[THREAD DUMP] 线程信息

[FULL INTERFACE] 高级搜索的界面

以下是高级搜索界面的参数:

[Solr/Lucene Statement] 可以输入查询关键字和查询语法

[Filter Query] 增加过滤条件

[Start Row] 其实行数,用来决定翻页的第几页
[Maximum Rows Returned] 最大返回的行数,也是就一页的数量
[Fields to Return] 返回的字段,*,score * 代表所有字段,score 代表得分
[Query Type] 查询类型
[Output Type] 结果输出类型,有 json 和 xml
[Debug: enable] 是否启用调试
[Enable Highlighting] 是否启用高亮
[Fields to Highlight] 需要高亮的字段

下载和安装 solr

下载 solr

solr 官网的下载地址是在 apache 上,下载地址为 :http://labs.renren.com/apache-mirror//lucene/solr/ ,这里有多个版本可选,这里下载最新版的 3.5,其中 apache-solr-x.x.x.zip 为 windows 下的已编译好的版本,如果想下载源码,请下载文件名中带 src 的。

准备安装

运行 solr 至少需要1.5以上的 jdk

开始安装solr

解压下载下来的 apache-solr-x.x.x.zip,可以看到其中包含 example 目录,这个目录下有个 jetty web容器和solr war包,以及solr的配置文件,打开命令行,cd 到 example  目录,然后输入以下命令来启动 solr

java -jar start.jar

当命令行中出现 “Started SocketConnector@0.0.0.0:8983”时,就代表jetty服务已经运行了,打开浏览器,输入

http://localhost:8983/solr/admin/

就可以看到solr运行的界面,如果出现该界面,说明solr运行成功了

 

solr 运行界面

Apache Solr 简介

solr名称来源

Search On Lucene Replication

solr基本概况

是 java 开发的一个完整的搜索服务,底层是基于lucene的,lucene 是一个搜索组件,而solr是个完整的应用。部署solr之后,就能直接通过相关的接口向solr发送索引数据、执行搜索。

solr历史

2004年 CNET 开发 Solar,为 CNET 提供站内搜索服务
2006年1月捐献给 Apache ,成为 Apache 的孵化项目
一年后 Solr 孵化成熟,发布了1.2版,并成为 Lucene 的子项目
2010年6月,solr 发布了的1.4.1版,这是1.4的 bugfix 版本,1.4.1的solr使用的lucene是2.9版本的
solr 从1.4.x版本以后,为了保持和lucene同步的版本,solr直接进入3.0版本,截止发稿日期为止,solr 最新版本是 3.5版本。

solr的用户

solr目前有很多用户了,比较著名的用户有 AOL、 Disney、 Apple 等,国内的有淘宝,淘宝的终搜就是基于solr改造的,终搜用于淘宝的SNS、淘女郎等处的搜索

这是本博客的第一篇文章

本站构建在 wordpress 之上,本篇文章是 wordpress 默认的文章(id=1),为了表示对 wordpress 的敬重,故保留本 id 的文章。

以下无其他文章

Copyright © All Rights Reserved · Green Hope Theme by Sivan & schiy · Proudly powered by WordPress