随笔分类 -  搜索引擎

一般指Solr或ES等相关基于Lucene的搜索组件
摘要:一.简介 拼写检查是个不错的功能,不过还可以根据用户的输入给出建议查询词,从最开始就避免拼写错误。在移动端中“胖手指失误”是很常见的。自动建议就能发挥很大的作用。 效果如下: 一般情况下,自动建议功能需要满足两个要求: 1.速度快。一个笨重的输入方案不能跟上用户的输入节奏,没有比这更让人恼火的了。建 阅读全文
posted @ 2020-07-01 20:21 云山之巅 阅读(608) 评论(0) 推荐(0) 编辑
摘要:一.拼写检查常用场景 1.查询包括一个或多个拼写错误的词,导致结果中得到不相关的内容。如果查询建议可用,搜索引擎应自动执行查询建议,向用户显示一条消息,如“显示的是xxx的搜索结果”或“仍然搜索xxx”。 2.查询包括罕见词,没有返回什么搜索结果。与此同时,存在可用的查询建议,并且能够得到多一些搜索 阅读全文
posted @ 2020-06-13 17:16 云山之巅 阅读(473) 评论(0) 推荐(0) 编辑
摘要:一.高亮简介 大多数的搜索应用都存在类似的情况,那就是搜索结果显示的屏幕空间有限。如果文档很短并可以在结果列表中显示全部内容,对屏幕空间显示就不会构成太大的问题。但大多数情况下都只能显示每个结果文档的一小部分。这就提出了一个问题:如何决定结果文档中显示哪一部分?理想情况下,应该是基于各片段与用户查询 阅读全文
posted @ 2020-05-11 10:49 云山之巅 阅读(1433) 评论(0) 推荐(0) 编辑
摘要:一.选择响应格式 XML是Solr的默认响应格式。从Solr的角度看,什么样的响应格式并不重要。Solr可以返回XML、JSON、Ruby、Python、PHP、二进制Java等,甚至是自定义格式。使用wt参数修改响应格式。Solr的wt参数的可用格式如下: 当需要更改Solr的响应格式时,需要在请 阅读全文
posted @ 2020-04-26 18:47 云山之巅 阅读(664) 评论(0) 推荐(0) 编辑
摘要:一.简介 Solr的函数可以动态计算每个文档的值,而不是返回在索引阶段对应字段的静态数值集。函数查询是一类特殊的查询,它可以像关键词一样添加到查询中,对所有文档进行匹配并返回它们的函数计算值作为文档得分。使用函数查询,函数计算结果将用于修改相关度得分或用于搜索结果的排序。在应用程序层,函数计算的结果 阅读全文
posted @ 2020-04-17 11:30 云山之巅 阅读(2031) 评论(1) 推荐(0) 编辑
摘要:一.字段查询解析器 字段查询解析器在指定字段中搜索词项或短语,可以使用该字段定义的任何文本分析方式。f参数指明要进行词项或短语搜索的字段,语法如下: {!field f=myfield}hello world 该语法与使用Lucene查询解析器搜索短语myfield:"hello world"是等价 阅读全文
posted @ 2020-03-21 08:56 云山之巅 阅读(497) 评论(0) 推荐(0) 编辑
摘要:一.简介 Lucene查询解析器语法支持创建任意复杂的布尔查询,但还有一些缺点,它不是用户查询处理的理想解决方案。这里面最大的问题是Lucene查询解析器的语法要求严格,一旦破坏就会抛出异常。指望用户在输入关键词时能够理解Lucene查询语法并始终能输入完美的查询表达式,这显然是不合理的。这意味着, 阅读全文
posted @ 2020-03-02 16:03 云山之巅 阅读(1295) 评论(1) 推荐(0) 编辑
摘要:一.简介 大多数查询都使用 了标准的Solr语法。这种语法是Solr最常见的,由默认查询解析器负责处理。Solr的默认查询解析器是Lucene查询解析器【LuceneQParserPlugin类实现】。Lucene查询解析器全面支持Lucene语法及Solr的一些专用扩展。 二.Lucene查询解析 阅读全文
posted @ 2020-02-22 17:35 云山之巅 阅读(1023) 评论(0) 推荐(0) 编辑
摘要:一.简介 Solr的搜索主要由两个操作组成:找到与请求参数相匹配的文档;对这些文档进行排序,返回最相关的匹配文档。默认情况下,文档根据相关度进行排序。这意味着,找到匹配的文档集之后,需要另一个操作来计算每个匹配文档的相关度得分。 二.fq和q参数 为有效地查找匹配的文档和计算文档的相关度得分,Sol 阅读全文
posted @ 2020-02-15 11:36 云山之巅 阅读(826) 评论(0) 推荐(0) 编辑
摘要:一.Solr请求概念 Solr最常见的请求类型是在Solr索引中查找相关文档的查询【query】。除此之外,Solr还可以处理许多不同类型的请求。所有的请求基本上都是通过请求处理器提交给Solr。搜索处理器【search handler】是查询处理的默认请求处理器,通过调用一个或多个搜索组件,每个组 阅读全文
posted @ 2020-02-03 15:08 云山之巅 阅读(362) 评论(0) 推荐(0) 编辑
摘要:一.概述 Solr文本分析消除了索引词项与用户搜索词项之间的语言差异,让用户在搜索buying a new house时能找到类似的内容,例如:purchasing a new home这样的文档。如果搭配恰当,文本分析就能允许用户使用自然语言进行搜索,而无需考虑搜索词项的所有可能形式。毕竟谁也不想 阅读全文
posted @ 2020-01-08 09:47 云山之巅 阅读(1085) 评论(0) 推荐(0) 编辑
摘要:一.索引存储 当文档提交到索引之后,directory目录组件会将它们写入到持久化存储器。Solr的目录组件具有以下重要特点: 1.隐藏持久存储的读写细节,例如,将文档写入到磁盘或通过JDBC在数据库中存储文档。 2.实现特定的存储锁定机制,防止索引出错。例如,在操作系统级别上基于文件系统的存储锁定 阅读全文
posted @ 2019-12-07 18:52 云山之巅 阅读(418) 评论(0) 推荐(0) 编辑
摘要:一.索引提交 当一个文档被添加到Solr中,但没有提交给索引之前,这个文档是无法被搜索的。换句话说,从查询的角度看,文档直到提交之后才是可见的。Solr有两种类型的提交:软提交和正常提交【也称硬提交】。 1.正常提交 Solr正常提交是将所有未提交的文档写入磁盘,并刷新一个内部搜索器组件,让新提交的 阅读全文
posted @ 2019-12-01 20:17 云山之巅 阅读(836) 评论(0) 推荐(0) 编辑
摘要:一.启动机制 Solr作为一个Java Web应用默认运行在Jetty上,使用全局Java属性【solr.solr.home】来定位配置文件的根目录。在启动时,Solr会扫描主目录下包含core.properties文件的子文件夹。该文件定义了Solr中自动发现内核的基本属性。例如: 此外,该配置文 阅读全文
posted @ 2019-10-10 10:09 云山之巅 阅读(438) 评论(0) 推荐(0) 编辑
摘要:一.SolrCloud简介 Apache Solr能够设置结合了容错能力和高可用性的Solr服务器集群。这些功能称为SolrCloud,其提供分布式索引和搜索功能,具有以下特点: 1.集群的集中配置 2.自动负载均衡和查询故障转移 3.集成ZooKeeper用于集群协调和配置 SolrCloud是灵 阅读全文
posted @ 2018-11-19 17:29 云山之巅 阅读(737) 评论(0) 推荐(0) 编辑
摘要:一.配置solr 1.上传并解压Solr包 解压命令:tar -zxvf solr-7.7.2 2.拷贝基础core 进入 /solr-7.7.2/server/solr/configsets/目录,执行命令:cp -r sample_techproducts_configs/ ../electro 阅读全文
posted @ 2018-05-03 16:33 云山之巅 阅读(1813) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示