您的位置:首页 > 技术中心 > 运维 >

Apache Solr是什么

时间:2019-06-18 11:13

Apache Solr 是一个开源的搜索服务器。Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现。Apache Solr 中存储的资源是以 Document 为对象进行存储的。

每个文档由一系列的 Field 构成,每个 Field 表示资源的一个属性。Solr 中的每个 Document 需要有能唯一标识其自身的属性,默认情况下这个属性的名字是 id,在 Schema 配置文件中使用:<uniqueKey>id</uniqueKey>进行描述。

Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。Solr是一个独立的企业级搜索应用服务器,目前很多企业运用solr开源服务。原理大致是文档通过Http利用XML加到一个搜索集合中。查询该集合也是通过 http收到一个XML/JSON响应来实现。

它的主要特性包括:高效、灵活的缓存功能,垂直搜索功能,高亮显示搜索结果,通过索引复制来提高可用性,提供一套强大Data Schema来定义字段,类型和设置文本分析,提供基于Web的管理界面等。

Solr 程序包 的目录结构

build :在solr 构建过程中放置已编译文件的目录。

client :包含了一些特定语言调用Solr 的API 客户端程序,目前只有Ruby 可供选择,Java 客户端叫SolrJ 在src/solrj 中可以找到。

dist :存放Solr 构建完成的JAR 文件、WAR 文件和Solr 依赖的JAR 文件。

example :是一个安装好的Jetty 中间件,其中包括一些样本数据和Solr 的配置信息。

example/etc :Jetty 的配置文件。

example/multicore :当安装Slor multicore 时,用来放置多个Solr 主目录。

example/solr :默认安装时一个Solr 的主目录。example/webapps :Solr 的WAR 文件部署在这里。

src :Solr 相关源码。

src/java :Slor 的Java 源码。

src/scripts :一些在大型产品发布时一些有用的Unix bash shell 脚本。

src/solrj :Solr 的Java 客户端。s

rc/test :Solr 的测试源码和测试文件。

src/webapp :Solr web 管理界面。管理界面的Jsp 文件都放在web/admin/ 下面,可以根据你的需要修改这些文件。

Solr 的源码没有放在同一个目录下,src/java 存放大多数文件,src/common 是服务器端与客户端公用的代码,src/test 放置solr 的测试程序,serlvet 的代码放在src/webapp/src 中。

更多Apache相关技术文章,请访问Apache使用教程栏目进行学习!

以上就是Apache Solr是什么的详细内容,更多请关注gxlcms其它相关文章!

热门排行

今日推荐

热门手游