`

solr基本教程

 
阅读更多

Solr

Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-serviceAPI接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。

Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎

 

文档通过Http利用XML 加到一个搜索集合中。

查询该集合也是通过http收到一个XML/JSON响应来实现。它的主要特性包括:高效、灵活的缓存功能,垂直搜索功能,高亮显示搜索结果,通过索引复制来提高可用性,提供一套强大Data Schema来定义字段,类型和设置文本分析,提供基于Web的管理界面等

文档通过Http利用XML 加到一个搜索集合中。

Solr可以和Hadoop一起使用。由于Hadoop处理大量数据,Solr帮助我们从这么大的源中找到所需的信息。不仅限于搜索,Solr也可以用于存储目的。像其他NoSQL数据库一样,它是一种非关系数据存储和处理技术。

Apache Solr特点

Restful APIs − 要与Solr通信,并非一定需要有Java编程技能。相反,您可以使用restful服务与它通信。可使用文件格式(XMLJSON.CSV)Solr中作为输入文档,并以相同的文件格式获取结果。

全文搜索 - Solr提供了全文搜索所需的所有功能,例如令牌,短语,拼写检查,通配符和自动完成。

企业准备 - 根据企业/组织的需要,Solr可以部署在任何类型的系统(大或小),如独立,分布式,云等。

灵活和可扩展 - 通过扩展Java类并相应配置,可以轻松地定制Solr的组件。

NoSQL数据库 - Solr也可以用作大数据量级的NOSQL数据库,可以沿着集群分布搜索任务。

管理界面 - Solr提供了一个易于使用,用户友好,功能强大的用户界面,使用它可以执行所有可能的任务,如管理日志,添加,删除,更新和搜索文档。

高度可扩展 - 在使用SolrHadoop时,我们可以通过添加副本来扩展其容量。

以文本为中心并按相关性排序 - Solr主要用于搜索文本文档,结果根据与用户查询的相关性按顺序传送

Lucene不同,在使用Apache Solr时,可不需要具有Java编程技能。它提供了一个完整的准备部署服务,以构建一个自动完成的搜索框,Lucene是不提供的。使用Solr可以扩展,分配和管理大规模(大数据)应用程序的索引。

 

Solr安装启动

Windows环境安装配置

下载解压http://lucene.apache.org/solr/downloads.html

验证http://localhost:8983/

安装hadoop下载hadoop

 

Solr  体系结构

<!--[if gte vml 1]><v:shape id="图片_x0020_7" o:spid="_x0000_i1025" type="#_x0000_t75" style='width:415.5pt;height:266.25pt;visibility:visible;mso-wrap-style:square'> <v:imagedata src="file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image002.png" o:title=""/> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

 

Apache Solr的主要构建块(组件)

<!--[if !supportLists]-->·         <!--[endif]-->请求处理程序 - 发送到Apache Solr的请求由这些请求处理程序处理。请求可以是查询请求或索引更新请求。根据这些请示的要求来选择请求处理程序。为了将请求传递给Solr,通常将处理器映射到某个URI端点,并且它将为指定的请求提供服务。

<!--[if !supportLists]-->·         <!--[endif]-->搜索组件 - 搜索组件是Apache Solr中提供的搜索类型(功能)。它可能是拼写检查,查询,构面,命中突出显示等。这些搜索组件被注册为搜索处理程序。多个组件可以注册到搜索处理程序。

<!--[if !supportLists]-->·         <!--[endif]-->查询解析器  Apache Solr查询解析器解析传递给Solr的查询,并验证查询的语法是否有错误。解析查询后,将它们转换为Lucene理解的格式。

<!--[if !supportLists]-->·         <!--[endif]-->响应写入器 - Apache Solr中的响应写入器是为用户查询生成格式化输出的组件。 Solr支持XMLJSONCSV等响应格式。对每种类型的响应都有不同的响应写入。

<!--[if !supportLists]-->·         <!--[endif]-->分析器/分词器 - Lucene以令牌的形式识别数据。 Apache Solr分析内容,将其分成令牌,并将这些令牌传递给Lucene Apache Solr中的分析器检查字段的文本并生成令牌流。分词器将分析器准备的令牌流分解成令牌。

<!--[if !supportLists]-->·         <!--[endif]-->更新请求处理器 - 每当向Apache Solr发送更新请求时,请求都通过一组称为更新请求处理器的插件(签名,日志记录,索引)运行。这个处理器负责修改,例如删除字段,添加字段等。

 

Solr核心(Core)Lucene索引的运行实例,包含使用它所需的所有Solr配置文件。我们需要创建一个Solr Core来执行索引和分析等操作。Solr应用程序可以包含一个或多个核心。如果需要,Solr应用程序中的两个核心可以相互通信。

核心的增删改查

./Solr create -c solr_sample

./solr delete -c my_core

一般来说,索引是系统地排列文档或(其他实体)。索引使用户能够在文档中快速地查找信息。索引集合,解析和存储文档。索引是为了在查找所需文档时提高搜索查询的速度和性能。

Apache Solr中,我们可以索引(添加,删除,修改)各种文档格式,如xmlcsvpdf

创建索引的几个方法1)使用Solr Web界面。(2)使用任何客户端API(JavaPython)3)使用提交工具。
使用Post命令添加文档用这个命令,可以在Apache Solr中索引各种格式的文件,例如JSONXMLCSV
./post -c solr_sample sample.csv

在执行上述命令时,给定文档在指定的核心下会生成索引

使用Post命令添加文档

使用Solr Web界面添加文档

使用Java Client API添加文档

使用XML文件格式将数据添加到Solr索引。

./post -c my_core sample.xml

使用XML更新文档

./post -c my_core update.xml

删除文档

./post -c my_core delete.xml

除了存储数据,Apache Solr还提供了一些在需要时查询数据的功能

Apache Solr中的构面或分组(faceting)指的是将搜索结果分类到各种类别中

<!--[if !supportLists]-->·         <!--[endif]-->查询faceting - 返回当前搜索结果中与给定查询匹配的文档数。

  • 日期faceting - 它返回在特定日期范围内的文档数。

使用字段faceting,我们可以检索所有字词的计数,或者只检索任何给定字段中的顶部字词。

 

Lucene是简单但强大的基于Java的搜索库。它可以在任何应用程序中用于添加搜索功能。 Lucene是一个可扩展的高性能库,用于索引和搜索几乎任何类型的文本。 Lucene库提供任何搜索应用程序所需的核心操作,例如索引和搜索

 

 

分享到:
评论

相关推荐

    SOLR的应用教程

    **SOLR应用教程** **一、概述** ...这个SOLR应用教程涵盖了从基础概念到实际应用,包括安装配置、索引和搜索操作、SolrJ的使用以及性能优化等多个方面,为读者提供了一个全面了解和掌握Solr的路径。

    solr入门教程

    本教程将引导你完成Solr的基本安装、配置以及数据库索引的建立,特别关注定时增量索引这一重要特性。 首先,从Apache官方网站下载Solr的最新稳定版本,例如5.1.0。解压缩文件到任何你喜欢的目录,比如F盘。接下来,...

    solr自学详细教程,吐血总结

    【Solr自学详细教程,吐血总结】 在IT领域,特别是在大数据处理和信息检索中,Apache Solr扮演着至关重要的角色。Solr是一款强大的、基于Java的全文搜索服务器,它建立在Lucene之上,提供了更高级的企业级搜索功能...

    solr中文教程

    虽然 Solr 可以运行在任何兼容的中间件上,但在本教程中,我们将以开源的 Apache Tomcat 为例。从 Apache 官网下载 Tomcat 的解压版,并按照官方文档的指示进行安装。 安装 Solr 本身,可以从 Apache 官网获取最新...

    solr入门java工程

    Solr 是一个开源的全文搜索引擎,它被广泛用于构建企业级的搜索应用。...通过深入研究这个入门工程,你将能够熟练掌握Solr与Java的结合使用,为构建基于华为FusionInsight的高效搜索应用打下坚实基础。

    solr课件还有安装原件

    这可能是一个包含Solr基础教程的文档,涵盖了Solr的基本概念,如索引、查询、优化和集群配置。Solr的索引是其高效搜索的关键,它允许快速查找大量数据。索引构建过程中,Solr会将文本数据转换为倒排索引,便于快速...

    solr教程+实例

    通过这个Solr教程,你可以深入了解Solr的原理和实践操作,无论是搭建基础的搜索服务,还是构建复杂的分布式搜索系统,都将有所帮助。同时,持续学习和掌握Solr的新特性和最佳实践,将使你更好地应对日益增长的搜索...

    solr1.4教程

    《Solr1.4教程》全面解析 在信息化飞速发展的今天,企业对高效、精准的搜索需求日益增强。Solr作为一款开源的企业级搜索引擎,因其强大的功能和易用性,逐渐成为众多企业的首选。本教程将深入探讨Solr1.4版本,帮助...

    solr搭建教程文档

    【Solr搭建教程文档】 SolrCloud是Apache Solr的一个分布式搜索和索引服务的实现,它结合了Zookeeper来管理集群状态和分布式操作。本教程将指导你在Win7环境下搭建一个单机版的伪分布式SolrCloud环境,利用Tomcat...

    solr开发应用教程

    总结,本“Solr 3.5开发应用教程”将引导你从基础安装到实际应用,全面掌握Solr搜索引擎的使用技巧。同时,提供的“教程重要说明.txt”可能包含更多关于实践过程中的注意事项和常见问题的解答,配合“Solr 3.5开发...

    非常经典的solr教程

    本教程将引导你了解如何搭建 Solr 3.5 实例并进行基本配置。 首先,确保你已经在机器上安装了 Tomcat 6.0、JDK 1.7 和 MySQL 5.0。这些是运行 Solr 所必需的环境。然后,你可以从 Apache 官方网站下载 Solr 3.5 ...

    solr4.4.0入门配置步骤

    Solr4.4.0是Solr的一个版本号,本篇文章将介绍如何安装和配置Solr4.4.0来搭建一个基本的搜索服务。 安装和配置Solr4.4.0通常包括以下步骤: 第一步,下载Solr4.4.0安装包。可以通过访问Solr的官方网站下载相应的...

    Apache Solr初级教程.docx

    3. **下载Solr**:访问Solr官网获取最新版本的Solr包,根据教程中的示例,下载的是Solr 1.4版本。 4. **部署Solr**:将Solr的WAR文件放入Tomcat的webapps目录,启动Tomcat后,Solr会自动部署。 Solr安装完成后,会...

    Solr中文教程技术文档.docx

    在本教程中,我们将深入探讨如何使用 Solr,并着重讲解搭建 Solr 服务器、创建索引库以及配置中文支持。 1. **理解 Lucene 原理**: Lucene 是 Java 开发的全文检索库,它提供了文本分析、索引和搜索功能。索引...

    solr使用教程结合taotao项目的search模块1

    【Solr 使用教程结合 TaoTao 项目 Search 模块1】 在本文中,我们将深入探讨如何使用 Apache Solr,一个基于 Lucene 的全文搜索引擎,以及如何将其集成到 TaoTao 电商项目的 Search 模块中。Solr 提供了高效、可...

    apache_solr 教程

    ### Apache Solr 教程详解 #### 一、Apache Solr 概述 Apache Solr 是一款基于 Lucene 的开源全文检索服务器。它提供了一套简单而强大的 API,支持多种编程语言,使得开发者能够轻松地集成搜索功能到自己的应用...

    Solr配置入门教程

    Solr配置入门教程主要涉及如何将数据从MySQL数据库和XML...总的来说,这个教程涵盖了Solr的基本配置,包括安装、核心创建、数据导入配置以及使用DIH从MySQL导入数据的过程,是初学者了解和实践Solr索引建设的良好起点。

    solr技术分析及运用超详细教程

    solr技术分析及运用超详细教程solr开发指南,包括solr服务器搭建,新增数据库配置,配置增量更新,配置分词器,常见异常,删除默认字段,调试技巧,solr日志,,solr基本查询语法,solr多字段匹配,solri集成solr...

    最新版linux solr-8.8.2.tgz

    了解这些基础知识后,你就可以开始探索 Solr 8.8.2 的高级特性,如实时增删改查、多字段排序、高亮显示、同义词处理、地理位置搜索以及更复杂的查询表达式等。通过熟练掌握 Solr,你将能够构建强大而高效的全文搜索...

Global site tag (gtag.js) - Google Analytics