lucene/solr 修改评分规则方法总结】的更多相关文章

说明:由于solr底层使用的是lucene,因此修改solr打分机制归根结底还是依赖于lucene的打分机制,本文主要讨论lucene的打分机制. 本文说明lucene 常用的四种影响评分结果的方式. 1.document设置boost 2.Field设置boost 3.查询时设置boost 4.扩展Similarity实现. 一.document设置boost: 暂缺. 二.Field设置boost: 暂缺. 三.查询时设置boost: 暂缺. 四.扩展Similarity实现: 暂缺.…
1.开篇语2.概述3.渊源4.初识Solr5.Solr的安装6.Solr分词顺序7.Solr中文应用的一个实例8.Solr的检索运算符 [开篇语]按照惯例应该写一篇技术文章了,这次结合Lucene/Solr来分享一下开发经验. Lucene是一个使用Java语言写的全文检索开发包(API),利用它可以实现强大的检索功能,它的详细介绍大家可以去Google上搜索一下,本文重点放在Solr相关的讨论上. [概述]目前国内研究Solr的人不多,而且大多是因为项目开发需要.Solr师承Lucene,为…
在搭建好solrCloud搜索集群后,通过编写基本的查询显示语句已经能够通过输入关键字查询到相应结果进行显示,但是在显示结果排序上以及不相关信息过滤问题上,如何制定合理的打分规则得到理想的结果集确实比较麻烦的.Solr本身的排序打分规则是继承自Lucene的文本相关度的打分即boost,这一套算法对于通用的提供全文检索的服务来讲,已经够用了,但是想要根据实际业务需求定制自己的打分机制来获取理想的查询结果,文本相关度的打分是远远不够的. 如何来定制实际业务需求的的排序打分规则(boost)呢?经过…
2.1.开发环境准备 2.1.1.数据库jar包 我们这里可以尝试着从数据库中采集数据,因此需要连接数据库,我们一直用MySQL,所以这里需要MySQL的jar包 2.1.2.MyBatis的jar包(可选) 从数据库采集数据就需要查询数据库,我们可以用jdbc原生的写DAO,还可以使用我们之前学习过的MyBatis动态代理DAO,因此可能需要MyBatis的jar包 2.1.3.数据库环境 数据库脚本:[资料\数据库\book.sql],创建一个lucene数据库(utf-8),然后导入这个脚…
2.信息检索 信息检索是计算机世界中非常重要的一种功能.信息检索不仅仅是指从数据库检索数据,还包括从文件.网页.邮件.用户手输入的内容中检索数据.通过怎样的高效方式将用户想要的信息快速提取出来,是计算机技术人员研究的重点方向之一. 2.1.数据分类 我们生活中的数据总体分为两种:结构化数据和非结构化数据. 结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等. 非结构化数据:指不定长或无固定格式的数据,如邮件,word文档等磁盘上的文件 2.2.结构化数据搜索方法 数据库就是最常见的结…
转自 http://topcat.iteye.com/blog/1293650 问题 lucene使用排序时会将被排序字段全部加入内存再进行排序,当多次使用不同字段进行排序时会造成OOM问题 解决方案 修改lucene源码在每次查询完成后将排序所使用的FieldCache里的缓存清空 分别需要修改两个工程 lucene2.4 solr1.3 Lucene2.4中要修改的类或接口有 org.apache.lucene.index.IndexReader 添加成员变量 public String m…
1.什么是solr solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文检索服务器.Solr提供了比lucene风味丰富的查询语言,同时实现了可配置,可扩展,并对索引,搜索性能进行优化. Solr可以独立运行,运行在Jetty,Tomcat等这些Servlet容器中,solr索引的实现方法很简单,用POST方法享Solr服务器发送一个藐视Field及其内容的XML文档,Solr根据XML文档添加,删除,更新索引.Solr搜索只需要发送HTTP GET请求,然后…
Asp.net MVC中的提供非常简单易用的数据验证解决方案. 通过System.ComponentModel.DataAnnotations提供的很多的验证规则(Required, StringLength等).但是常常有这样的需求,我们希望能够把model的验证规则,保存到数据或者xml文件中,而不是代码里, 这样的好处是,我们可以很方便的修改验证规则和错误消息,避免需要重新发布网站. 这篇文章,一起来看看是如何通过自定义ModelValidatorProvider来通过XML文件配置对于M…
一.安装环境 图1-1 Tomcat和Solr的版本 我本机目前使用的Java版本为JDK 1.8,因为Solr 4.9要求Java版本为1.7+,请注意. 二.Solr部署到Tomcat流程 图1-2 Tomcat安装目录 1.如图1-2所示,为Tomcat的解压目录: 图1-3 Tomcat首页 2.在目录E:\apache-tomcat-8.0.9\bin中,找到startup.bat文件,双击该文件,启动Tomcat服务器,等待几秒钟后,在浏览器中输入http://localhost:8…
[原文]http://blog.csdn.net/risingsun001/article/details/9068187 修改MVC3中的路由规则 在Global.asax.cs中,修改路由规则 原路由规则 routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default", // 路由名称 "{controller}/{action}/{id}", // 带…
Solr创建核的方法,简单粗暴 就是进入到solrhome中进行复制粘贴这个collection2 然后进入到conf中,修改一下name 然后从新启动tomcat…
在上篇MS SQL 排序规则总结中,大致就数据库服务器排序规则(或者叫数据库实例排序规则).数据库排序规则.列的排序规则粗浅的叙说了一遍,重点讲述了修改数据库服务器排序规则(数据库实例排序规则),其中对于数据库排序规则的修改只是粗略带过.其实相对而言,修改服务器排序规则(数据库实例排序规则)相对简单一些,修改数据库的排序规则就复杂多了,因为涉及到数据.SQL脚本等等,例如,一不小心,修改排序规则后,数据当中可能就会出现乱码: 另外,修改数据库排序规则麻烦的是要大量修改相关表的字段的排序规则,如果…
VS中新增的轻量级数据库LocalDB,有个这个,开发人员就不必再安装庞大的SQL server了,可以方便地测试运行小型项目:既然是轻量级数据库,它抛弃了庞大的身躯,功能上当然也会受到局限,其中之一就是它默认的排序规则,使用默认排序规则,从网站前台添加的中文数据在数据库中显示乱码或者变问号:这个问题困扰了我好几天时间,通过各种搜索,终于找到解决方案:特此转述,希望能帮到有同样困惑的您! 新建数据库默认排序规则为:SQL_Latin1_General_CP1_CI_AS,如果使用中文会出现乱码,…
订单详细内容页手动修改订单状态方法: 打开此文件:app\design\adminhtml\default\default\template\sales\order\view\history.phtml 34行位置为如下原本内容: <?php foreach ($this->getStatuses() as $_code=>$_label): ?> 修改为: <?php foreach (Mage::getSingleton('sales/order_config')->…
最近我一直在编写适用于Windows 10商店的游戏.这款游戏比较怕玩家用修改器改金钱,因为这种修改会导致某些内购失效并且损害公平性.于是我把自己见过的三种反修改器的方法给网友们介绍一下. 首先说明一下我总结的防止游戏作弊的理念: 1.预防修改,防患于未然,让可用的修改手段减少. 比如说,你让你的UWP在PC不可用,那么修改内存这个操作本身就变得十分艰难了. 用.NET Native编译(或者干脆用c++而不是.net语言),可有效防止反编译看你的加密和解密算法然后搜内存. 2.拦截修改,修改前…
用CREATE RULE语句创建规则 创建雇佣日期规则 hire_date_rule CREATE RULE hire_date_rule AS @hire_date>='1980-01-01' and @hire_date<=getdate() 创建性别规则sex_rule CREATE RULE sex_rule AS @sex in ('男','女') 创建评分规则grade_rule CREATE RULE grade_rule 创建字符规则my_character_rule Crea…
官网上一般只提供最新版本的下载,下面两个链接为所有历史版本的下载地址: lucene地址:archive.apache.org/dist/lucene/java/ solr地址:archive.apache.org/dist/lucene/solr/ 在Solr1.4.x的时候,Solr和Lucene是独立发布的,Solr一般会在Lucene发布新版本后跟进发布一个新的版本. 到了3.1的时候,两者代码做了合并,版本号统一了,并同时发布.…
一.为何开博客写<Lucene/Solr搜索引擎开发笔记> 本人毕业于2011年,2011-2014的三年时间里,在深圳前50强企业工作,从事工业控制领域的机器视觉方向,主要使用语言为C/C++:现就职于一家大型国企所属电子商务公司,主要使用语言为Java,负责公司新一代搜索引擎的开发工作,故开此系列来总结自己在Lucene/Solr上的学习历程,同时,也希望能给予对搜索引擎开发有兴趣的朋友一些帮助和启发. 二.Lucene和Solr简要介绍 Lucene是apache软件基金会4 jakar…
go2shell的安装与修改默认terminal方法   1. 安装go2shell后,打开finder的application文件夹,找到go2shell 2. 按住command,用鼠标将go2shell拖到finder的toolbar上 到这里安装设置完成.   如果要修改默认terminal,比如你想要在finder上点击go2shell,打开的是iterm2 而不是默认的terminal. 1. 打开finder , 点击go2shell 2. 在打开的terminal中,输入: op…
APM飞控修改数传模块方法 硬件 ARDUCOPTER第二代 数传模块(USB接口) 数传模块(telem接口) usb-ttl模块 修改方法 注意:APM固件版本和数传模块估计版本是分开的,但有一定的对应关系,APM的固件2.x版本应该对应数传模块的1.9版本,数传模块的1.7版本是给旧式的APM固件使用的.连接数传必须两端都使用同一个固件版本. 数传模块(USB接口): 把数传模块连接电脑 在电脑打开Mission Planner软件,分别选择 初始设置->可选硬件->Sik电台(数传)…
Linux下修改PATH的方法 1.直接在命令行里敲 PATH=$PATH:/path1:/path2:/pathN用户登出之后PATH恢复原样. 只是临时起作用. 2.修改~目录下bash_profile, cdvi .bash_profile找到PATH=$PATH:$HOME/bin这一行,直接在后面加:/path1:/path2就行.然后source .bash_profile这个只对当前用户生效 3.修改/etc/profile文件, vi /etc/profile在适当位置添加PAT…
这篇文章主要介绍了MySQL修改时区的方法,总结分析了三种常见的MySQL时区修改技巧,包括命令行模式.配置文件方式及代码方式,需要的朋友可以参考下 方法一:通过mysql命令行模式下动态修改 1.1 查看mysql当前时间,当前时区 > select curtime(); #或select now()也可以 +-----------+ | curtime() | +-----------+ | 15:18:10 | +-----------+ > show variables like &q…
CentOS修改用户密码方法 CentOS修改用户密码方法 1. 普通用户 a. 获取超级用户root权限 命令:su或者su -或者su - root b. passwd 用户名 2. 超级用户 a. 打开system-auth文件 命令:vi /etc/pam.d/system-auth b. 修改其中一行(设置最小密码长度为4): password    requisite     pam_cracklib.so try_first_pass retry=3 type= minlen=4…
一.修改MAC地址方法linux环境下:需要用 #ifconfig eth0 down 先把网卡禁用 再用ifconfig eth0 hw ether 1234567890ab 这样就可以改成功了要想永久改就这样在/etc/rc.d/rc.local里加上这三句(也可以在/etc/init.d/network里加下面三行)ifconfig eth0 downifconfig eth0 hw ether 1234567890ab ifconfig eht0 up 二.修改IP地址的方法#ifcon…
让策划也能轻松修改数据的方法:运用Excel2Json2Object插件将xml表格转为Object导入脚本 运用Excel2Json2Object插件将xml表格转为Object导入脚本 下载地址 https://pan.baidu.com/s/1m86B7Gk6Jt46rRfyAmrHng 提取码: ikvc 插件不支持 float 类型,浮点数请使用 double 类型 1.导入插件 导入Excel2Object.unitypackage 2.创建存储数据的Excel表格 ID Name…
本文转自:https://www.cnblogs.com/mracale/p/6064447.html 这篇文章主要介绍了MySQL修改时区的方法,总结分析了三种常见的MySQL时区修改技巧,包括命令行模式.配置文件方式及代码方式,需要的朋友可以参考下 方法一:通过mysql命令行模式下动态修改 1.1 查看mysql当前时间,当前时区 > select curtime(); #或select now()也可以 +-----------+ | curtime() | +-----------+…
Linux修改MAC地址方法 - Linux modifies MAC address method ifconfig wlan0 down ifconfig wlan0 hw ether MAC地址 ifconfig wlan0 up…
在windows 7 64位上安装Oracle 12c没有设定字符集,采用的是操作系统默认字符集:WE8MSWIN1252,将字符集修改为:ZHS16GBK.由于过程不可逆,首先需要备份数据库. 1.数据库全备 2.查询当前字符集 PARAMETER VALUE ------------------------------------------------------------ ---------------------------------------------------------…
前言 这篇文章和 tiankonguse 的个人网站里的文章保持同步. 很早之前,在 chrome 下修改 agent 的方法是使用 chrome 插件. 后来 chrome 的某一个版本中自带这个功能了. 在后来 chrome 的版本中又没有这个功能了. 所以现在我需要找到一个可以修改当前版本的 chrome 的 agent 的方法了. 正文 自带的修改agent的方法 搜索的第一个方法是讲的使用 chrome 自带的修改 agent 的功能. 在 在不使用扩展的情况下修改 Chrome 的…
摘自: http://www.cnblogs.com/badboy2008/articles/1145465.html MSSQL Server修改标识列方法   ----允许对系统表进行更新exec sp_configure 'allow updates',1reconfigure with overrideGO ----取消标识列标记update syscolumns set colstat = 0 where id = object_id('tablename') and colstat…