lucene 搜索_使用Lucene的搜索服务器搜索Jira问题

lucene 搜索

您可能还记得我的第一篇博客文章 ,该文章描述了Lucene开发人员如何使用Lucene搜索应用程序查找我们的Jira问题来食用我们自己的狗粮。

该应用程序已成为许多现代Lucene功能的强大展示,例如侧向钻取和动态范围刻面, 基于中缀匹配的新建议 , 张贴荧光笔 ,块联接查询,因此您可以跳转到与您的匹配的特定问题注释搜索,近实时索引和搜索等。每当新用户向我询问Lucene的功能时,我都会将他们指向该应用程序,以便他们可以自己查看。

最近,我取得了一些进一步的进展,因此我想进行更新。

简单的基于Netty的Lucene服务器的源代码现在可以在此subversion分支上使用 (有关详细信息,请参阅LUCENE-5376 )。 我一直在逐步增加其他Lucene模块的覆盖范围,包括构面,建议程序,分析,queryparsers,突出显示,分组,联接和表达式。 当然还有正常的索引和搜索! 还有许多工作要做(有很多未提交的内容),此处的目标不是构建功能丰富的搜索服务器,而是演示如何在服务器上下文中使用最少的“瘦服务器”附加源代码使用Lucene当前的模块。

另外,为了测试此基于Lucene的新服务器并完成“狗食”,我构建了一个简单的Jira搜索应用程序插件,以帮助我们在此处找到Jira问题。 该应用程序具有各种Python工具,可使用Jira的REST API和作为Python WSGI应用程序运行的用户界面层提取和索引Jira问题,以将请求发送到服务器并将响应呈现回用户。 此Jira搜索应用程序的目标是使它易于指向任何Jira实例/项目,并实现对所有问题的全面搜索。

我只是对生产站点进行了进一步的更改:

  • 我将Jira搜索应用程序升级到当前服务器分支(以前它在我的私有fork上运行)。
  • 我将所有分析组件都切换到了Lucene的分析工厂。 这些工厂使用Java的SPI(服务提供商接口),以便服务器可以访问类路径中的任何字符过滤器,令牌化器和令牌过滤器。 这在构建服务器时非常有帮助,因为这意味着您不需要任何特殊的代码即可处理Lucene如今提供的大量分析组件。 一切都简单地通过了工厂(工厂知道如何解析自己的论点)。
  • 我已经添加了Tika项目,因此您现在也可以找到Tika问题。 添加起来非常简单,并且似乎可以正常工作!
  • 我插入了WordDelimiterFilter以便拆分CamelCaseTokens。 例如,尝试搜索中缀并记下高亮。 正如Rober Muir提醒我的那样, WordDelimiterFilter会破坏偏移量,在某些情况下,它将使突出显示混乱,因此,我将尝试设置我已经在使用的ICUTokenizer来进行拆分。
  • 当您进行文本搜索时,我默认切换到Lucene的新表达式模块来进行相关性+新近度排序,这很有用,因为大多数时候我们都在寻找最近接触的问题。 以前,我使用自定义FieldComparator来实现相同的功能,但是表达式更加紧凑和强大,可以删除该自定义FieldComparator
  • 我切换到的建议近乎实时的建设,使用AnalyzingInfixSuggester 。 以前,我每隔五分钟就完全重建一次建议程序,所以这节省了很多CPU,因为现在我只是在问题出现时添加新的Jira问题并刷新建议程序。 这也意味着从添加索引到建议索引之间的延迟要短得多。 有关详细信息,请参见LUCENE-5477 。
  • 我现在每天commit一次。 以前,我从不承诺,只是依靠近实时搜索。 这工作得很好,除非当我需要关闭服务器(例如,推出新更改)时,它需要完全重新索引,这是非常快的,但是对于那些在搜索过程中偶然进行搜索的用户来说,体验很差。 现在,当我启动服务器时,它又回到了最后一次提交,然后近实时索引Swift赶上了自最后一次提交以来发生的任何已更改问题。
  • 各种小问题,例如重命名Jira问题时的正确处理(Jira REST API很难发现它!); 更好的生产推动自动化; 升级到引导 UI库的更新版本。

此Jira搜索应用程序仍需进行大量改进。 对于具有许多可能的向下钻取值的字段,我想使用一个简单的建议程序,以便用户可以快速向下钻取。 我想修复建议程序,以根据项目过滤建议。 例如,如果您深入研究了提卡问题,那么当您输入新搜索时,您应该只会看到建议的提卡问题。 为此,我们需要使AnalzyingInfixSuggester上下文感知 。 我还想为所有方面字段提供更紧凑的UI; 也许我需要在“更多”下隐藏不常用的构面字段...

参考: 使用Lucene的搜索服务器从我们的JCG合作伙伴 Michael Mc Candless的Changeing Bits博客中搜索Jira问题 。

翻译自: https://www.javacodegeeks.com/2014/03/using-lucenes-search-server-to-search-jira-issues.html

lucene 搜索

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/342068.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[渝粤教育] 西北工业大学 博弈论基础 参考 资料

教育 -博弈论基础-章节资料考试资料-西北工业大学【】 单元测试(一) 1、【单选题】人与人之间的博弈是什么关系? A、既可以是竞争关系,也可以是合作关系 B、只能是竞争关系 C、只能是合作关系 D、既是竞争关系又是合作关系 参考资…

光端机使用与日常保养

目前,光端机在光信号的网络传输中发挥着很重要的作用,在很多行业领域都得到了广泛的应用,但是我们平时在使用光端机的过程中,必须得注意光端机的日常保养及使用事项。那么,光端机的使用与日常保养需要注意哪些事项呢&a…

[渝粤教育] 西南交通大学 信号与系统A 参考 资料

教育 -信号与系统A-章节资料考试资料-西南交通大学【】 第一章 单元作业 第一章 自测题 1、【单选题】下图所示的4个确定性信号,哪个信号是连续时间能量信号( )。 A、 B、 C、 D、 参考资料【 】 2、【单选题】连续时间周期信号的周期和平均功率分别为( ) A、 B、 C…

光端机的使用注意事项详解

随着安防监控行业的高速发展,光端机开始发挥越来越重要的作用,在平安城市、高速公路、城市智能交通、城市轨道交通等领域都有应用。但是我们在使用光端机的同时,还要注意光端机的保养和维护。那么,光端机的使用有哪些注意事项呢&a…

[渝粤教育] 西南民族大学 数据结构 参考 资料

教育 -数据结构-章节资料考试资料-西南民族大学【】 小测验:算法复杂度 1、【单选题】下列函数中,哪个函数具有最快的增长速度: A、 B、 C、 D、 参考资料【 】 2、【单选题】下面一段代码的时间复杂度是?if ( A B ) { for ( i0; …

[渝粤教育] 西安交通大学 医学伦理学(2021秋) 参考 资料

教育 -医学伦理学(2021秋)-章节资料考试资料-西安交通大学【】 第一讲 测验 1、【单选题】1996年11月,14个国家的代表重新审查医学目的,指出目前的医学目的不包括( )。 A、追求安乐死 B、预防疾病和损伤 C、解除由疾病引起的疼痛和…

光端机的分类有哪些?

今天杭州飞畅科技的小编来为大家介绍下光端机的分类都有哪些,光端机根据不同的分类方式,有不同的分法,如果从光端机的接口来进行分类的话,大致能够分为视频光端机、音频光端机、电话光端机、数字光端机、以太网光端机。下面小编就…

[渝粤教育] 西安建筑科技大学 技术经济学 参考 资料

教育 -技术经济学-章节资料考试资料-西安建筑科技大学【】 第一单元测试 1、【单选题】技术经济中的“经济”主要是指()。 A、社会生产关系的总和 B、对生活有利的总和 C、生产或生活上的节约或节俭 D、国家国民经济的总称 参考资料【 】 2、【单选题】在对投资方案进行经济效果…

光端机、光纤收发器与光猫三者之间的区别介绍

现如今,在当下的网络通信项目中,光端机、光纤收发器、光猫这几款产品可以说是应用非常广泛,也是备受安防人的推崇,那么,对于这三者之间的区别你是否清楚呢?接下来就由飞畅科技的小编来为大家详细介绍下光端…

gdb 扩展 默认参数_默认方法一种扩展旧代码的方法

gdb 扩展 默认参数如您所知,Java的新版本已于2014年3月18日发布,我将介绍一系列文章来演示其新功能,也许在某些方面,我将谈论我的想法和批评。 我认为重要的第一个功能是“默认方法”,在所有Java语言的先前版本中&…

[渝粤教育] 辽宁对外经贸学院 国际集装箱多式联运 参考 资料

教育 -国际集装箱多式联运-章节资料考试资料-辽宁对外经贸学院【】 第一章单元测试 1、【单选题】下列哪一项不是集装箱运输的特点 A、可以实现“门到门”运输 B、只需少量投资 C、适合组织多式联运 D、运输效率高 参考资料【 】 2、【单选题】集装箱运输的发展经历了萌芽期、&…

[渝粤教育] 郑州工程技术学院 食品微生物学 参考 资料

教育 -食品微生物学-章节资料考试资料-郑州工程技术学院【】 微生物的类群随堂测验 1、【单选题】下列哪种生物属于微生物? A、草履虫 B、线虫 C、蛔虫 D、螨虫 参考资料【 】 2、【单选题】普通光学显微镜观察不到下列哪种微生物? A、变形虫 B、啤酒酵母 C、噬菌体…

光端机与光纤收发器的区别

光端机是目前常用的一种信号收发设备,很多对此不是很了解的人往往会将其与传统的光纤收发器搞混,但是这其中还是有很大的区别,我们首先得搞懂光端机以及光纤收发器的定义,再来区分二者之间有什么不同之处。接下来飞畅科技小编就来…

[渝粤教育] 郑州轻工业大学 马克思主义基本原理概论 参考 资料

教育 -马克思主义基本原理概论-章节资料考试资料-郑州轻工业大学【】 导论 测验 1、【单选题】下面各项,不是马克思主义的基本组成部分的是 ( ) A、马克思主义哲学 B、马克思主义政治经济学 C、社会学 D、科学社会主义 参考资料【 】 2、【单选题】标志着马克思主义…

[渝粤教育] 长安大学 互换性与技术测量 参考 资料

教育 -互换性与技术测量-章节资料考试资料-长安大学【】 第一章作业 综合测试 1、【单选题】 本课程的研究对象是下列哪一选项? A、机械的运动设计 B、机械结构设计 C、机械的精度设计 D、机械系统设计 参考资料【 】 2、【单选题】 国家强制执行的标准代号是哪一个…

光端机与光纤收发器的应用

光端机目前是一种很常用的信号收发设备,相信有很多人会将其与传统的光纤收发器搞混,但是这其中还是有很大的区别的,接下来就让小编带大家来详细了解下视频光端机与光纤收发器的区别有哪些? 光端机与光纤收发器的区别:…

[渝粤教育] 首都师范大学 走进舞蹈艺术 参考 资料

教育 -走进舞蹈艺术-章节资料考试资料-首都师范大学【】 自然状态的萌动 1、【判断题】人类的舞蹈能力是与生俱来的吗? A、正确 B、错误 参考资料【 】 情感语言的开启 1、【填空题】人类最初通过 语言传递情感。 A、 参考资料【 】 舞蹈起源的学说 1、【判断题】劳…

光端机与交换机有什么区别?

现在,随着各种通信网络技术的不断突破,光端机和交换机在网络应用中是非常的广泛,很多朋友可能听说过光端机跟交换机,但是对于具体的详情可能了解的不是很清楚,往往区分不了什么是光端机,什么是交换机&#…

【渝粤教育】国家开放大学2018年秋季 0108-22T中央银行理论与实务 参考试题

试卷编号:0149 座位号 2018——2019学年度第一学期期末考试 现代汉语试题 2019年1月 1.新词 2.北方方言3.形旁4.定位语素 1.声母z和zh的区别是________不同。 2._____的影响和官话的推广&…

java lambda使用_使用Java 8和Lambda简化ReadWriteLock

java lambda使用考虑到旧版Java代码,无论您在哪里看,带有lambda表达式的Java 8绝对可以提高质量和可读性。 今天,让我们看一下ReadWriteLock以及如何使它使用起来更简单。 假设我们有一个称为Buffer的类,它可以记住队列中的最后几…