Lucene(一)入门介绍

lucene8.0实践入门介绍1 首先要先下载lucene的相关jar包: http://apache.01link.hk/lucene/java/8.0.0/lucene-8.0.0.zip 然后解压,拿出三个jar包: lucene-queryparser-8.0.0.jar lucene-core-8.0.0.jar lucene-analyzers-common-8.0.0.jar 创建一个java工程,然后在根目... 阅读详情

1. Lucene简介

  Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供。Lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在Java开发环境里Lucene是一个成熟的免费开源工具。就其本身而言,Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。人们经常提到信息检索程序库,虽然与搜索引擎有关,但不应该将信息检索程序库与搜索引擎相混淆。

2. 什么是全文检索

2.1 数据分类

我们生活中的数据总体分为两种:结构化数据和非结构化数据。

  • 结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等。
  • 非结构化数据:指不定长或无固定格式的数据,如邮件,word文档等磁盘上的文件

2.2 结构化数据搜索

常见的结构化数据也就是数据库中的数据。在数据库中搜索很容易实现,通常都是使用sql语句进行查询,而且能很快的得到查询结果。

为什么数据库搜索很容易?

因为数据库中的数据存储是有规律的,有行有列而且数据格式、数据长度都是固定的。

2.3 非结构化数据查询方法

2.3.1 顺序扫描法(Serial Scanning)

所谓顺序扫描,比如要找内容包含某一个字符串的文件,就是一个文档一个文档的看,对于每一个文档,从头看到尾,如果此文档包含此字符串,则此文档为我们要找的文件,接着看下一个文件,直到扫描完所有的文件。如利用windows的搜索也可以搜索文件内容,只是相当的慢。

2.3.2 全文检索(Full-text Search)

将非结构化数据中的一部分信息提取出来,重新组织,使其变得有一定结构,然后对此有一定结构的数据进行搜索,从而达到搜索相对较快的目的。这部分从非结构化数据中提取出的然后重新组织的信息,我们称之索引。

例如:字典。字典的拼音表和部首检字表就相当于字典的索引,对每一个字的解释是非结构化的,如果字典没有音节表和部首检字表,在茫茫辞海中找一个字只能顺序扫描。然而字的某些信息可以提取出来进行结构化处理,比如读音,就比较结构化,分声母和韵母,分别只有几种可以一一列举,于是将读音拿出来按一定的顺序排列,每一项读音都指向此字的详细解释的页数。我们搜索时按结构化的拼音搜到读音,然后按其指向的页数,便可找到我们的非结构化数据——也即对字的解释。

这种先建立索引,再对索引进行搜索的过程就叫全文检索(Full-text Search)。

虽然创建索引的过程也是非常耗时的,但是索引一旦创建就可以多次使用,全文检索主要处理的是查询,所以耗时间创建索引是值得的。

2.4 如何实现全文检索

可以使用Lucene实现全文检索。Lucene是apache下的一个开放源代码的全文检索引擎工具包。提供了完整的查询引擎和索引引擎,部分文本分析引擎。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能。

2.5 全文检索的应用场景

对于数据量大、数据结构不固定的数据可采用全文检索方式搜索,比如百度、Google等搜索引擎、论坛站内搜索、电商网站站内搜索等。

Lucene使用入门指南 (一) Lucene的安装与配置的详细过程 第一步:下载安装JDK 在安装lucene之前需要首先安装jdk,因为lucene是在jdk的环境下运行的。最好下载jdk1.7以上的版本。这里我用的是jdk1.7.0_51。 1.首先从官网下载jdk1.7.0_51(下载之前先查看你的电脑是多少位操作系统,如果是32就下载32的,如果是64位就下载64位的,否则不能兼容)。下载之后解压到当前 阅读详情

相关推荐

lucene8.0实践入门介绍2

上一篇文章讲到lucene8和上述对应的iK分词器不兼容 然后我再网上下载了相应的源码自己改了下,直接引入到项目中: 修改前的源码如下:其实就是lucene8将方法: createComponents(String fieldName, final Reader in) 改成了createComponents(String fieldName) 所以相应的IK分词器的IKAnalyze...

chenjianhuideyueding的博客 2101

Lucene

1. 全文搜索是什么? 从全文数据中进行检索就叫全文检索(全文搜索)。是基于文本的搜索。 结构化数据:指具有“固定格式”或“有限长度”的数据,如数据库,元数据等; 非结构化数据:指不定长或无固定格式的数据,如邮件,word文档等; 半结构化数据,如XML,HTML等,当根据需要可按结构化数据来处理,也可抽取出纯文本按非结构化数据来处理。 2. 全文检索 非结构化数据顺序扫描很慢,对结构化数据的搜索...

weixin_43844237的博客 266

Lucene硬核解析专题系列(一):Lucene入门与核心概念

Lucene诞生于1999年,由Doug Cutting开发,后来捐赠给了Apache软件基金会。它不是一个开箱即用的搜索引擎,而是一个底层库,提供了构建搜索功能的工具。它的定位类似于数据库中的存储引擎,专注于高效的文本索引和检索。核心能力全文搜索:支持复杂的查询语法。高性能:得益于倒排索引和优化的存储结构。灵活性:可定制分词、评分和存储策略。应用场景:从简单的本地文件搜索,到支撑分布式搜索引擎的底层。

资深架构师分享:深入剖析软件架构,探讨云计算、微服务、大数据等前沿技术。分享实践经验,促进技术交流,共同构建卓越系统。 1283

Lucene从入门到使用

第一节:lucene入门阶段 1.什么是Lucene?         Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供。Lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在Java开发环境里Lucene是一个成熟的免费开源工具。就其本身而言,Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。——《百度百科》 2.全文...

Null的博客 1万+

Lucene系列二:Lucene(Lucene介绍、Lucene架构)

一、Lucene介绍 Lucene简介   最受欢迎的java开源全文搜索引擎开发工具包。提供了完整的查询引擎和索引引擎,部分文本分词引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索功能,或者是以此为基础建立起完整的全文检索引擎。是Apache的子项目,网址:http://lucene.apache.org/ l...

heima201907的博客 427

Proteus课设原理图及报告

1. I/O 口:32 个可编程 I/O 引脚,分成 4 个并行 I/O 端口 (P0, P1, P2, P3),P0 功能段选 a、b、c、d、e、f、g、dp 使其中部分点亮,P2 功能为位选 1、2、4.按键操作分析:P3.0-设置时钟的时间,P3.1-确定更改的时钟时间,P3.2-对。时钟设置标志 0 不设置,1 设置时,2 设置分,3 设置秒。P3.0 按下的次数对应 不设置,设置时,设置分,

2303_76688805的博客 1175

lucene入门介绍篇

一 基本概念 1.lucene介绍 (1)简介 lucene是最受欢迎的java开源全文搜索引擎开发工具包。lucene使用反向索引,提供了完整的查询引擎和索引引擎,部分文本分词引擎。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索功能,或者是以此为基础建立起完整的全文检索引擎。lucene的适用场景包括:①开发独立的搜索引擎服务②在应用中为数据库中...

lgq2016的博客 1381

间充质干细胞衰老机制与抗衰老干预策略研究

干细胞技术在再生医学领域具有广阔应用前景,其中间充质干细胞(MSCs)因其多向分化潜能和免疫调节特性备受关注。细胞衰老是影响干细胞治疗效果的共性难题,表现为增殖能力下降、端粒缩短等特征。通过表观遗传学分析发现,衰老MSCs存在DNA甲基化异常和组蛋白修饰改变;线粒体功能障碍导致ATP产量锐减,ROS累积显著增加。针对这些机制,研究者开发了包括小分子化合物筛选、CRISPR基因编辑和三维培养优化在内的多种干预策略。这些技术在组织修复、抗衰老治疗等应用场景中展现出重要价值,例如可提升心肌梗死修复效率2.3倍,缩

weixin_33502772的博客 227

Lucene自学之路(一)——Lucene介绍

一、Lucene介绍 Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全...

互联网叫兽 1644

5步搞定ABB机器人RobotStudio与S7-1500PLC的Profinet通讯(附PLCSIM调试技巧)

本文详细介绍了如何利用RobotStudio与TIA Portal软件,结合PLCSIM Advanced仿真器,在零硬件条件下实现ABB机器人与西门子S7-1500 PLC之间的Profinet通讯虚拟调试。通过五个核心步骤,从环境搭建、网络配置、信号映射到联合仿真与高级调试,帮助工程师在项目前期高效验证逻辑、压缩现场调试周期,并掌握实用的PLCSIM调试技巧。

weixin_29188043的博客 505

光模块的封装工艺有哪些?

COB封装传统的单路10Gb/s或25Gb/s速率的光模块采用SFP封装将电芯片和TO封装的光收发组件焊接到PCB板上组成光模块。但对于40G及以上速率的高速光模块,受激光器速率限制(多为25G),主要通过多通道并行实现,如40G由4×10G实现,而100G则由4×25G实现。蝶形封装:壳体通常为长方体,结构及实现功能通常比较复杂,可以内置制冷器、热沉、陶瓷基块、芯片、热敏电阻、背光监控,并且可以支持所有以上部件的键合引线。BOX封装属于蝶形封装的一种,用于多通道并行封装。

WaytoICT- Explore ICT Technology, Build Your Tech Path 3806

Lucene实战(一)Lucene介绍及HelloWorld运行(附Eclipse工程)

前言 Lucene是一个开源的、成熟的java检索库。

XiaoM的专栏 2160

采用了fluent模拟了平壁面结霜过程。udf,很经典,可以试试。

利用该模型作为FLUENT中的源项,模拟了在局部冷却下冷表面上的霜形成,以预测霜的形态、温度分布和霜的重量,结果与实验结果吻合良好。结果显示,霜首先围绕冷却块形成,然后逐渐向其他方向扩展,冷却块上方的霜密度最大。随着时间的推移,平均霜厚度逐渐增加,生长速率减慢,而平均霜密度随增长速率变快而增加。相变传递微观过程与机理、蒸发及冷凝换热、强化传热、高效传热管、热泵、制冷、节水节能新技术、电子元器件冷却、余热回收及梯级利用等。udf,很经典,可以试试。工程热物理、空调、热能、低温制冷、化工、物理等。

qq_15963745的博客 920

全文索引 (一)入门 hello lucene

在一般的结构化数据库中,一般去找一个字段的匹配,使用最多的就是like语句。这种情况下,就像在小时候妈妈给我买的新华字典里去一页页翻出自己的名字一样,效率相对的底下,较为快速的的方式是什么呢?就是通过新华字典的前面的索引来取找,而全文索引就是做的这样的一个工作。为你需要查找的"数据源"做各种的分析索引文件。这里的数据源可以是txt文件,图片文件等结构化的文件。而lucene是全文索引中比较优秀的第...

柏修的专栏 2496

基于Simulink的无迹卡尔曼滤波(UKF)SOC高精度估计仿真

本文介绍了基于Simulink的无迹卡尔曼滤波(UKF)在电池SOC高精度估计中的应用。通过无迹变换替代传统EKF的线性化过程,UKF显著提升了SOC估计精度,在强非线性工况下误差可控制在0.5%以内。文章详细阐述了UKF的核心原理,包括Sigma点生成、状态预测和观测更新等关键步骤,并基于Thevenin等效电路模型构建了完整的UKF SOC估算系统。通过Simulink建模和仿真验证,展示了UKF在大电流脉冲、变温工况等复杂场景下的优异性能,其动态响应时间小于30ms,长期累积误差低于0.7%。研究为储

amy_mhd的博客 124

【Linux命令大全】006.网络通讯之write命令(实操篇)

Linux write命令摘要 write是Linux系统中用于用户间实时通讯的命令工具,允许向其他登录用户的终端发送消息。主要功能包括: 基本使用:通过write username向指定用户发送消息,Ctrl+D结束输入 终端指定:当用户登录多个终端时,可用write username tty指定目标终端 实用技巧: 使用who查看在线用户 通过管道发送单行消息:echo "内容" | write user 支持多行消息发送和简单聊天会话。

yuhuasheng1997的博客 213

Lucene入门

全文检索是将整本书、整篇文章中的任意内容信息查找出来的检索。它可以根据需要获得全文中有关章、节、段、句、词等信息,计算机程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时根据建立的索引查找,类似于通过字典的检索字表查字的过程。

weixin_44270855的博客 805

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Lucene入门教程(一)

在这里分享一下Lucene的学习,主要参考官网上的一下教程和PDF版的《Lucene In Action》。当然,博客中很多内容都是摘自上面两个地方。 1. 什么是Lucene         Lucene是一个高性能的、可扩展的信息检索工具。你可以把它融入到应用程序中以增加索引和搜索功能。Lucene是一个纯Java实现的成熟、自由、开源的软件项目。 它不是一个完整的全文检索引擎,

什么是江湖? 4566

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

基于lucene的案例开发:分词器介绍

在lucene创建索引的过程中,分词技术是一个十分重要的环节,介绍了7中比较常见的分词技术 CJKAnalyzer、KeywordAnalyzer、SimpleAnalyzer、StopAnalyzer、WhitespaceAnalyzer、StandardAnalyzer、IKAnalyzer

小鸡慢慢的专栏 7896

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Lucene第一篇【介绍Lucene、快速入门】

什么是Lucene?? Lucene是apache软件基金会发布的一个开放源代码的全文检索引擎工具包,由资深全文检索专家Doug Cutting所撰写,它是一个全文检索引擎的架构,提供了完整的创建索引和查询索引,以及部分文本分析的引擎,Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎,Lucene在全文检索

zhong_fucheng 647

lucene的介绍

PS: 苦学一周全文检索,由原来的搜索小白,到初次涉猎,感觉每门技术都博大精深,其中精髓亦是不可一日而语。那小博猪就简单介绍一下这一周的学习历程,仅供各位程序猿们参考,这其中不涉及任何私密话题,因此也不用打马赛克了,都是网络分享的开源资料,当然也不涉及任何利益关系。   ...

chongrao2446的博客 193

mysql lucene怎么读_Lucene:一、入门

1 Lucene简介Lucene是apache下的一个开源的全文检索引擎工具包。1.1 全文检索(Full-text Search)1.1.1 定义全文检索就是先分词创建索引,再执行搜索的过程。分词:就是将一段文字分成一个个单词全文检索就将一段文字分成一个个单词去查询数据!!!1.1.2 应用场景1.1.2.1 搜索引擎(了解)搜索引擎是一个基于全文检索、能独立运行、提供搜索服务的软件系统。1.2...

weixin_28866737的博客 1171

Lucene 学习(一)Lucene介绍以及环境搭建

概述 这几天因为公司项目需要做一个文章咨询的板块。需要用的全文检索。以前没有接触过这一块。所以自己就研究了一下lucene这个搜索引擎。学了好几天也没有做笔记。现在就记录下来吧。 lucene是什么 Lucene 即全文检索,全文检索是计算机程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置。当用户查询的时候,根据建立的索引查找,类似于字典的检索字表查字的过程。...

qq_40990836的博客 745

Lucene介绍与使用

目录 Lucene 全文检索 全文检索的应用场景 索引 Lucene、Solr、Elasticsearch 三者关系 Lucene的基本使用 lucene工作流程 构建索引 查询索引 创建索引的详细流程 案例演示 生成索引: 中文分词索引 高亮显示 文档域加权 概述: 案例演示 查询索引的详细流程 索引的删除修改 删除索引 deleteDocBeforeMerge 此方法只标记未删除索引 修改索引 高级查询 特定项查询 综合案例演示 查询 删除 ..

鑫709的博客 3973
上一篇: 突击训练第一季(一)消息队列
下一篇: Lucene(二)Lucene实现全文检索的流程
夜未眠shm
博客等级 码龄14年 15粉丝 101原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值