热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

solr6.3.0AdminUI查询中各参数的含义

2019独角兽企业重金招聘Python工程师标准本文内容是在官方文档给出的gettingstarted的Demo下进行的。如何启动运行官方demogettingstarte

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

本文内容是在官方文档给出的gettingstarted的Demo下进行的。如何启动运行官方demo"gettingstarted"可在公众号中历史文章中查看solr6.3.0的安装部署

AdminUI 中各参数及其含义

qt = query type

指定那个类型来处理查询请求,一般不用指定,默认是standard

 

q = query

查询字符串,必须指定,查询结果根据该参数指定的查询词被打分

 

fq = filter query 

过滤查询,在q的基础上进行过滤,不影响打分

 

sort

根据查询结果的打分或者其他指明的特点进行排序。有两种排序升序(asc),降序(desc),不区分大小写。允许根据多个field排序,用逗号分隔开。

NB:  排序的field必须是索引的field,同时field对应的type不能是multiValued的

 

start 

结果从那一条记录开始查询

 

rows

 查询多少条记录

 

fl

定义返回记录的field

 

df

默认查找的字段。solr6.3.0默认df=_text_

通过solr的adminUI 中可以看到如下配置

070506_ALyi_915970.png

在server/solr/gettingstarted/conf/managed-schema

文件最后一行有这样一行配置

默认所有的field都被copy 到_text_中。

用处:比如一个电商的搜索api调用方大部分只期望搜索产品名称则df=product_name

 

wt

指明返回数据格式。默认是json

 

indent

返回结果是否缩进。默认indent=on开启,一般调试json,php,phps,ruby输出才有必要用这个参数

 

debugQuery

查询结果中包含调试信息。explain info中包含每一条查询结果的信息

 

更多详细信息参考: http://www.solr.cc/blog/?p=1018

 

 

NB:solr官方的例子中,对price进行排序时需要修改server/solr/gettingstarted/conf/managed-schema文件中 

改为

使用solr AdminUI进行查询

http://192.168.1.23:8983/solr/gettingstarted/select?df=_text_&fl=name,price,features,score&fq=manu:Belkin&indent=on&q=ipod&sort=price%20asc&wt=json

查询结果如图所示

相关性排序

solr与其他关系型数据库和NoSQL的区别之一,是solr对返回的结果进行了查询词的相关性排序,默认按照相关性降序排列。score越高,查询词和文档的相关性就越高。

 

以gettingstarted为例,使用不同的参数,进行如下三次查询:

1

query : iPod

fl:name,features,score

 

返回的结果按照score降序排列。直观的看,第一条数据,搜索词出现3次,剩余的两条数据ipod只出现了一次。

 

score的值不是固定不变的。它仅用于lucence内部做相关性排序使用,查询词不同,分数也不同。

 

每一次查询时,每一个文档会被计算出一个和查询词匹配的分数,分数越高,文档和查询词越相关。

query : iPod power

fl:name,features,score

 

查询结果与上次相同,但是我们注意到,打分不同

3

query : iPod power^2

fl:name,features,score

 

给power这个查询词设置一个2的权重(默认都是1)。这意味着,power这个词比ipod这个词重要了一倍。现在看查询结果,虽然查询来还是那3条结果,但是顺序已经发生了变化。

 

翻页和排序

 

想一想,你自己平时在淘宝上会翻到第几页,99%的人按照某个条件拍个序,然后从前几个总找一个(不过也真有一页一页往后翻的)。所以我们在做搜索时,真的不需要返回全部的结果集。

 

olr使用rows和start两个属性,进行分页。

 

在客户端发送一个查询请求给solr,solr经过一系列的处理之后,去索引库中找,将找到的结果返回给solr,solr在经过一系列的处理,返回给客户端。执行过程如下:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1

所以:返回的结果越多,重新组织需要的时间就越长

 

--排序--

 

在上面的图例中我们看到可以根据相关性(score)进行排序,可以根据价格进行排序。排序和分页基本上一起使用(原文用的hand in hand意境好美),因为排序顺序决定分页的结果。

 

如果没有指定排序,solr会根据score来进行排序。如果两个文档的打分相同,他们会根据lucene的一个内部ID来排序。这个排序的值会随着索引

的变化而变化,所以这个排序不可靠。

更多信息请关注微信公众号:金沙数据

 

640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1

 

 

 


转:https://my.oschina.net/yimiyan/blog/801828



推荐阅读
  • Pikachu平台SQL注入漏洞详解
    本文详细介绍了SQL注入漏洞的基本原理、攻击流程、不同类型注入点的识别与利用方法,以及基于union联合查询、报错信息、布尔盲注、时间盲注等多种技术手段的信息获取方式。同时,探讨了如何通过SQL注入获取操作系统权限,以及HTTP Header注入和宽字节注入等高级技巧。最后,提供了使用SQLMap自动化工具进行漏洞测试的方法和常见的SQL注入防御措施。 ... [详细]
  • 本文介绍如何配置SQL Server以实现数据库的远程备份,包括建立网络映射、执行备份操作以及自动化的备份任务设置。 ... [详细]
  • 本文详细分析了一个生产系统中遇到的 Apache Axis2 403 Forbidden 错误,并提供了具体的排查步骤和解决方案。 ... [详细]
  • 开发笔记:异步实时搜索jquery select插件
    开发笔记:异步实时搜索jquery select插件 ... [详细]
  • 本文探讨了缓存系统中的两个关键问题——缓存穿透与缓存失效时的雪崩效应,以及这些问题的解决方案。此外,文章还介绍了数据处理、数据库拆分策略、缓存优化、拆分策略、应用架构演进及通信协议的选择等内容。 ... [详细]
  • 如何获取php脚本路径(2023年最新解答)
    如何获取php脚本路径(2023年最新解答) ... [详细]
  • HTTP(超文本传输协议)是互联网上用于客户端和服务器之间交换数据的主要协议。本文详细介绍了HTTP的工作原理,包括其请求-响应机制、不同版本的发展历程以及HTTP数据包的具体结构。 ... [详细]
  • SQL Server中查询表结构与视图的方法,便捷高效
    本文介绍如何在SQL Server中轻松查询表结构和视图,提供简洁高效的SQL语句,特别适用于开发人员。 ... [详细]
  • 解决MySQL Administrator 登录失败问题
    本文提供了解决在使用MySQL Administrator时遇到的登录错误的方法,包括启动变量和服务部分禁用的问题。同时,文章还介绍了通过安全配置模式来解决问题的具体步骤。 ... [详细]
  • 浏览器、中间件与服务器的交互机制
    本文详细探讨了浏览器、中间件和服务器之间的交互过程,特别是HTTP请求的完整流程,包括DNS解析、TCP连接建立及数据传输等关键步骤。 ... [详细]
  • 探讨 SQL Server 中显式谓词锁定机制如何影响外部插入操作,特别是在并发环境下。 ... [详细]
  • 开发笔记:Mongodb副本集集群搭建 ... [详细]
  • 在上一章【第三十九章:基于SpringBoot&Quartz完成定时任务分布式单节点持久化】中我们已经完成了任务的持久化,当我们创建一个任务时任务会被quartz定时任务框架自动持 ... [详细]
  • 本文探讨了Java异常处理的本质,提出了设计模式以优化异常处理,并分析了在AOP模型中异常处理的应用。文章强调了正确使用Java异常对于提升代码质量和维护性的关键作用。 ... [详细]
  • CDH Web安装指南
    本文详细介绍了如何通过Web界面快速安装CDH(Cloudera Distribution Including Apache Hadoop),包括环境准备、步骤详解及常见问题解决方法。 ... [详细]
author-avatar
夕阳何处寻
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有