当前位置:文档之家› 使用mahout机器学习改进solr查询结果

使用mahout机器学习改进solr查询结果

使用mahout机器学习改进solr查询结果
使用mahout机器学习改进solr查询结果

solr技术方案

Solr技术方案 一用户需求 以前的互动平台只能对固定表的固定字段做like这样的数据库层面的索引,性能低下,用户体验很差,很难满足业务提出的简化搜索的需求。 需求原型: 业界通用的做全站搜索的基本上两种: 1 选择googleAPI,百度API做。同第三方搜索引擎绑定太死,无法满足后期业务扩展需要,而且全站的SEO做的也不是很好,对于动态的很多ajax请求需要做快照,所以暂时不采用。 2 选择现有成熟的框架。

这里我们选择使用solr。 Solr是一个基于Lucene的Java搜索引擎服务器。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括XML/XSLT 和JSON 格式)。它易于安装和配置,而且附带了一个基于HTTP 的管理界面。Solr已经在众多大型的网站中使用,较为成熟和稳定。Solr 包装并扩展了Lucene,所以Solr的基本上沿用了Lucene的相关术语。更重要的是,Solr 创建的索引与Lucene 搜索引擎库完全兼容。通过对Solr 进行适当的配置,某些情况下可能需要进行编码,Solr 可以阅读和使用构建到其他Lucene 应用程序中的索引。此外,很多Lucene 工具(如Nutch、Luke)也可以使用Solr 创建的索引。 这里我们主要需要以下几种功能: 1 可用性及成熟性。 2 中文分词。 3 词库与同义词的管理(比如我们使用最高的:股票代码)。 4 高亮显示。 5 方便的导入数据。 6 Facet的轻松配置 7 扩展性。 二Solr的体系结构 体系结构 Solr体系,功能模块介绍及配置。

以上是solr的架构图。具体应用时需要理解一下模块的作用及配置。 RequestHandler:接受请求,分发请求。另外也包含导入数据,如importhandler。UpdateHandlers –处理索引请求。 Search Components:作为handlder的成员变量。处理请求。 Facet:分类搜索 Tika:apache下处理文件的一个项目。 Filter,spelling :处理字符串 Http query/update Database/html importhandler 默认基本可以满足要求。如果不够则扩展相应的handler和component。

SolrCloud使用教程、原理介绍 我心动了

SolrCloud使用教程、原理介绍 发布于2013 年 8 月 24 日,属于搜索分类,7,446 浏览数 SolrCloud 是基于 Solr 和 Zookeeper 的分布式搜索方案,是正在开发中的 Solr4.0 的核心组件之一,它的主要思想是使用 Zookeeper 作为集群的配置信息中心。 它有几个特色功能:①集中式的配置信息②自动容错③近实时搜索④查询时自动负载均衡。

下面看看 wiki 的文档: 1、SolrCloud SolrCloud 是指 Solr 中一套新的潜在的分发能力。这种能力能够通过参数让你建立起一个高可用、 容错的 Solr 服务集群。当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud(solr 云)。 看看下面“启动”部分内容,快速的学会怎样启动一个集群。后面有 3 个快速简单的例子, 它们展现怎样启动一个逐步越来越复杂的集群。检出例子之后,需要翻阅后面的部分了解 更加细节的信息。 2、关于 SolrCores 和 Collections 的一点儿东西 对于单独运行的 Solr 实例,它有个东西叫 SolrCore(Solr.xml 中配置的),它是本质上独立的 索引块。如果你打算多个索引块,你就创建多个 SolrCores。当同时部署SolrCloud 的时, 独立的索引块可以跨越多个 Solr 实例。这意味着一个单独的索引块能由不同服务器设备上多个 SolrCore 的索引块组成。我们把组成一个逻辑索引块的所有 SolrCores 叫做一个独立 索引块儿(collection)。一个独立索引块是本质上一个独立的跨越多个 SolrCore 索引块的索 引块,同时索引块尽可能随着多余的设备进行缩放。如果你想把你的两个 SolrCore Solr 建 立成 SolrCloud,你将有 2 个独立索引块,每个有多个独立里的 SolrCores 组成。 3、启动 下载 Solr4-Beta 或更高版本。 如果你还没了解,通过简单的Solr 指南让自己熟悉Solr。注意:在通过指南了解云特点前,重设所有的配置和移除指南的文档.复制带有预先存在的 Solr 索引的例子目录将导致文档计数关闭Solr 内嵌使用了Zookeeper 作为集群配置和协调运作的仓储。协调考虑作为一个包 含所有 Solr 服务信息的分布式文件系统。 如果你想用一个其他的而不是 8983 作为 Solr 端口,去看下面’ Parameter Reference’部分下 的关于solr.xml 注解 例 A:简单的 2 个 shard 集群 这个例子简单的创建了一个代表一个独立索引块的两个不同的 shards 的两个 solr 服务组成

Solr总结-吐血总结

Solr调研总结 1. Solr 是什么? Solr它是一种开放源码的、基于Lucene Java 的搜索服务器,易于加入到Web 应用程序中。Solr 提供了层面搜索(就是统计)、命中醒目显示并且支持多种输出格式(包括XML/XSLT 和JSON等格式)。它易于安装和配置,而且附带了一个基于HTTP 的管理界面。可以使用Solr 的表现优异的基本搜索功能,也可以对它进行扩展从而满足企业的需要。Solr的特性包括: ?高级的全文搜索功能 ?专为高通量的网络流量进行的优化 ?基于开放接口(XML和HTTP)的标准 ?综合的HTML管理界面 ?可伸缩性-能够有效地复制到另外一个Solr搜索服务器 ?使用XML配置达到灵活性和适配性 ?可扩展的插件体系 2. Lucene 是什么? Lucene是一个基于Java的全文信息检索工具包,它不是一个完整的搜索应用程序,而是为你的应用程序提供索引和搜索功能。Lucene 目前是Apache Jakarta(雅加达)家族中的一个开源项目。也是目前最为流行的基于Java开源全文检索工具包。目前已经有很多应用程序的搜索功能是基于Lucene ,比如Eclipse 帮助系统的搜索功能。Lucene能够为文本类型的数据建立索引,所以你只要把你要索引的数据格式转化的文本格式,Lucene 就能对你的文档进行索引和搜索。

3. Solr vs Lucene Solr与Lucene 并不是竞争对立关系,恰恰相反Solr 依存于Lucene,因为Solr底层的核心技术是使用Lucene 来实现的,Solr和Lucene的本质区别有以下三点:搜索服务器,企业级和管理。Lucene本质上是搜索库,不是独立的应用程序,而Solr是。Lucene专注于搜索底层的建设,而Solr专注于企业应用。Lucene 不负责支撑搜索服务所必须的管理,而Solr负责。所以说,一句话概括Solr: Solr 是Lucene面向企业搜索应用的扩展。 Solr与Lucene架构图: Solr使用Lucene并且扩展了它! ?一个真正的拥有动态字段(Dynamic Field)和唯一键(Unique Key)的数据模式(Data Schema) ?对Lucene查询语言的强大扩展! ?支持对结果进行动态的分组和过滤 ?高级的,可配置的文本分析 ?高度可配置和可扩展的缓存机制 ?性能优化

solr使用手册

Solr全文检索服务 一、企业站内搜索技术选型 ?在一些大型门户网站、电子商务网站等都需要站内搜索功能,使用传统的数据库查 询方式实现搜索无法满足一些高级的搜索需求,比如:搜索速度要快、搜索结果按 相关度排序、搜索内容格式不固定等,这里就需要使用全文检索技术实现搜索功能。 1.使用Lucene实现?什么是Lucene ? ?Lucene是一个基于Java的全文信息检索工具包,它不是一个完整 的搜索应用程序,而是为你的应用程序提供索引和搜索功能。Lucene 目前是Apache Jakarta(雅加达) 家族中的一个开源项目。也是目前 最为流行的基于Java开源全文检索工具包。目前已经有很多应用程 序的搜索功能是基于Lucene ,比如Eclipse 帮助系统的搜索功能。 Lucene能够为文本类型的数据建立索引,所以你只要把你要索引的 数据格式转化的文本格式,Lucene 就能对你的文档进行索引和搜索 ●单独使用Lucene实现站内搜索需要开发的工作量较大,主要表现在:索 引维护、索引性能优化、搜索性能优化等,因此不建议采用。 2.使用Google或Baidu接口? ●通过第三方搜索引擎提供的接口实现站内搜索,这样和第三方引擎系统依 赖紧密,不方便扩展,不建议采用。 3.使用Solr实现? Solr是什么? ?Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于 Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语 言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。 ?Solr可以独立运行,运行在Jetty、Tomcat等这些Servlet容器中, Solr 索引的实现方法很简单,用 POST 方法向 Solr 服务器发送一 个描述 Field 及其内容的 XML 文档,Solr根据xml文档添加、删 除、更新索引。Solr 搜索只需要发送 HTTP GET 请求,然后对 Solr 返回Xml、json等格式的查询结果进行解析,组织页面布局。Solr

solr查询语法

solr查询语法 Solr通过查询分析器的插件框架支持多种查询语法。在现有的分析器实现的插件,在Javadoc中看到qparserplugin的所有子类,和在QueryParser wiki页面查看。 指定查询分析器 用户可以指定在大多数地方,接受使用localparams语法查询字符串查询类型,例如:下面的查询字符串指定Lucene/Solr查询的默认操作”AND“和默认field的“text”: q={!lucene q.op=AND df=text}myfield:foo +bar –baz 在标准的SOLR搜索处理程序,该deftype参数可用于指定主查询的默认类型(IE:q参数)但它只影响主查询——所有其他查询参数的默认类型仍将Lucene。 q={!func}等效于solr标准查询的defType=func&q=popularity Default QParserPlugin: LuceneQParserPlugin 标准查询分析器语法Sol分析器是的Lucene的查询语法的一个超集,某些字符特殊和那些字符如果你想 与Lucene查询分析器的差异 在solr 中查询差异报告: 1、范围查询[ a TO z ],前缀查询a*,和通配符查询*b是常数评分(所有匹配的文件得到相同的分数)。 评分因素TF IDF,index boost,是没有用的。不限制terms次数的(如在Lucene的过去的版本)

2、A*可用于任一或两个端点来指定一个开放的范围查询。 field:[* TO 100]查询所有小与等于100的 field:[100 TO *]查询所有大于等于100的 field:[* TO *]查询所有文档 3、纯消极的查询(所有条款禁止)是允许的。 -inStock:false查询isStock字段值不是false的 -field:[* TO *]查询不在field字段内的值 4、函数查询 _val_:myfield _val_:"recip(rord(myfield),1,2,3)" 4、嵌套的任何类型的查询分析器查询支持(通过qparserplugin)。引用通常要封装嵌套查询如果它包含 保留字符。 例如:_query_:"{!dismax qf=myfield}how now brown cow" 虽然不是专门的语法差异,请注意如果你使用Solr”DateField”型,在这些领域的任何查询(典型的范围查询)应使用完整的ISO 8601的语法,,或datemath语法来获得相关数据。 ?timestamp:[* TO NOW] ?createdate:[1976-03-06T23:59:59.999Z TO *] ?createdate:[1995-12-31T23:59:59.999Z TO 2007-03-06T00:00:00Z]?pubdate:[NOW-1YEAR/DAY TO NOW/DAY+1DAY] ?createdate:[1976-03-06T23:59:59.999Z TO 1976-03-06T23:59:59.999 Z+1YEAR] ?createdate:[1976-03-06T23:59:59.999Z/YEAR TO 1976-03-06T23:59:5 9.999Z] dismax和edismax查询分析器 (E)的dismax查询分析器提供了查询时间字段级升压的粒度,更少的特殊语法。(E)dismax通常是最好的第一选择查询分析器面临Solr应用的用户。(e)在这里详细描述了dismax处理参数:dismaxqparserplugin和extendeddismax。 注:特殊字符转义网址 请注意,在Solr查询语法的许多特征(最显着的加号:“+”)是在URL中的特殊字符,所以在手动构建请

solr中文

solr中文:使用 Apache Solr 实现更加灵巧的搜索 第 2 部分: 用于企业的 Solr 疯狂代码 https://www.doczj.com/doc/991059400.html,/ ?:http:/https://www.doczj.com/doc/991059400.html,/DeveloperUtil/Article54041.html 本文举例源代码或素材下载 在本系列 第 1 部分我为您介绍了 Apache Solr种基于 HTTP 开源搜索服务器它可以很容易地和多种Web 应用集成我展示了 Solr 最基本功能包括索引、搜索和浏览介绍了 Solr 模式并解释了它在配置 Solr 功能方面作用在本部分中我将通过列举 Solr 作为大型生产环境中理想解决方案时所具备特性来完成对 Solr 介绍涵盖主题包括管理、缓存Cache、复制和可扩展性 请参阅 第 1 部分 来获得安装和设置 Solr 指导 配置和管理 本部分介绍了可用于监视和控制 Solr 功能性诸多选项首先来看看 Solr Administration Start Page该页可在 http://localhost:8080/solr/admin/ 找到旦找到了起始页在继续的前请务必花些时间熟悉下上面各种菜单选项在起始页中根据这些选项所提供信息区别对它们进行了分组: Solr 给出了有关这种活动模式(请参见 第 1 部分)、配置以及当前部署统计数据详细信息 App server 给出了容器当前状态包括 threading 信息以及所有 Java 系统属性列表 Make a Query 提供了调试查询所需快捷界面以及到功能更加全面查询界面链接 Assistance 提供了到外部资源有用链接以便理解和解决使用 Solv 可能遇到些问题 如下章节详细介绍了这些菜单选项并重点突出了其中管理特性 要使用 Solr 配置选项可以单击页上 CONFIG 链接这会显示当前 solrconfig.xml 文件您可以在 举例应用dw-solr/solr/conf 目录找到该文件现在让我们先来看看和索引和查询处理有关些常见配置选项而和 缓存Cache、复制 和 扩展 Solr 有关配置选项则留到后面章节再介绍 索引配置 Index 标记段定义了控制 Solr 索引处理低水平 Lucene 原因Lucene 基准发布(位于 Lucene 源代码contrib/benchmark 的下)包含了很多可用来对这些原因更改效果进行基准测试工具此外请参阅 参考资料 节中

高性能搜索solr 学习笔记 分享

高性能搜索SOLR 学习笔记分享 一.Query参数 1.CoreQueryParam查询的参数 1)q: 查询字符串,必须的。 2)q.op: 覆盖schema.xml的defaultOperator(有空格时用"AND"还是用"OR"操作逻 辑),一般默认指定。 3)df: 默认的查询字段,一般默认指定。 4)qt:query type,指定查询使用的Query Handler,默认为“standard”。 5)wt:writer type。指定查询输出结构格式,默认为“xml”。在solrconfig.xml中定义 了查询输出格式:xml、json、python、ruby、php、phps、custom。 6)echoHandler:是否在查询结果中显示使用的Query Handler名称。 7)echoParams:是否显示查询参数。none:不显示;explicit:只显示查询参数; all:所有,包括在solrconfig.xml定义的Query Handler参数。 8)indent - 返回的结果是否缩进,默认关闭,用indent=true|on 开启,一般调试 json,php,phps,ruby输出才有必要用这个参数。 9)version - 查询语法的版本,建议不使用它,由服务器指定默认值。 https://www.doczj.com/doc/991059400.html,monQueryParameters 1)sort:排序,格式:sort=+[,+]…。 示例:(inStock desc, price asc)表示先“inStock”降序, 再“price”升序, 默认是相关性降序。。 2)start:用于分页定义结果起始记录数,默认为0。 3)rows:用于分页定义结果每页返回记录数,默认为10。 4)fq:filter query。使用Filter Query可以充分利用Filter Query Cache,提高检索性 能。作用:在q查询符合结果中同时是fq查询符合的,例如: q=mm&fq=date_time:[20081001 TO 20091031],找关键字mm,并且date_time 是20081001到20091031之间的。 5)fl:field list。指定返回结果字段。以空格“ ”或逗号“,”分隔。 6)debugQuery:设置返回结果是否显示Debug信息。 7)explainOther:设置当debugQuery=true时,显示其他的查询说明。 8)defType:设置查询解析器名称。 9)timeAllowed:设置查询超时时间。 10)omitHeader:设置是否忽略查询结果返回头信息,默认为“false”。

Solr开发指南

Solr 全文检索技术

1.Solr介绍 15 2.Solr安装配置-SolrCore配置 15 3.Solr安装配置-Solr工程部署 10 4.Solr安装配置-Solr工程测试 15 5.Solr安装配置-多SorlCore配置 10 6.Solr入门--schema 20 7.Solr入门-安装中文分词器 15 8.Solr入门-自定义业务系统Field 20 9.Solr入门-SolrJ介绍10 10.Solr入门-SolrJ索引维护 20 11.Solr入门-数据导入处理器20 12.Solr入门-搜索语法 10 13.Solr入门-SolrJ-搜索 20 14.Solr案例-需求分析 10 15.Solr案例-架构设计 15 16.Solr案例-Service 20 17.Solr案例-Controller 20 18.Solr案例-主体调试 20 19.Solr案例-功能完善

1【Solr介绍】 1.1S olr是什么 Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。 Solr可以独立运行,运行在Jetty、Tomcat等这些Servlet容器中,Solr 索引的实现方法很简单,用 POST 方法向 Solr 服务器发送一个描述 Field 及其内容的 XML 文档,Solr根据xml文档添加、删除、更新索引。Solr 搜索只需要发送 HTTP GET 请求,然后对 Solr 返回Xml、json等格式的查询结果进行解析,组织页面布局。Solr不提供构建UI的功能,Solr提供了一个管理界面,通过管理界面可以查询Solr的配置和运行情况。 1.2S olr与Lucene的区别 Lucene是一个开放源代码的全文检索引擎工具包,它不是一个完整的全文检索引擎,Lucene提供了完整的查询引擎和索引引擎,目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者以Lucene为基础构建全文检索引擎。 Solr的目标是打造一款企业级的搜索引擎系统,它是一个搜索引擎服务,可以独立运行,通过Solr可以非常快速的构建企业的搜索引擎,通过Solr也可以高效的完成站内搜索功能。 1.3Solr下载 从Solr官方网站(https://www.doczj.com/doc/991059400.html,/solr/ )下载Solr4.10.3,根据Solr的运行环境,Linux下需要下载lucene-4.10.3.tgz,windows下需要下载lucene-4.10.3.zip。 Solr使用指南可参考:https://https://www.doczj.com/doc/991059400.html,/solr/FrontPage。

【黑马程序员】面试题-利用solr实现商品的搜索功能

【黑马程序员】面试题-利用solr实现商品的搜索功 能 问题提出:当我们访问购物网站的时候,我们可以根据我们随意所想的内容输入关键字就可以查询出相关的内容,这是怎么做到呢?这些随意的数据不可能是根据数据库的字段查询的,那是怎么查询出来的呢,为什么千奇百怪的关键字都可以查询出来呢? 答案就是全文检索工具的实现,luncence采用了词元匹配和切分词。举个例子:北京天安门------luncence切分词:北京京天天安安门等等这些分词。所以我们搜索的时候都可以检索到。 有一种分词器就是ik中文分词器,它有细粒度切分和智能切分,即根据某种智能算法。 这就使用solr的最大的好处:检索功能的实现。 使用步骤; (1)solr服务器搭建,因为solr是用java5开发的,所以需要jdk和tomcat。搭建部署 (2)搭建完成后,我们需要将要展示的字段引入solr的库中。配置sring与solr结合,工程启动的时候启动solr (3)将数据库中的查询内容导入到solr索引库,这里使用的是solrj的客户端实现的。具体使用可以参考api (4)建立搜索服务,供客户端调用。调用solr,查询内容,这中间有分页功能的实现。solr高亮显示的实现。 (5)客户端接收页面的请求参数,调用搜索服务,进行搜索。

业务字段判断标准: 1、在搜索时是否需要在此字段上进行搜索。例如:商品名称、商品的卖点、商品的描述 (这些相当于将标签给了solr,导入商品数据后,solr对这些字段的对应的商品的具体内容进行分词切分,然后,我们就可以搜索到相关内容了) 2、后续的业务是否需要用到此字段。例如:商品id。 需要用到的字段: 1、商品id 2、商品title 3、卖点 4、价格 5、商品图片 6、商品分类名称 7、商品描述 Solr中的业务字段: 1、id——》商品id 其他的对应字段创建solr的字段。 [AppleScript] 纯文本查看复制代码 ? 01 02 03 04 05 06 07

solr中文文档

SOLR技术文档 1.了解lucene 原理,全文搜索概念,参考(https://www.doczj.com/doc/991059400.html,/category/30179) .建立 自己的索引库. 2.了解solr参考(https://www.doczj.com/doc/991059400.html,/developerworks/cn/java/j-solr1/, https://www.doczj.com/doc/991059400.html,/developerworks/cn/java/j-solr2/).并下载实例程序. 3.搭建SOLR服务器 3.1官方下载 apache-solr-1.3.0.zip 和tomcat5.5 3.2将apache-solr-1.3.0\example\webapps\solr.war部署有 tomcat 下 3.3设置 solr 环境变量 apache-tomcat-5.5.26\conf\Catalina\localhost\下新建solr.xml文 件内容如下: 设置e:/tomcat/solr为solr主目录,建立文件夹. 3.4将apache-solr-1.3.0\example\solr 下所有文件复制到e:/tomcat/solr下 3.5启动 tomcat -> 浏览http://localhost:8080/solr/admin/能访问Solr Admin 页面说明 Solr 服务器设置成功. 4.为Solr 创建索引库 4.1在 e:/tomcat/solr 目录下新建名为data 的文件夹,再在data 下新建index名为文件 夹 4.2将lucene 创建好的索引放入e:/tomcat/solr/data/index 下 5.Solr 索引设置 5.1在e:/tomcat/solr /conf 下solrconfig.xml, schema.xml <2>中的技术文档有详细说明 5.2中文支持,如果你的索引要支持中文搜索的话,在此推荐庖丁分词,参考 (https://www.doczj.com/doc/991059400.html,/topic/110148) schema.xml 设置如下: 中文词组分词 创建索引时 搜索时 中文单词分词

Solr文档

Solr 全文检索服务 1企业站内搜索技术选型 在一些大型门户网站、电子商务网站等都需要站内搜索功能,使用传统的数据库查询方式实现搜索无法满足一些高级的搜索需求,比如:搜索速度要快、搜索结果按相关度排序、搜索内容格式不固定等,这里就需要使用全文检索技术实现搜索功能。

1.1单独使用Lucene实现 单独使用Lucene实现站内搜索需要开发的工作量较大,主要表现在:索引维护、索引性能优化、搜索性能优化等,因此不建议采用。 1.2使用Google或Baidu接口 通过第三方搜索引擎提供的接口实现站内搜索,这样和第三方引擎系统依赖紧密,不方便扩展,不建议采用。 1.3使用Solr实现 基于Solr实现站内搜索扩展性较好并且可以减少程序员的工作量,因为S olr提供了较为完备的搜索引擎解决方案,因此在门户、论坛等系统中常用此方案。 2什么是Solr 什么是Solr Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。 Solr可以独立运行,运行在Jetty、Tomcat等这些Servlet容器中,Solr 索引的实现方法很简单,用 POST 方法向 Solr 服务器发送一个描述 Field 及其内容的 XML 文档,Solr根据xml文档添加、删除、更新索引。Solr 搜索只需要发送 HTTP GET 请求,然后对 Solr 返回Xml、json等格式的查询结果进行解析,组织页面布局。Solr不提供构建UI 的功能,Solr提供了一个管理界面,通过管理界面可以查询Solr的配置和运行情况。

solrconfig.xml配置详解

solrconfig.xml配置详解 solrconfig.xml包含了solr中大部分的配置信息。 Solrconfig.xml, schema.xml 和所有的配置文件都在solr的conf目录下,都是可以编辑的,除了admin UI。编辑admin ui请参加【编辑solr的admin ui配置文件.doc】。 Solrconfig.xml中的简单注释可以源代码中找到。 lib 指令可以在你的solrconfig.xml中指定。 dataDir parameter 除了默认目录外,指定索引存放位置,默认索引数据放在slor home下,如果使用replication ,这应该可以匹配replication 配置,如果此目录并不是绝对的,那么它是相对于你的目录中,是从您启动Solr的位置开始寻找。 说明:solr4.0以后,改变的值后,通过reload重新载入。 codecFactory 编解码器的工厂允许你使用自定义编解码器架构。例如:如果你想定义每

indexConfig 组件 这些设置控制低层次的行为的索引。详细信息请参阅示例中的solrconf.xml注释。 说明:在solr4.0以后,这个组件也是活的装置,通过reload可动态加载。 注意:在3.6版本之前,有两个不同的部分叫< indexdefaults >和,而现在这一段代替 。你仍然可以使用旧的配置为在3.6和4。x,但需要迁移时,撞lucenematchversion。迁移的最简单的办法是先例<indexconfig >部分都有注释,使用缺省值,然后自定义如果必要的话。 Update Handler 组件

中科融研R3企业搜素产品常用检索语法

R3 企业搜索产品常用检索语法 北京中科融研科技有限公司 2013年9月

Copyright Notice 版权说明 本文档是北京中科融研科技有限公司的产品文档,受版权法和国际公约的保护。中科融研不会对本手册中信息的任何变更做出通知,不对涉及北京中科融研科技有限公司的内容做出任何承诺。然而,中科融研一直在努力使本文档中所包含的信息更加准确,中科融研不对本文档中所出现的错误和冗余信息承担责任。 对于因使用本文档中所包含的信息所导致的任何直接的、偶然的、或者因果的损失,中科融研不承担任何责任。 只有明确接受最终用户许可协议的用户才被许可使用在本文档所提及的拥有版权的软件,在使用软件之前应该仔细阅读许可协议。非经公司授权任何人或单位不得以任何电子、机械、光学、化学、手工、或者其他形式和手段将本文档的任何内容在一个系统中复制、传播、存储、或者翻译成任何人类语言和计算机语言。 本文档可为演示目的而使用虚拟的姓名;对任何实际存在的个人、公司或者机构姓名(名称)的使用纯属巧合。

1 检索参数 q: 查询字符串,必不可少的参数 df:默认的查询字段,一般默认指定 wt:指定输出的结构格式,默认为"xml ",也可以是json、python、ruby、php、phps、custom q.op:有空格时检索的默认逻辑关系,值为AND 或者 OR sort:排序。格式为: sort=+,+... 示例:sort=date desc,price asc 表示先按 date 降序,再按 price 升序。 默认是相关行降序排列。 start:用于分页定义结果起始记录数,默认为0 rows:用于分页定义每页返回的记录数,默认为10 fq:filter query。使用FitlerQuery进行指定范围的过滤查询,提高检索效率。作用:在q查询符合结果中同时是fq查 询符合的。例如:q=mm&fq=date_time:[20081001TO 20091031],找关键字mm,并且date_time是20081001到 20091031之间的 fl:指定返回结果的字段,多个之间用逗号或者空格隔开

银河麒麟服务器操作系统-Solr适配手册

银河麒麟服务器操作系统Solr 软件适配手册

目录 目录................................................................... I 1概述 (2) 1.1系统概述 (2) 1.2环境概述 (2) 1.3SOLR 软件简介 (2) 1.4SOLR 优点 (2) 1.5SOLR 架构及原理 (3) 1.5.1全文检索 (3) 1.5.2索引创建和搜索过程 (3) 2SOLR 软件适配 (4) 1)下载并解压SOLR (4) 2)下载TOMCAT (4) 3)准备依赖包 (4) 4)配置SOLRHOME (5) 5)配置TOMCAT (5) 3验证SOLR 部署 (6)

1概述 1.1系统概述 银河麒麟服务器操作系统主要面向军队综合电子信息系统、金融系统以及电力系统等国家关键行业的服务器应用领域,突出高安全性、高可用性、高效数据处理、虚拟化等关键技术优势,针对关键业务构建的丰富高效、安全可靠的功能特性,兼容适配长城、联想、浪潮、华为、曙光等国内主流厂商的服务器整机产品,以及达梦、金仓、神通、南大通用等主要国产数据库和中创、金蝶、东方通等国产中间件,满足虚拟化、云计算和大数据时代,服务器业务对操作系统在性能、安全性及可扩展性等方面的需求,是一款具有高安全、高可用、高可靠、高性能的自主可控服务器操作系统。 1.2环境概述 1.3solr 软件简介 Solr 是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service 的API 接口。用户可以通过http 请求,向搜索引擎服务器提交一定格式的XML 文件,生成索引;也可以通过Http Get 操作提出查找请求,并得到XML 格式的返回结果。 Solr 是一个高性能,采用Java5 开发,基于Lucene 的全文搜索服务器。同时对其进行了扩展,提供了比Lucene 更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。 文档通过Http 利用XML 加到一个搜索集合中。查询该集合也是通过http 收到一个XML/JSON 响应来实现。它的主要特性包括:高效、灵活的缓存功能,垂直搜索功能,高亮显示搜索结果,通过索引复制来提高可用性,提供一套强大Data Schema 来定义字段,类型和设置文本分析,提供基于Web 的管理界面等。 1.4Solr 优点 a.高级的全文搜索功能;

Solr查询,Solr语法,Solr更新分析

一.基本查询 q –查询字符串,必须的。 fl –指定返回那些字段内容,用逗号或空格分隔多个。 start –返回第一条记录在完整找到结果中的偏移位置,0开始,一般分页用。 rows –指定返回结果最多有多少条记录,配合start来实现分页。 sort –排序,格式:sort=+[,+]… 。示例:(inStock desc, price asc)表示先“inStock” 降序, 再“price” 升序,默认是相关性降序。 wt – (writer type)指定输出格式,可以有xml, json, php, phps, 后面solr 1.3增加的,要用通知我们,因为默认没有打开。 fq –(filter query)过虑查询,作用:在q查询符合结果中同时是fq查询符合的,例如:q=mm&fq=date_time:[20081001 TO 20091031],找关键字mm,并且date_time是20081001到20091031之间的。 q.op –覆盖schema.xml的defaultOperator(有空格时用”AND”还是用”OR”操作逻辑),一般默认指定 df –默认的查询字段,一般默认指定 qt –(query type)指定那个类型来处理查询请求,一般不用指定,默认是standard。 - 排除在要排除的词前加上“-” (不包含”号) 号 其它 indent –返回的结果是否缩进,默认关闭,用indent=true|on 开启,一般调试json,php,phps,ruby输出才有必要用这个参数。 version –查询语法的版本,建议不使用它,由服务器指定默认值。 [Solr的检索运算符] “:” 指定字段查指定值,如返回所有值*:*2 “?”2表示单个任意字符的通配 “*” 表示多个任意字符的通配(不能在检索的项开始使用*或者?符号)2 “~”2表示模糊检索,如检索拼写类似于”roam”的项这样写:roam~将找到形如foam和roams的单词;roam~0.8,检索返回相似度在0.8以上的记录。 2邻近检索,如检索相隔10个单词的”apache”和”jakarta”,”jakarta apache”~10 “^”2控制相关度检索,如检索jakarta apache,同时希望去让”jakarta”的相关度更加好,那么在其后加上”^”符号和增量值,即jakarta^4 apache 布尔操作符AND、||2 布尔操作符OR、2&& 布尔操作符NOT、!、-2(排除操作符不能单独与项使用构成查询) “+” 存在操作符,要求符号”+”后的项必须在文档相应的域中存在2 ( ) 用于构成子查询2 2 [] 包含范围检索,如检索某时间段记录,包含头尾,date:[200707 TO 200710] {}2不包含范围检索,如检索某时间段记录,不包含头尾 date:{200707 TO 200710} ” 转义操作符,特殊字符包括+ –& | ! ( ) { } [ ] ^ ” ~ * ? : “ 二.高亮 hl-highlight,h1=true,表示采用高亮。可以用h1.fl=field1,field2 来设定高亮显示的字段。

全文检索使用说明文档

Solr4.7使用说明文档 一:使用流程 1.Solr 是一种可供企业使用的、基于Lucene 的搜索服务器. 2.apache官方网站下载solr并解压,包括Solr工程例子.解压文件如下图1.按说明配置 仓库名称. 3.创建Solr工程,在WEB/IF下的config.properties文件中配置访问本地磁盘 中Solr仓库的访问路径: (eg:documentSolrUrl=http://localhost:8066/SENATOR-Sol r/document/) 4.在Solr工程web.xml配置过滤器等. 在src目录下创建service接口.实现类(在该类中编写创建,搜索和删除索引逻辑代码),以及hessian接口实现类. 5作为后台被其他系统调用,配置hessian配置文件. 5.在其他系统中如果用到全文检索 (1).配置前台hessian配置文件,保证调用到Solr工程中方法. (2).在上传文件时添加对应索引至仓库.修改时删除原有文件索引,添加新 的索引.删除文件时按照ID删除索引. 6.前台工程中配置Hessian文件.调用Solr工程中查询方法按关键字检索, 6.Solr配置 在本地磁盘新建Solr配置文件夹,比如D:/solr_config。此文件夹目录结构如图 core0文件夹相当于数据库,用来存储索引。dic extract文件夹存放Solr配置jar包,不用更改。core0/conf目录下有两个配置文件如图 schema.xml文件用来配置要存储的索引字段,solrconfig.xml是索引查询配置solr.xml用来引入要使用的索引数据库,结构如图

使用solr搭建你的全文检索

使用solr搭建你的全文检索 Solr 是一个可供企业使用的、基于 Lucene 的开箱即用的搜索服务器。对Lucene不熟?那么建议先看看下面两篇文档: 实战Lucene,第 1 部分: 初识 Lucene:https://www.doczj.com/doc/991059400.html,/developerworks/cn/java/j-lo-lucene1/ 用Lucene加速Web搜索应用程序的开发:https://www.doczj.com/doc/991059400.html,/developerworks/cn/web/wa-lucene2/ 一、 solr介绍 solr是基于Lucene Java搜索库的企业级全文搜索引擎,目前是apache的一个项目。它的官方网址在https://www.doczj.com/doc/991059400.html,/solr/。solr需要运行在一个servlet 容器里,例如tomcat5.5。solr 在lucene的上层提供了一个基于HTTP/XML的Web Services,我们的应用需要通过这个服务与solr 进行交互。 二、 solr安装和配置 关于solr的安装和配置,这里也有两篇非常好的文档,作者同时也是 Lucene Java 项目的提交人和发言人: 使用Apache Solr实现更加灵巧的搜索: https://www.doczj.com/doc/991059400.html,/developerworks/cn/java/j-solr1/index.html https://www.doczj.com/doc/991059400.html,/developerworks/cn/java/j-solr2/index.html 下面主要说说需要注意的地方。 Solr的安装非常简单,下载solr的zip包后解压缩将dist目录下的war文件改名为solr.war直接复制到tomcat5.5的webapps目录即可。注意一定要设置solr的主位置。有三种方法。我采用的是在tomcat里配置java:comp/env/solr/home的一个JNDI指向solr的主目录(example目录下),建立/tomcat55/conf/Catalina/localhost/solr.xml文件。

相关主题
文本预览
相关文档 最新文档