当前位置: 首页 > 软件库 > 程序开发 > 搜索引擎 >

snoics-retrieval

基于Lucene的全文检索框架
授权协议 Apache
开发语言 Java
所属分类 程序开发、 搜索引擎
软件类型 开源软件
地区 不详
投 递 者 颜永怡
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

基于Lucene的全文检索框架

一、 介绍

      基于Lucene的全文检索框架,提供快速方便的索引创建及查询方式,并提供扩展功能对框架进行扩展。

二、 使用指南

1、 环境要求

      Java1.5+

      Lucene 3.0.x+

2、 加载

      通过 RetrievalApplicationContext? 载入配置参数,创建实例,每个被创建出的 RetrievalApplicationContext?实例中都包含一个完整的、独立的上下文环境。

      一般情况下,一个应用只需要在启动时创建一个RetrievalApplicationContext?实例,然后由整个应用共享。

3、 参数配置

    默认配置文件为classpath下的retrieval.properties

4、 索引

4.1、初始化索引

4.2、提供5种方式创建索引

 以普通方式创建索引

 对单条数据库记录内容创建索引

 对单个文件内容及文件信息创建索引  对数据库记录进行批量创建索引

 对大量的文件批量创建索引

 支持多线程创建索引,而不会出现索引文件异常

5、 查询

         使用RQuery实例,通过传入构造好的QueryItem?实例进行查询,并使用QuerySort?实例对结果排序

6、 扩展

     提供两种途径进行扩展:

  1. 在配置文件指定扩展类,在加载时,自动读取和设置配置文件中的扩展类
  2. 在RetrievalProperties?实例中设置扩展类,并使用该实例创建RetrievalApplicationContext?实例

7、 其它

 

    更详细的示例请查阅test中的代码

    snoics-retrieval项目中使用了snoics-base.jar,如果需要获取snoics-base.jar的源代码,请到 http://code.google.com/p/snoics-base/ 下载

三、 关于

    项目地址:http://code.google.com/p/snoics-retrieval/

    Email : snoics@gmail.com

    Blog : http://blogjava.net/snoics

 相关资料
  • 这是我想解决的问题: 我有多个Lucene索引,每个索引包含相同数据结构的子集(它们具有相同的字段,但是字段可能存在于文档中,也可能不存在于某个索引中) 索引之间共享一个全局标识符。也就是说,如果有4个索引,最多可能有4个文档共享一个密钥。 我有一个单一的Lucene查询 我使用一起查询所有索引,并且我能够使用找出命中来自哪个子索引。到目前为止还不错,但问题是: 为了执行一个(相当复杂的)合并逻辑

  • 主要内容:启用全文检索,创建全文索引,使用全文索引,删除全文索引从 2.4 版本开始,MongoDB 开始支持全文检索功能,全文检索就是对文本中的每个词建立索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户,整个过程类似于通过字典中的检索字表查字的过程。 目前,MongoDB 支持大约 15 种语言的全文索引,例如 danish、dutch、english、finnish、french、germ

  • 供参考:我的代码和这个so帖子非常相似。 谢谢

  • 前言 hyperf/scout 衍生于 laravel/scout,我们对它进行了一些协程化改造,但保持了相同的 API。在这里感谢一下 Laravel 开发组,实现了如此强大好用的组件。本文档部分节选自 Laravel China 社区组织翻译的 Laravel 官方文档。 Hyperf/Scout 为模型的全文搜索提供了一个简单的、基于驱动程序的解决方案。使用模型观察员,Scout 会自动同步

  • 我想做一个字段折叠热门点击聚合,正如这里所记录的: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-metrics-top-hits-aggregation.html#_field_collapse_example 特别是,这一部分是一个问题: 因为生产环境配置有: 这意味着我不

  • 问题内容: 我正在建立Django网站,并且正在寻找搜索引擎。 一些候选人: Lucene / Lucene与指南针/ Solr 狮身人面像 PostgreSQL内置全文本搜索 MySQl内置全文本搜索 选择标准: 结果相关性和排名 搜索和索引速度 易于使用,易于与Django集成 资源需求-网站将托管在VPS上,因此理想情况下,搜索引擎不需要大量的RAM和CPU 可扩展性 其他功能,例如“您的意