在好例子网,分享、交流、成长!
您当前所在位置:首页Java 开发实例Java语言基础 → 基于Lucene的实时全文检索系统

基于Lucene的实时全文检索系统

Java语言基础

下载此实例
  • 开发语言:Java
  • 实例大小:1.96M
  • 下载次数:23
  • 浏览次数:75
  • 发布时间:2020-10-11
  • 实例类别:Java语言基础
  • 发 布 人:just0513
  • 文件格式:.zip
  • 所需积分:20

实例介绍

【实例简介】本文主要是研究了全文检索技术的基本原理以及Lucene的架构和工作原理,并介绍了基于Lucene的实时全文检索引擎的设计实现过程。并提供了一个基于Web的简单实现。最后通过实验的方式,对实现的实时全文检索引擎的性能做了基础测试。实验结果表示,Eserach的性能表现出色,足以满足一般应用的需求。 不可否认的是,Esearch依然存在某些问题没有解决,例如针对索引的删除操作,合并策略的自定义等。同时对Esearch的性能测试不够充分。没有对数据量达到一定规模后的系统性能和针对不同查询类型进行响应时间的测试。这些都是依然值得深入研究和改进的地方。

【实例截图】

【核心代码】

毕业设计-基于Lucene的实时全文检索系统

├── esearch
│   ├── esearch-core
│   │   ├── esearch-core.iml
│   │   ├── pom.xml
│   │   └── src
│   │       └── main
│   │           └── java
│   │               └── cn
│   │                   └── hbu
│   │                       └── cs
│   │                           └── esearch
│   │                               ├── cache
│   │                               │   ├── AbstractReaderCache.java
│   │                               │   ├── DefaultReaderCache.java
│   │                               │   ├── NoopReaderCache.java
│   │                               │   ├── SimpleReaderCache.java
│   │                               │   └── SmartReaderCache.java
│   │                               ├── consumer
│   │                               │   ├── AsyncDataConsumer.java
│   │                               │   ├── AsyncEsearchStoreConsumer.java
│   │                               │   ├── DataConsumer.java
│   │                               │   ├── DelegateIndexDataConsumer.java
│   │                               │   ├── EsearchStoreConsumer.java
│   │                               │   └── LifeCycleCotrolledDataConsumer.java
│   │                               ├── core
│   │                               │   ├── Esearch.java
│   │                               │   ├── EsearchConfig.java
│   │                               │   ├── EsearchContext.java
│   │                               │   ├── EsearchException.java
│   │                               │   ├── EsearchExecutors.java
│   │                               │   ├── EsearchHealth.java
│   │                               │   ├── EsearchMergePolicy.java
│   │                               │   ├── EsearchMultiReader.java
│   │                               │   ├── EsearchReaderContext.java
│   │                               │   ├── EsearchSegmentReader.java
│   │                               │   ├── EsearchSystem.java
│   │                               │   └── EsearchThreadPoolExecutor.java
│   │                               ├── document
│   │                               │   ├── AbstractEsearchIndexable.java
│   │                               │   ├── AbstractInterpreter.java
│   │                               │   ├── DataDoc.java
│   │                               │   ├── DirectoryManager.java
│   │                               │   ├── DocIDMapper.java
│   │                               │   ├── DocIDMapperFactory.java
│   │                               │   ├── DocIDMapperImpl.java
│   │                               │   ├── EsearchIndexable.java
│   │                               │   ├── FileInterpreter.java
│   │                               │   ├── Interpreter.java
│   │                               │   ├── JsonInterpreter.java
│   │                               │   ├── TikaInterpreter.java
│   │                               │   ├── UIDDocIdSet.java
│   │                               │   └── UIDFilter.java
│   │                               ├── index
│   │                               │   ├── AbstractIndexReaderDecorator.java
│   │                               │   ├── BaseSearchIndex.java
│   │                               │   ├── BatchedIndexDataLoader.java
│   │                               │   ├── DefaultDirectoryManager.java
│   │                               │   ├── DefaultDocIDMapperFactory.java
│   │                               │   ├── DefaultIndexReaderDecorator.java
│   │                               │   ├── DefaultIndexingEventListener.java
│   │                               │   ├── DefaultOptimizeScheduler.java
│   │                               │   ├── DefaultRAMDiskIndexFactory.java
│   │                               │   ├── DefaultRAMIndexFactory.java
│   │                               │   ├── DiskIndexSnapshot.java
│   │                               │   ├── DiskLuceneIndexDataLoader.java
│   │                               │   ├── DiskSearchIndex.java
│   │                               │   ├── IndexReaderDecorator.java
│   │                               │   ├── IndexReaderDispenser.java
│   │                               │   ├── IndexReaderFactory.java
│   │                               │   ├── IndexSignature.java
│   │                               │   ├── IndexUpdatedEvent.java
│   │                               │   ├── IndexingEventListener.java
│   │                               │   ├── IndexingThread.java
│   │                               │   ├── LuceneIndexDataLoader.java
│   │                               │   ├── OptimizeScheduler.java
│   │                               │   ├── RAMIndexFactory.java
│   │                               │   ├── RAMLuceneIndexDataLoader.java
│   │                               │   ├── RAMSearchIndex.java
│   │                               │   ├── ReaderCacheFactory.java
│   │                               │   ├── RealtimeIndexDataLoader.java
│   │                               │   ├── SearchIndexManager.java
│   │                               │   └── ZoieIndexDeletionPolicy.java
│   │                               ├── mbean
│   │                               │   ├── DataProviderAdmin.java
│   │                               │   ├── DataProviderAdminMBean.java
│   │                               │   ├── EsearchAdminMBean.java
│   │                               │   ├── EsearchIndexingStatusAdmin.java
│   │                               │   ├── EsearchIndexingStatusAdminMBean.java
│   │                               │   ├── EsearchSystemAdmin.java
│   │                               │   ├── EsearchSystemAdminMBean.java
│   │                               │   ├── OptimizeSchedulerAdmin.java
│   │                               │   └── OptimizeSchedulerAdminMBean.java
│   │                               ├── provider
│   │                               │   ├── DataProvider.java
│   │                               │   ├── FileDataProvider.java
│   │                               │   ├── MemoryStreamDataProvider.java
│   │                               │   └── StreamDataProvider.java
│   │                               ├── store
│   │                               │   ├── AbstractEsearchStore.java
│   │                               │   ├── EsearchStore.java
│   │                               │   ├── LuceneStore.java
│   │                               │   └── StoreSerializer.java
│   │                               └── util
│   │                                   ├── ArrayDocIdSet.java
│   │                                   ├── ChannelUtil.java
│   │                                   ├── FileUtil.java
│   │                                   ├── IndexUtil.java
│   │                                   ├── IntSetAccelerator.java
│   │                                   ├── LongSetAccelerator.java
│   │                                   ├── MemoryManager.java
│   │                                   └── PriorityQueue.java
│   ├── esearch-parent
│   │   ├── esearch-parent.iml
│   │   └── pom.xml
│   ├── esearch-perf
│   │   ├── esearch-perf.iml
│   │   └── pom.xml
│   ├── esearch-real
│   │   ├── esearch-real.iml
│   │   ├── pom.xml
│   │   └── src
│   │       └── main
│   │           ├── java
│   │           │   └── cn
│   │           │       └── hbu
│   │           │           └── cs
│   │           │               └── esearch
│   │           │                   ├── controller
│   │           │                   │   └── EsearchRestfulController.java
│   │           │                   ├── model
│   │           │                   │   ├── IndexRequest.java
│   │           │                   │   ├── SearchHit.java
│   │           │                   │   ├── SearchRequest.java
│   │           │                   │   └── SearchResult.java
│   │           │                   └── service
│   │           │                       ├── IndexService.java
│   │           │                       ├── SearchService.java
│   │           │                       └── impl
│   │           │                           └── EsearchSearchServiceImpl.java
│   │           ├── resources
│   │           │   ├── logback.xml
│   │           │   └── spring
│   │           │       ├── spring-applicationContext.xml
│   │           │       └── spring-dispatcher-servlet.xml
│   │           └── webapp
│   │               ├── WEB-INF
│   │               │   ├── conf
│   │               │   │   └── esearch.properties
│   │               │   └── web.xml
│   │               ├── pages
│   │               │   └── index.jsp
│   │               └── resources
│   │                   ├── favicon.ico
│   │                   ├── images
│   │                   │   ├── esearch-logo.png
│   │                   │   └── logo.png
│   │                   ├── scripts
│   │                   │   ├── search.js
│   │                   │   └── utils.js
│   │                   └── styles
│   │                       └── index.css
│   ├── esearch-web
│   │   ├── esearch-web.iml
│   │   ├── pom.xml
│   │   └── src
│   │       └── main
│   │           ├── java
│   │           │   └── cn
│   │           │       └── hbu
│   │           │           └── cs
│   │           │               └── esearch
│   │           │                   ├── controller
│   │           │                   │   ├── EsearchController.java
│   │           │                   │   └── EsearchRestfulController.java
│   │           │                   ├── model
│   │           │                   │   ├── SearchHit.java
│   │           │                   │   ├── SearchRequest.java
│   │           │                   │   └── SearchResult.java
│   │           │                   └── service
│   │           │                       ├── SearchService.java
│   │           │                       └── impl
│   │           │                           └── EsearchSearchServiceImpl.java
│   │           ├── resources
│   │           │   ├── api
│   │           │   │   ├── format.json
│   │           │   │   ├── index.json
│   │           │   │   ├── info.json
│   │           │   │   └── search.json
│   │           │   ├── logback.xml
│   │           │   └── spring
│   │           │       ├── spring-applicationContext.xml
│   │           │       └── spring-dispatcher-servlet.xml
│   │           └── webapp
│   │               ├── WEB-INF
│   │               │   ├── conf
│   │               │   │   └── esearch.properties
│   │               │   └── web.xml
│   │               ├── pages
│   │               │   ├── admin.jsp
│   │               │   ├── api.jsp
│   │               │   ├── how.jsp
│   │               │   └── index.jsp
│   │               └── resources
│   │                   ├── favicon.ico
│   │                   ├── images
│   │                   │   ├── esearch-logo.png
│   │                   │   └── logo.png
│   │                   ├── scripts
│   │                   │   ├── search.js
│   │                   │   └── utils.js
│   │                   └── styles
│   │                       └── index.css
│   ├── esearch.iml
│   ├── pom.xml
│   └── src
│       └── main
│           └── webapp
│               └── WEB-INF
│                   └── web.xml
├── image
│   ├── images
│   │   ├── data-provider-arch.png
│   │   ├── image_4.png
│   │   ├── image_6.png
│   │   ├── image_8.png
│   │   ├── index-arch.png
│   │   ├── inverted-index.png
│   │   ├── logo.png
│   │   ├── lucene-arch-blue.png
│   │   ├── lucene-course-normal.png
│   │   ├── lucene-course.png
│   │   ├── lucene-index-arch.png
│   │   ├── lucene-score.png
│   │   ├── lucene-search-score-uml.jpg
│   │   ├── lucene-source-arch.png
│   │   ├── mvc.png
│   │   ├── p-c-arch.png
│   │   ├── p-c.png
│   │   ├── postinglist.png
│   │   ├── query-tree-after-process.png
│   │   ├── query-tree.png
│   │   ├── realtime.png
│   │   ├── realtime01.png
│   │   ├── realtime02.png
│   │   ├── realtime03.png
│   │   ├── search-arch.png
│   │   ├── search.png
│   │   ├── timeline.png
│   │   └── vsm.png
│   └── visio
│       ├── data-flow.vsdx
│       ├── data-provider-arch.vsdx
│       ├── index-arch.vsdx
│       ├── inverted-index.vsdx
│       ├── lucene-arch.vsdx
│       ├── lucene-course.vsdx
│       ├── lucene-index-arch.vsdx
│       ├── lucene-source-arch.vsdx
│       ├── mvc.vsdx
│       ├── p-c-arch.vsdx
│       ├── postinglist.vsdx
│       ├── query-tree.vsdx
│       ├── realtime.vsdx
│       ├── realtime01.vsdx
│       ├── realtime02.vsdx
│       ├── realtime03.vsdx
│       ├── search-arch.vsdx
│       ├── timeline.vsdx
│       └── vsm.vsdx
└── 毕业论文.doc

72 directories, 198 files


实例下载地址

基于Lucene的实时全文检索系统

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警