文档章节

solr搜索结果按更新时间与关键字相关度排序

hxt168
 hxt168
发布于 2016/07/12 10:00
字数 478
阅读 86
收藏 0
点赞 0
评论 0

  项目中用solr(lucene内核)来完成全文检索。项目中需求是搜索文章时,返回的结果中与搜索关键词匹配度高的要靠前,更新时间近的文章也要靠前。lucene框架有一套完善的评分公式:

    coord(q,d) 评分因子,基于文档中出现查询项的个数。越多的查询项在一个文档中,说明文档的匹配程度越高。
    queryNorm(q)查询的标准查询
    tf(t in d) 指项t在文档d中出现的次数frequency。具体值为次数的开根号。
    idf(t) 反转文档频率, 出现项t的文档数docFreq
    t.getBoost 查询时候查询项加权
    norm(t,d) 长度相关的加权因子

 根据这个公式默认的排序就是 文档与搜索词匹配度越高,排序越靠前。要加入其他因素对排序影响,一般通过更改boost的值。Solr的edismax方式的bf查询配置就是更改boost值影响总体打分。

在solrconfig.xml中加入下面配置:

   <requestHandler name="/select" class="solr.SearchHandler">
		<lst name="defaults">
		<str name="defType">edismax</str>
		<str name="bf">
		recip(ms(NOW,publishTime),3.16e-11,1,1)
		</str>
		<str name="pf">
		</str>
		<str name="qf">
		</str>
		</lst>
  </requestHandler>

  bf中的公式就是1/(ms(NOW-updateTime)*3.16e-11)+1 ,ms()是两个时间的毫秒差(详见

http://wiki.apache.org/solr/FunctionQuery)。公式中:更新时间与now相差越大,分数越小;分数在0-1之内;最近的更新时间和最远的更新时间对分数影响斜度不会太大。

 

 

 

© 著作权归作者所有

共有 人打赏支持
hxt168

hxt168

粉丝 8
博文 18
码字总数 16213
作品 3
杭州
程序员
Hybris电商平台搜索服务实践

电商平台搜索服务特点 随着电商平台的快速发展和所销售商品的数量大规模增长,从大量的商品数据中快速获取用户关注的商品,变得越来越有挑战性。优秀电商平台能够吸引客户的因素之一,就是拥...

dev_csdn ⋅ 05/02 ⋅ 0

Solr开发文档

Solr 是一种可供企业使用的、基于 Lucene 的搜索服务器,它支持层面搜索、命中醒目显示和多种输出格式。在这篇文章中,将介绍 Solr 并展示如何轻松地将其表现优异的全文本搜索功能加入到 We...

ibm_hoojo ⋅ 2011/10/21 ⋅ 0

APACHE SOLR基础篇

一、配置和安装solr 1、 首先去apache官方网站下载solr,下载地址 http://labs.renren.com/apache-mirror//lucene/solr/3.4.0/ 目前最新的是3.4的版本 2、 下载后解压目录如下 client是一个r...

阿莱倪士 ⋅ 2014/02/06 ⋅ 0

Solr In Action 中文版 第一章(一)

第一章 Solr 简介 本章速览: ·搜索引擎处理的数据特性 ·常见搜索引擎用例 ·Solr核心模块介绍 ·选择Solr的理由 ·功能概述 伴随着社交媒体、云计算、移动互联网和大数据等技术的高速发展...

fengstyle ⋅ 2014/07/09 ⋅ 0

solr学习(一)入门

Solr采用Lucene搜索库为核心,提供全文索引和搜索开源企业平台,提供REST的HTTP/XML和JSON的API,如果你是Solr新手,那么就和我一起来入门吧!本教程以solr4.8作为测试环境,jdk版本需要1.7...

坏坏一笑 ⋅ 2015/07/24 ⋅ 0

Solr搜索的排序打分规则探讨

http://www.colorfuldays.org/program/solr/solredismaxboost/ 使用Solr搭建搜索引擎很容易,但是如何制定合理的打分规则(boost)做排序却是一个很头痛的事情。Solr本身的排序打分规则是继承自...

zmf ⋅ 2014/11/14 ⋅ 0

Solr高亮与Field权重

Solr高亮 原理 做搜索时,高亮是很常见的需求,那么Solr肯定也为高亮提供了支持。先解释下Solr高亮的原理,在我们设置了需要高亮显示的Field之后,查询得到的返回结果会多出来下面的内容: ...

Zero零_度 ⋅ 2015/08/17 ⋅ 0

Solr In Action 中文版 第一章(四、五)

4 功能概览 最后, 让我们再按照下面的分类,快速的过一下Solr的主要功能: ·用户体验 ·数据建模 ·Solr 4的新功能 在本书中,为你的用户提供良好的搜索体验会一直贯穿全书的主题。所以我们...

fengstyle ⋅ 2014/07/09 ⋅ 5

solr 的客户端调用solrj 建索引+分页查询

在 solr 3.5 配置及应用(一) 讲过一了 solr 3.5的详细配置,本节我们讲利用solr 的客户端调用solr的应用了! 一、利用SolrJ操作solr API 使用SolrJ操作Solr会比利用httpClient来操作Solr要简...

小样 ⋅ 2013/02/21 ⋅ 0

搜索引擎关键字智能提示的一种实现

搜索引擎关键字智能提示的一种实现 美团技术团队 问题背景 搜索关键字智能提示是一个搜索应用的标配,主要作用是避免用户输入错误的搜索词,并将用户引导到相应的关键词上,以提升用户搜索体...

宇智波带土 ⋅ 2014/06/06 ⋅ 1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Mahout推荐算法API详解

前言 用Mahout来构建推荐系统,是一件既简单又困难的事情。简单是因为Mahout完整地封装了“协同过滤”算法,并实现了并行化,提供非常简单的API接口;困难是因为我们不了解算法细节,很难去根...

xiaomin0322 ⋅ 12分钟前 ⋅ 0

WampServer默认web服务器根目录位置

安装WampServer之后的web服务器根目录默认位置在WampServer安装目录下的www:

临江仙卜算子 ⋅ 14分钟前 ⋅ 0

Redux的一些手法记录

Redux Redux的基本概念见另一篇文。 这里记录一下Redux在项目中的实际操作的手法。 actions 首先定义action.js,actions的type,可以另起一个action-type.js文件。 action-type.js用来存...

LinearLaw ⋅ 15分钟前 ⋅ 0

android 手势检测(左右滑动、上下滑动)

GestureDetector类可以让我们快速的处理手势事件,如点击,滑动等。 使用GestureDetector分三步: 1. 定义GestureDetector类 2. 初始化手势类,同时设置手势监听 3. 将touch事件交给gesture...

王先森oO ⋅ 29分钟前 ⋅ 0

java 方法的执行时间监控 设置超时(Future 接口)

java 方法的执行时间监控 设置超时(Future 接口) import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.Executor......

青峰Jun19er ⋅ 34分钟前 ⋅ 0

一名开源小白的Apache成长自述

今天收到了来自Apache Vote我成为Serviceomb项目Committer的邮件,代表自己的贡献得到了充分的肯定;除了感谢团队的给力支持,我更希望将自己的成长经历——如何践行Apache Way的心得介绍给大...

微服务框架 ⋅ 36分钟前 ⋅ 0

vim介绍、颜色显示和移动光标、一般模式下复制、剪切和粘贴

1.vim 是 vi 的升级版 vim 是带有颜色显示的 mini安装的系统,一般都不带有vim [root@aminglinux-128 ~]# yum install -y vim-enhanced已加载插件:fastestmirror, langpacksLoading mir...

oschina130111 ⋅ 36分钟前 ⋅ 0

Deepin 操作系统四面楚歌

作为国内做的最好的 Linux 发行版,源自 Debian sid 的 Deepin 目前正面临重重困境,新版本不断延期,开发人员离职,bug 长期得不到修复,和 Debian/Ubuntu 的兼容性问题也面临越来越严重的挑...

六库科技 ⋅ 36分钟前 ⋅ 0

MyBatis之动态sql

我们需要知道的是,使用mybatis重点是对sql的灵活解析和处理。在原先的UserMappser.xml中,我们这样查询表中满足条件的记录 : 123 <select id="findUserList" parameterType="userQuery...

瑟青豆 ⋅ 37分钟前 ⋅ 0

这届俄罗斯世界杯的冷门那么多怎么办?

最纯粹的世界杯,最神奇的大冷门。 德国0比1被墨西哥摩擦了。 日本历史性的赢了哥伦比亚。 C罗也挑平了西班牙。 梅西被冰岛狮吼吼愣神了。 就连11次进世界杯4强的巴西也被瑞士逼平了。 天台已...

开源中国众包平台 ⋅ 37分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部