`
小嘴冰凉
  • 浏览: 455873 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Lucene1.4与Lucene2.0的Field

 
阅读更多
Field的改进
Lucene1.4主要提供下列四种不同类型的Field:
Keyword,UnStored,UnIndexed,Text

在Lucene2.0中是通过三个内部类Field.Index,Field.Store,Field.termVector(项向量)的组合来区分Field的具体类型.具体如下:
Field.Store.COMPRESS:压缩保存,用于长文本或二进制数据
Field.Store.YES:保存
Field.Store.NO:不保存

Field.Index.NO:不建立索引
Field.Index.TOKENIZED:分词,建索引
Field.Index.UN_TOKENIZED:不分词,建索引
Field.Index.NO_NORMS:不分词,建索引.但是Field的值不像通常那样被保存,而是只取一个byte,这样节约存储空间

Field.TermVector.NO:不保存term vectors
Field.TermVector.YES:保存term vectors
Field.TermVector.WITH_POSITIONS:保存term vectors.(保存值和token位置信息)
Field.TermVector.WITH_OFFSETS:保存term vectors.(保存值和Token的offset)
Field.TermVector.WITH_POSITIONS_OFFSETS:保存term vectors.(保存值和token位置信息和Token的offset)

而Field的构造函数也用到了这三个内部类:
Field(String, byte[],Field.Store)
Field(String, Reader)
Field(String, Reader, Field.TermVector)
Field(String, String, Field.Store, Field.Index)
Field(String, String, Field.Store, Field.Index, Field.TermVector)
                                                  
其中Field(String, Reader)和Field(String, Reader, Field.TermVector)默认为Field.Index.TOKENIZED和Field.Store.NO的.我们可以很简单的建立起1.4版本的Field类型和2.0间的转换(这看上去似乎没有什么必要,只是觉得对于理解还是有点帮助的)
Keyword   <==>  Store.YES,Index.UN_TOKENIZED;
UnIndexed <==>  Store.YES,Index.NO;
UnStored  <==>  Store.NO,Index.TOKENIZED;
Text(String, Reader) <==>  Store.NO,Index.TOKENIZED;
Text(String,String)  <==>  Store.YES,Index.TOKENIZED.
分享到:
评论

相关推荐

    lucene1.4

    lucene1.4工具包

    lucene 2.0 api以及lucene 3.0 api

    **Lucene 2.0 API 和 Lucene 3.0 API 深度解析** Lucene 是一个由 Apache 软件基金会开发的全文搜索引擎库,它为开发者提供了在 Java 应用程序中实现高性能、可扩展的全文搜索功能的能力。Lucene 的 API 设计得相当...

    Lucene-2.0学习文档

    在实际应用中,Lucene可以与Spring、Solr、Elasticsearch等框架集成,构建高效的企业级搜索引擎。它不仅适用于网站内容搜索,还可以应用于日志分析、知识图谱等领域。通过不断优化和扩展,开发者可以充分利用Lucene...

    lucene-1.4-final

    5. **内存与磁盘优化**:在Lucene 1.4中,为了提高性能,引入了块级索引的概念,允许一次性加载多个文档,减少了磁盘I/O。同时,缓存机制也得到了改进,可以有效减少重复计算和提高响应速度。 6. **多语言支持**:...

    Lucene.Net.dll 2.0

    Lucene.Net 2.0 已编译 dll

    Lucene.Net2.0(C#)

    《Lucene.Net 2.0(C#):深入解析全文检索源代码》 Lucene.Net 2.0 是一个基于 .NET Framework 的全文检索库,它为开发人员提供了强大的文本搜索功能,支持C#编程语言。这个开源项目是Apache Lucene的.NET版本,旨在...

    Lucene.Net.rar 2.0 ver asp.net 组件

    **Lucene.Net 2.0 for ASP.NET组件详解** Lucene.Net是一款开源全文搜索引擎库,是Apache软件基金会Lucene项目的.NET版本。这个压缩包“Lucene.Net.rar 2.0 ver”包含了适用于ASP.NET开发的组件,使得在.NET环境中...

    Lucene.net 2.0 API + DLL 下载

    Lucene.NET 2.0 API是这个开源项目的特定版本,它在.NET平台上实现了Lucene的功能,让.NET开发者可以轻松地在应用程序中集成强大的搜索引擎。 Lucene.NET的核心功能包括: 1. **索引创建与更新**:Lucene.NET允许...

    lucene2.0与其分词工具包

    《Lucene 2.0及其分词工具包详解》 Lucene是一款由Apache软件基金会开发的全文搜索引擎库,专门用于信息检索。它以其强大的搜索功能和高效的性能在Java开发领域中备受推崇。作为一款开源项目,Lucene为开发者提供了...

    Lucene.Net 2.0 源码+文档

    《深入理解Lucene.Net 2.0:源码与文档解析》 Lucene.Net是一个开源的全文搜索引擎库,它是Apache Lucene项目在.NET平台上的实现,由DotLucene发展而来,广泛应用于各种信息检索和文本挖掘场景。这个资料包包含了...

    最新版Lucene.Net盘古分词2.0

    《最新版Lucene.Net盘古分词2.0——深度解析全文索引与中文分词技术》 在当今大数据时代,高效、精准的信息检索成为企业和个人获取信息的关键。其中,全文索引和中文分词技术是实现这一目标的重要工具。本文将围绕...

    Lucene.2.0.API

    《Lucene.2.0.API》是关于开源全文搜索引擎库Lucene的一个重要参考资料,它详尽地记录了Lucene 2.0版本的API接口及其使用方法。Lucene是一个由Apache软件基金会开发的Java全文检索库,它提供了高性能、可扩展的文本...

    lucene-2.0

    《深入理解Lucene 2.0:开源全文检索框架解析》 Lucene 2.0是一款强大的开源全文检索库,由Apache软件基金会开发并维护,是Java编程语言中的一个核心工具,广泛应用于搜索引擎的构建和其他信息检索场景。该版本发布...

    Lucene.net 2.0源码

    首先,Lucene.NET 2.0 的核心概念包括文档(Document)、字段(Field)、索引(Index)和查询(Query)。文档是存储信息的基本单位,可以包含多个字段,每个字段都有其特定的类型,如文本、日期或数字。索引过程将...

    开发自己的搜索引擎《lucene2.0+heritrix》一书对应的源码资料

    这里我们关注的是基于开源项目Lucene 2.0和Heritrix的一本书——《开发自己的搜索引擎》的源码资料。Lucene是一个高性能、全文本搜索库,而Heritrix则是一个强大的网页抓取工具,它们共同构成了搜索引擎的基础架构。...

    lucene2.0+Heritrix配套源码

    3. **索引(Indexing)**:Lucene使用倒排索引,将文档中的词汇与文档位置关联起来,便于快速查找匹配的文档。 4. **查询解析(Query Parser)**:将用户输入的查询字符串转化为可以执行的搜索表达式。 5. **搜索...

    开发自己的搜索引擎Lucene2.0+Heritrix

    ### 开发自己的搜索引擎:Lucene 2.0 + Heritrix #### 一、概述 在构建搜索引擎的过程中,Lucene 和 Heritrix 是两个至关重要的工具。本文将深入探讨这两个工具的功能及其如何协同工作,帮助读者理解如何使用它们...

    Lucene2.0+Heritrix(源代码)

    《构建搜索引擎:剖析Lucene2.0与Heritrix源代码》 在信息化时代,搜索引擎已经成为我们日常获取信息的重要工具。本章节将深入探讨如何利用Lucene2.0和Heritrix这两个开源项目构建一个基本的搜索引擎。首先,我们要...

    一步一步跟我学习Lucene源码之lucene的各种Field

    在深入探讨Lucene Field之前,我们先来了解一下Lucene是什么。Lucene是一个开源的全文搜索引擎库,由Apache软件基金会开发,用Java编写。它提供了一个简单但功能强大的API,允许开发者在应用程序中添加搜索功能。...

    struts2 + spring2.5 + hibernate 3.2 + lucene 2.4 + compass 2.0产品搜索

    struts2 + spring2.5 + hibernate 3.2 + lucene 2.4 + compass 2.0 包含所有jar包,按readme.txt导入并运行即可 开始不用分了................

Global site tag (gtag.js) - Google Analytics