1.7.1 solr Searching概述

1. Overview of Searching in Solr

  在用户运行一个solr搜索时,搜索查询会被request handler处理.一个request handler就是一个请求处理插件,这个插件定义了在solr处理请求时的请求处理逻辑 .solr支持多种request handler.一些用于搜索处理查询,然而其他的用于管理任务,如索引的replication(复制).

  搜索应用选择了一部分request handler作为默认请求处理程序.另外,应用也可以被配置来允许用户重写request handler.

  为了处理搜索查询,request handler调用query parser,用于解释查询的条件和参数.不同的查询解析(query parser)支持不同的语法.默认的查询解析器时DisMax解析器.

solr也包含一个早期的"standard" (Lucene) query parser, Extended DisMax(eDisMax) 查询解析器.标准(standard)查询解析器允许更精确的查询,DisMax查询解析容忍更多的错误.DisMax查询解析器的目的是提供一个类似于流行的搜索引擎如Google,很少显示语法错误给用户的搜索体验.扩展的DisMax是DisMax的一个提高版本,处理完全的Lucene的查询语法,同时还容忍语法错误。它还包括几个附加的特性.

  另外,还有一些所有查询解析器可以接受的常用查询参数:

  输入给一个查询解析器,需要包含如下:

  • 搜索字符串,也就是索引中的查询短语.
  • 参数 通过增加部分字符串或者字段的权重,通过应用布尔逻辑中的查询搜索条件,者通过从搜索结果中排除内容等来微调查询.
  • 参数 用于控制查询结果的展示,如指定查询结果顺序,限制结果字段显示.

  查询参数也许会指定query filter.作为搜索响应的一部分,查询过滤器对整个索引和缓存过滤查询结果.因为solr为查询过滤器分配了一个单独的缓存,战略性地使用过滤器的查询可以提高搜索性能(尽管名称相似,查询过滤器和分析过滤器是不相关的).

  搜索查询可以请求一部分短语在搜索结果中高亮.solr支持多短语(multi-term)高亮.solr包含一个丰富的搜索参数设置用于控制高亮.

  搜索响应也可以被配置成包括片段-snippets(文档摘要),具有高亮显示的文本.一些流行的搜索引擎如Google和Yahoo,返回搜索结果中的片段:3-4行文字,提供的一个搜索结果的描述。

  solr支持两种方式进行分组查询,以帮助进一步探索:

  Faceting是对搜索结果分类排列的功能(基于索引短语).在每个类别中,solr呈现了每个term命中的数量.分面很容易让用户探索网站上,如电影网站和产品评论网站,那里有许多类别和类别中的许多物品的搜索结果。

  下面的图片从CNET网站分面的例子:

  Clustering(聚类):在执行搜索时通过相似发现来分组搜索结果.聚类结果往往缺乏如分面搜索中那样的整齐的层次结构.但聚类仍然可以是有用的.它可以显示搜索结果中意想不到的共性,它可以帮助用户排除不相关的内容.

  solr同样支持相似查询功能(MoreLikeThis).

  response writer 管理查询响应的最终结果显示.solr包含多种的response writer.包含 XML Response Writer和JSON Response Writer.

  下图总结了搜索过程中的一些关键要素:

时间: 2024-10-25 03:24:00

1.7.1 solr Searching概述的相关文章

Solr01-Solr概述及Solr文件说明

目录 1 Solr概述 1.1 Solr是什么 1.1.1 创建索引 1.1.2 搜索索引 1.2 Solr与Lucene的区别 2 Solr文件说明 2.1 Solr的目录结构 2.2 其他常用概念说明 2.3 创建基础文件目录 2.4 solrconfig.xml文件说明 2.5 schema.xml文件说明 1 Solr概述 1.1 Solr是什么 Solr是Apache软件基金组织旗下的一个顶级开源项目, 是基于Lucene的全文搜索服务, 是一个独立的企业级搜索应用服务器, 可以独立运

Solr概述

什么是SolrSolr的下载及安装1)下载:官网:http://lucene.apache.org历史版本下载网址:http://archive.apache.org/dist/lucene/solr/也可以直接使用发给大家的压缩包:2)安装右键解压到当前文件夹即可,注意:解压的目录中一定不要中文和空格.目录结构我们最需要关注的就是:example目录.其中就有搭建Solr服务的详细案例.Jetty是一个WEB容器l Solr目录:包含全文检索要存储的索引数据以及相关的一些配置文件.l solr

Solr集群的搭建概述(非教程)

1.什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud.当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高,这时需要使用SolrCloud来满足这些需求. SolrCloud是基于Solr和Zookeeper的分布式搜索方案,它的主要思想是使用Zookeeper作为集群的配置信息中心. 它有几个特色功能: 1)集中式的配置信息 2)自动容错 3

Solr教程--官方自带数据的三个练习及讨论翻译版本

Solr教程 在你开始之前 解压Solr 练习1:索引Techproducts示例数据 在SolrCloud模式下启动Solr 索引技术产品数据 基本搜索 练习1总结 练习2:修改架构和索引影片数据 重新启动Solr 创建一个新的集合 索引样本电影数据 刻面 练习2总结 练习3:索引自己的数据 创建你自己的收藏 索引的想法 更新数据 删除数据 练习3总结 空间查询 包起来 清理 下一步在哪里? 本教程涵盖了Solr的启动和运行,将各种数据源摄入多个集合,并感受Solr管理和搜索界面. 它被组织成

solr入门教程

Solr 本文介绍solr的功能使用及相关注意事项;主要包括以下内容:环境搭建及调试;两个核心配置文件介绍;维护索引;查询索引,和在查询中可以应用的高亮显示.拼写检查.搜索建议.分组统计.拼音检索等功能的使用方法. 1. Solr 是什么? Solr它是一种开放源码的.基于 Lucene Java 的搜索服务器,易于加入到 Web 应用程序中.Solr 提供了层面搜索(就是统计).命中醒目显示并且支持多种输出格式(包括XML/XSLT 和JSON等格式).它易于安装和配置,而且附带了一个基于HT

.net中运用solr提升搜索效率(入门)

概述: 在开发网站的时候经常有要对某些内容查询的需求.此时如果基于数据库查询来做搜索功能,由于要对多个字段做模糊匹配,效率往往非常糟糕.这种情况就可以用Solr来提升搜索的效率.Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.这里介绍下Solr的环境和配置,然后说下应用SolrNet客户端对Solr服务器的操作. 一.Solr安装 软件下载:Solr 5.0.JDK 7以上 安装jdk..Solr直接解压完,用命令行直接可以启动. 命令行中进入ser

优雅的 laravel(1)- Composer概述及其自动加载探秘

刚开始接触laravel,一天时间走马观花的看了一些官方文档之后便开始了laravel的学习.这里谈到的都是最基础的东西,各路大神,可直接略过. composer概述 一开始,最吸引我的当属 Composer 了,因为之前从没用过 Composer . Composer 是PHP中用来管理依赖关系的工具,你只需在自己的项目中声明所依赖的外部工具库,Composer就会帮你安装这些依赖的库文件.运行 Composer 需要 PHP 5.3.2+ 以上版本. 使用composer 第一步,声明依赖关

搜索服务solr 一二事(1) - solr-5.5 使用自带Jetty或者tomcat 搭建单机版搜索服务器

solr,什么是solr,就是你要吃的东西“馊了”,不能吃了,out of date~ 嘛...开个玩笑,发音就是‘搜了’,专门用于搜索的一个开源框架,lunce就不说了,不好用,麻烦 来讲讲solr吧 目前最新更新的是6.0,4月7-8号更新的,哥不太喜欢用新出来的版本,多多少少会有bug,centos7出来后我至今使用的是6.5(实在无法忍受7啊...西吧) 6.0我也试着装了,但是会报错,日志文件找不到,自己新建一个也不行,去官方的jira看看,发现的确有这么一个bug,但是已经close

【java】企业级分布式搜索平台Solr视频教程

课程背景为了满足高可用.可扩展并容错的分布式搜索引擎.Solr是一个高性能,采用Java5开发, 基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎 教程目录:课时1:课程介绍课时3:1.搜索引擎及solr概述课时4:3.solr基于tomcat下安装课时5:2.solr基于jetty部署及安装课时6:4.solr管理控制台课时7:5.sche