Solr Cell
早先的 Solr 发行版可以很容易地索引已经存在的 XML 格式的文件,但是索引非 XML 数据,像 二级制文件或者 Office 文档,需要额外的处理。Solr 使用了 Apache Tika 来提供解析框架,该框架中整合了像 Apache PDFBox 和 Apache POI。使用了这个框架,Solr 的 ExtractingRequestHandler 可以使用 Tika 来支持二级制文件的上传,包括了常见的 Word 和 PDF 文件。
早先的 Solr 发行版可以很容易地索引已经存在的 XML 格式的文件,但是索引非 XML 数据,像 二级制文件或者 Office 文档,需要额外的处理。Solr 使用了 Apache Tika 来提供解析框架,该框架中整合了像 Apache PDFBox 和 Apache POI。使用了这个框架,Solr 的 ExtractingRequestHandler 可以使用 Tika 来支持二级制文件的上传,包括了常见的 Word 和 PDF 文件。
在搜索之前,需要把数据先索引到索引库中,solr 解压开的文件夹里有 example/exampledocs 这个目录,这个目录中存放在示例的文件。启动 solr 服务后,打开命令行,定位到 example/exampledocs 这里假设 solr 解压在D盘根目录下
cd D:\apache-solr-3.4.0\example\exampledocs</p> <p>java -Ddata=files -jar post.jar *.xml
这样就将 solr 示例数据通过 post.jar 这个工具提交到本地的 solr 服务中,这时在命令行窗口可以看到如下字眼
<br /> SimplePostTool: version 1.2<br /> SimplePostTool: WARNING: Make sure your XML documents are encoded in UTF-<br /> 8, other encodings are not currently supported<br /> SimplePostTool: POSTing files to http://localhost:8983/solr/update..<br /> SimplePostTool: POSTing file hd.xml<br /> SimplePostTool: POSTing file ipod_other.xml<br /> SimplePostTool: POSTing file ipod_video.xml<br /> SimplePostTool: POSTing file mem.xml<br /> SimplePostTool: POSTing file monitor.xml<br /> SimplePostTool: POSTing file monitor2.xml<br /> SimplePostTool: POSTing file mp500.xml<br /> SimplePostTool: POSTing file sd500.xml<br /> SimplePostTool: POSTing file solr.xml<br /> SimplePostTool: POSTing file spellchecker.xml<br /> SimplePostTool: POSTing file utf8-example.xml<br /> SimplePostTool: POSTing file vidcard.xml<br /> SimplePostTool: COMMITting Solr index changes..<br />
通过
<br /> java -jar post.jar -help<br />
可以查看到更多关于 post.jar 的使用方法
访问 http://localhost:8983/solr/admin/,就可以 进入 solr 的 admin 界面,界面如下所示:
[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 官网的下载地址是在 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名称来源
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 闽ICP备18020075号-1