首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Solr竞价排名之ExternalFileField使用

ExternalFileField是一种非常灵活的定义排序的一种字段,适用于一些需要临时提高某些doc的排名,但是又不想显式的把评分建立到索引里面,这种需求,在电商的业务里面,经常会遇到一些特定的节日进行商品大促...,需要临时提高一批索引数据的排名,而又不想重建整个索引,在大促结束后,这些排名又恢复正常,这种场景下非常适合使用ExternalFileField来解决,与竞价排名非常类似。...ExternalFileField这种字段不能够被搜索,但可以用来结合函数查询和评分排序,下面介绍下用法: 字段定义 Java代码 <field name="rank" type="idRank...Java代码 <fieldType name="idRank" keyField="anyCpyNo" defVal="0" stored="true" indexed="true" class="<em>solr</em>.<em>ExternalFileField</em>...加载位置位于<em>solr</em>-5.1.0\server\<em>solr</em>\core\data\下面 解释: name是字段类型的标识 keyField是当前scheam的里面的唯一主键字段 defVal为默认值

1K90

solr字段说明】Solr查询详解

这节重点是讲Solr查询相关的知识点 一、 查询参数说明 在做solr查询的时候,solr提供了很多参数来扩展它自身的强大功能!以下是使用频率最高的一些参数! ...如果查询所有*:* ,根据指定字段查询(Name:张三 AND Address:北京) fq - (filter query)过虑查询,作用:在q查询符合结果中同时是fq查询符合的,例如:q=Name:...hl.simple.pre 高亮前面的格式  hl.simple.post 高亮后面的格式  facet 是否启动统计  facet.field 统计field  【注:以上是比较常用的参数,当然具体的参数使用还是多看Solr...官方的技术文档以及一些大神的博文日志,这里只是抛砖引玉】 二、 Solr运算符 1. “:” 指定字段查指定值,如返回所有值*:* 2. “?”...:  修饰符 字段名:查询关键词 AND/OR/NOT 修饰符 字段名:查询关键词 三、 Solr查询语法 1.最普通的查询,比如查询姓张的人( Name:张),如果是精准性搜索相当于SQL SERVER

2.1K30
您找到你想要的搜索结果了吗?
是的
没有找到

Lucene+Solr+ElasticSearch查询匹配优化

Apache Lucene这个强大的全文检索核心包,提供了搜索引擎的核心组件,通过相关性评分算法(VSM/BM25),出色的了解决了相关性匹配问题,当然Solr和ElasticSearch构建在Lucene...默认情况下,Lucene/Solr/ES的Boolean查询有三种查询策略: (1)必须匹配 -> must (2)必须不匹配 -> mustn't (3)至少匹配一个 ->should 除此之外...+mm=3 能查询到北京奇虎科技有限公司 情景2:查询北京奇虎360+mm=3 不能查询到北京奇虎科技有限公司 情景3:查询北京奇虎360+mm=2 能查询到北京奇虎科技有限公司 情景4:查询北京奇虎...: 对于分词后term数少的,适合采用固定数进行查询限制优化查询 对于分词后term数多的,适合采用百分比进行查询限制优化 mm=0% 代表最少匹配查询词里面出现的任意一个term mm=100%...参考资料: https://cwiki.apache.org/confluence/display/solr/The+DisMax+Query+Parser#TheDisMaxQueryParser-Themm

1.3K50

Solr如何使用游标进行深度分页查询

,在solr里面 通过rows和start参数,非常方便分页读取,但是如果你的start=1000000 rows=10,那么solr里面会将前面100万元数据的索引信息读取在内存里面,这样以来,非常耗内存...,所以在solr里面,分页并不适合深度分页。...使用游标的方式读取数据,也有一些约束或者缺点: (1)查询条件里面必须有cursorMark参数,而且必须不能有start参数 (2)查询的条件里必须按照主键排序(升序或降序),如果没有这个条件,主键重复...solrj实现代码例子: //游标查询 public static void cursorQuery()throws Exception{ //http solr服务...HttpSolrClient sc=new HttpSolrClient("http://localhost:8983/solr/one"); //solr查询封装

2.6K70

如何实现Solr自定义评分查询

(一)背景介绍 大多数时候我们使用lucene/solr/elasticsearch自带的评分查询都是没问题的,当然这也仅仅限于简单的业务或者对搜索排名 不敏感的场景中,假设业务方要求有若干业务因子要干扰到排名...(二)实现策略 (1)在索引的时候把众多的业务评分计算提前计算好,存储成一个字段,然后查询的时候根据这个字段排名。...评价:比较简单暴力,适合加权固定,不经常改变评分因素的业务使用,查询性能最高 ,更新,改变,调试评分比较麻烦 (2)在索引的时候把众多的业务评分因子都索引成一个字段,在查询的时候动态获取各个字段评分计算后...(B)通过Function Query实现 函数查询一项强大的功能,solr已经自带了 许多的函数,比如数学函数,聚合函数等,详细资料可看官网的wiki资料 https://cwiki.apache.org...的ui页面进行查询,不报错的话,即查询成功,可以看到和我们第一种方式的结果是一致的 ?

1.7K70

SpringBoot 系列教程 Solr查询使用姿势小结

200115-SpringBoot 系列教程 Solr查询使用姿势小结 接下来进入 solr CURD 的第四篇,查询的使用姿势介绍,本文将主要包括以下知识点 基本的查询操作 fq 查询 fl...配置 在介绍 demo 之前,需要先安装 solr 环境,搭建 SpringBoot 项目工程,具体的环境搭建过程不细说,推荐参考文档 190510-SpringBoot 高级篇搜索之 Solr 环境搭建与简单测试...在application.yml 配置文件中红,指定 solr 的域名 spring: data: solr: host: http://127.0.0.1:8983/solr...然后在 solr 中,写入一些数据,供我们查询使用,可以通过控制台的方式写入,也可以通过190526-SpringBoot 高级篇搜索 Solr 之文档新增与修改使用姿势 这篇文档的 case 添加...查询 solr 文档对应的 POJO 如下,(注意 solr 中的主键 id 为 string 类型,下面定义中用的是 Integer,推荐与 solr 的数据类型保持一致) @Data public

74640

Solr中如何使用游标进行深度分页查询

,在solr里面 通过rows和start参数,非常方便分页读取,但是如果你的start=1000000 rows=10,那么solr里面会将前面100万元数据的索引信息读取在内存里面,这样以来,非常耗内存...,所以在solr里面,分页并不适合深度分页。...使用游标的方式读取数据,也有一些约束或者缺点: (1)查询条件里面必须有cursorMark参数,而且必须不能有start参数 (2)查询的条件里必须按照主键排序(升序或降序),如果没有这个条件,...solrj实现代码例子: Java代码 //游标查询 public static void cursorQuery()throws Exception{ //http solr服务...HttpSolrClient sc=new HttpSolrClient("http://localhost:8983/solr/one"); //solr查询封装

3.2K60

干货 | 如何用Solr搭建大数据查询平台

Solr安装完成,现在我们需要从mysql导入数据,导入前,我们需要先创建一个core,core是solr的特有概念,每个core是一个查询、数据,、索引等的集合体,你可以把它想象成一个独立数据库,我们创建一个新...,solr查询全部使用post参数,比如: http://localhost:8983/solr/solr_mysql/select?...11行到第110行的内容,因为solr采用的是分页查询,wt=json指定查询结果是json格式的,还可以是xml、php、python、ruby以及csv。...,mysql只负责存储整理好的数据,并不提供查询服务,整理和导入新数据库时,只需操作mysql,solr利用自带的jetty独立运行,定期从mysql导入增量更新的数据,Tomcat作为应用服务器,运行提供查询的...现在我们的服务器搭建还剩下最后一件事:既然现在我们准备把solr查询提供给别人用,那么问题来了,我们只希望别人通过tomcat里的servlet查询,而不希望直接调用solr,我们需要屏蔽外部查询: 如果把

4.5K70

Solr使用——什么是solr

您通过 HTTP GET 查询并接收 JSON、XML、CSV 或二进制结果。...针对大流量进行了优化:Solr 已在全球范围内以极大规模的方式得到验证 综合管理界面:Solr 附带一个内置的响应式管理用户界面,可以轻松控制您的 Solr 实例 基于标准的开放接口 - XML、JSON...Solr 通过 JMX 发布大量指标数据 高度可扩展和容错:Solr 建立在经过实战考验的 Apache Zookeeper 之上,可以轻松扩展和缩减。...Solr 在复制、分发、重新平衡和容错方面开箱即用。 灵活、适应性强,配置简单:Solr 旨在适应您的需求,同时简化配置 近实时索引:想立即查看您的更新吗?...Solr 利用 Lucene 的近实时索引功能来确保您在需要时看到内容 可扩展插件架构:Solr 发布了许多定义良好的扩展点,可以轻松插入索引和查询时间插件。

1.1K30

Hbase+Solr实现二级索引提供高效查询

hbase-increment-index 业务需求: 现有一张Hbase的表,数据量千万级+,而且不断有新的数据插入,或者无效数据删除,每日新增大概几百万数据,现在已经有离线的hive映射hbase 提供离线查询...,但是由于性能比较低,且不支持全文检索,所以想提供一种OLAP实时在线分析的查询,并且支持常规的聚合统计和全文检索,性能在秒级别可接受 需求分析: hbase的目前的二级索引种类非常多,但大多数都不太稳定或成熟...技术实现 (1)搭建一套solr或者es集群,并且提前定制好schemal,本例中用的是solr单节点存储索引, 如果不知道怎么搭建solrcloud集群或者elasticsearch集群,请参考博客...c' (8)添加协处理器的jar: Java代码 alter 'c', METHOD => 'table_att', 'coprocessor'=>'hdfs:///user/hbase_solr...解决办法: 使用solr的 httpclient-4.3.1.jar httpcore-4.3.jar 替换所有节点hbase/lib下的 低版本的httpclient组件包,即可!

2.9K60

solr

中找到,这个配置文件内容有点多,主要内容有:使用的lib配置,包含依赖的jar和Solr的一些插件;组件信息配置;索引配置和查询配置,下面详细说一下索引配置和查询配置. 5.2.1索引indexConfig...server.optimize();//不要频繁的调用..尽量在无人使用时调用. 6.2查询索引        Solr在不修改任务配置的情况下就可以使用查询功能,在web项目中应用可以直接...子表达式查询(子查询):可以使用“()”构造子查询。...使用函数查询的方法 这里主要有三种方法可以使用函数查询,这三种s方法都是通过solr http接口的。 1)    使用FunctionQParserPlugin。ie: q={!...func}log(foo) 2)    使用“_val_”内嵌方法 内嵌在正常的solr查询表达式中。即,将函数查询写在 q这个参数中,这时候,我们使用“_val_”将函数与其他的查询加以区别。

11.1K20

Solr

# 简介 数据库太慢 # 启动 bin目录下 solr start 后台url (opens new window) # 创建core solr create -c name 创建的core文件在...: ~\solr-8.11.0\server\solr # 配置schema core目录下conf下managed-schema文件 uniqueKey不能改 java里面的int 对应solr的pint...我们的solr目的就是为了能让我们的应用程序更快的查询出用户想要的数据,而数据存储在应用中的各种地方入xml、pdf、关系数据库中,那么solr首先就要能够获取这些数据并在这些数据中建立索引来达成快速搜索的目的...,这里就列举我们最常用的从关系型数据库中向solr导入索引数据。...,再操作mysql 查询查询solr就可以 #solr挂了 查询MySQL 修复后同步一下数据,可以修改导入sql添加筛选时间条件

1.2K20

如何合理的控制solr查询的命中的数量和质量?

solr里面,如何合理的控制的命中的数量? 在一些日常的文章中或一些信息中,都有一些高频词,而这些高频词,在参与查询时,往往会造成,大量的结果集命中。 什么意思呢?...我们分析下在全文检索中两个重要的概念 ---- 查准率 召全率 在Lucene,Solr和ElasticSearch里面一般的分词的查询结果都会对这两个率做一个最好效果的调配,而这个默认的相关性评分规则就是...,所以这一下几乎会索引里面的所有数据都查询出来了,虽然查询排名还可以,但命中量太大了,超过4页之后几乎都是北京xxxx饭店了,跟主题的搜索没啥关系,所以我们可以采取一些策略来避免这种情况: solr默认的搜索策略...&mm=80%25 然后查询即可,mm是最小匹配的数量,可以是个固定的值,也可也是个百分比,因为散仙是在solr的admin页面查询,所以需要把%替换成url字符%25,这样才能正确发送到solr的服务端...具体的资料请看: edismax函数介绍: http://wiki.apache.org/solr/ExtendedDisMax

1.9K50

Solr使用——使用Docker进行快速安装Solr

Solr使用——使用Docker进行快速安装Solr 背景 日常我们开发时,我们会遇到各种各样的奇奇怪怪的问题(踩坑o(╯□╰)o),这个常见问题系列就是我日常遇到的一些问题的记录文章系列,这里整理汇总后分享给大家...开发环境 系统:Ubuntu20.04 虚拟机 环境:Docker 内容 最近正在研究Solr,特此进行整理出来学习过程,便于大家一起来学习使用。话不多说,下面我们开始进行安装Solr。...1、从Solr官网找到了容器安装的方式,点击一下进入Docker Hub中进行查看一下基本信息。...2、拉取一下镜像 docker pull solr 3、进行运行一下容器并映射出来端口号,访问试试。...docker run -p 8983:8983 -t solr 注:直接运行Docker也会从配置好的镜像仓库中查找需要的镜像,我还是更习惯于先拉取镜像下来~~~ 到这里我们进行访问一下,发现已经可以正常访问管理页面了

1.7K10

Zookeeper与Solr 概述 部署 Solr Cloud

solr 环境 CentOS 6.9 JDK 1.8 solr 4.10.2 Zookepper 3.4.9 Tomcat 7.0.82 IKAnalyzer2012FF_u1 solr 概述 是一个独立的企业级搜索应用服务器...http请求访问这个服务器, 获取或者写入对应的内容, 其底层是Lucene Lucene 是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎...需要先上传solr的安装包 cd /export/software/ rz 2. 解压solr的安装包 unzip solr-4.10.2.zip 3..../zkCli.sh ls /configs/solrconf 7.修改solr.xml配置文件 solr.xml是solr集群管理文件,指定当前实例运行的ip地址及端口号。.../startup.sh 状态zookeeper查询 查询运行状态 /export/servers/zookeeper-3.4.9/bin/zkServer.sh status zk客户端的使用 进入zk

2.7K50
领券