`
BuN_Ny
  • 浏览: 85492 次
  • 来自: 济南
社区版块
存档分类
最新评论

12) 第二章 索引:规则(Norms)

阅读更多

 

    在索引阶段,文档(Document)中每个被索引的域(Field)都可能有一个优先权重因数(boost),它是一个浮点值。该值由三部分联合计算得到:文档自身的boost值;每个域的值;Lucene根据各词元在域中的频度算出的boost值;

    得到最终的boost值后,Lucene会通过一些巧妙的方法把它转换成一个字节,并将其存入文档的各个域。待到搜索阶段,每个被查询域的规则都将被加载到内存,将字节解码成浮点数并依此为该文档打分(打出的分数用来为文档排序)。

 

    使用规则时经常遭遇的一个问题是:查询期间的高内存消耗。原因很明显,每个文档的每个域的规则都要在内存中占用一个字节。如果你的索引文件很大,其中包含了大量的文档,而每个文档又包含了许多域,那么,大量内存的占用便是理所当然的!还好,你可以通过调用 Field.setOmitNorms(true); 将规则选项关掉,然而由于同时失去了boost的相关信息,这一操作可能对排序存在着潜在的影响。好在这种影响不大,尤其是当各个域的长度差不多时,或者是你根本没手动设置过boost值时。

 

    注意一点:你需要在索引之前关闭规则选项!如果你想在索引中途做此事,那么,你必选重建整个索引!

 

 

 

3
0
分享到:
评论

相关推荐

    Lucence创建索引

    2. **设置建立索引规则** 3. **建立索引** 4. **写入磁盘/内存** #### 二、关键类及参数详解 在建立索引的过程中,有几个关键的类需要了解: - **IndexWriter** - **Document** - **Field** ##### 1. ...

    Matlab基础与应用教程答案人民邮电出版社.pdf

    二、数组索引 * 数组索引:A(1:3,:) 选取矩阵 A 的第 1 到 3 行,所有列的数据 * 数组索引:A(:,1:2) 选取矩阵 A 的所有行,第 1 到 2 列的数据 * 数组索引:A(2:4,3:4) 选取矩阵 A 的第 2 到 4 行,第 3 到 4 列的...

    norms.pdf

    Norms for Vectors and Matrices norms 是一个线性代数测量工具,用于衡量向量和矩阵的大小。了解norms的概念对于线性代数和科学计算的研究至关重要。在本文中,我们将详细介绍 norms 的定义、性质、类型和应用。 ...

    The Piers-Harris Self-Concept Scale: Norms for behaviorally disordered children

    NORMS FOR BEHAVIORALLY DISORDERED CHILDREN ROBERT B. BLOOM College of William and Mary RICHARD J. SHEA AND BONG-SO0 EUN Pendleton Child Service Center The Piers-Harris Self-concept Scale was ...

    norms-game:游戏

    《norms-game:游戏开发与JavaScript技术解析》 在当今数字化时代,游戏已经成为了人们娱乐生活的重要组成部分。其中,"norms-game"是一款基于JavaScript开发的游戏项目,它展现了JavaScript在游戏开发领域的强大...

    lucene-5.5.3对应的源码文件

    二、Lucene的索引过程 1. 创建索引:通过IndexWriter类,用户可以将文档内容转化为倒排索引。 2. 分析文档:Analyzer负责将文档内容转换为Token流。 3. 添加字段:Document对象用于存储文档信息,Field对象表示...

    Norms_of_Responsible_State_Behavior_in_Cyberspace.pdf

    • Norm 4: Ban loosely controlled third party actors and organizations from performing cyber attacks 不雇佣管控松散的第三方行为体或组织机构参与到网络 活动中 • Norm 5: Encourage and incentivize ...

    lucene自学

    #### 二、核心组件介绍 - **Directory**:目录接口,用于指定存储索引的物理位置。在Lucene中,所有的索引数据都必须存储在一个实现了`Directory`接口的对象中。 - **IndexWriter**:索引写入器,用于创建或更新...

    Selecting gifted children with the Slosson Intelligence Test: 1981 vs. 1961 norms

    Selecting gifted children with the Slosson Intelligence Test: 1981 vs....students ranging in age from 6 to 12 years were scored using both 1961 and 1981 norms. The average 1981 norm score was 5.17 poin

    lp norms in OOC for intrusion detection in SCADA systems.pdf

    论文“lp-norms in One-Class Classification for Intrusion Detection in SCADA Systems”深入探讨了机器学习在SCADA系统中用于入侵检测的应用,特别是采用单类分类算法。作者Patric Nader、Paul Honeine(IEEE会员...

    Lucene 基础指南.doc

    TOKENIZED表示分词索引,UN_TOKENIZED用于不分词的字段(如作者名或日期),NO表示字段不被索引,NO_NORMS则表示不计算词频和长度因子。 - Field.Store:决定字段内容是否存储在索引中。YES存储原文,NO不存储,...

    lucene原理分析

    #### 二、索引结构 Lucene中的索引由多个组成部分构成,下面详细介绍这些组成部分: 1. **域元数据信息**:包括以下属性: - **fnmIndexed**:表示是否对该字段进行索引。 - **termvector**:表示是否保存词向量...

    Elasticsearch 技术解析与实战.zip

    前言 第1章 Elasticsearch入门 1 1.1 Elasticsearch是什么 1 1.1.1 Elasticsearch的历史 2 1.1.2 相关产品 3 1.2 全文搜索 3 1.2.1 Lucene介绍 4 1.2.2 Lucene倒排索引 4 1.3 基础知识 6 1.3.1 Elasticsearch术语及...

    Linux源码剖析

    - **Norms 调节因子文件**:用于计算文档得分的调节因子。 - **Term 向量文件**:如果启用了 Term Vector,则会记录每个文档中每个词汇的出现情况。 - **删除的文档**:记录了已被标记为删除的文档编号。 ### ...

    lucene学习笔记

    二、多索引整合与并行搜索 为了整合多个目录下的索引进行并行搜索,可以使用`ParallelReader`类。具体步骤包括获取两个或多个目录对象,如通过`FSDirectory.getDirectory()`方法指定索引路径;然后创建`...

    Lucene+3.0+原理与代码分析完整版

    #### 二、Lucene 的总体架构 **Lucene** 是一个高性能的全文检索引擎库,其总体架构可以分为以下几个部分: 1. **文档管理**:负责处理文档的读写操作,包括文档的创建、索引的建立以及文档的检索。 2. **索引管理...

    Using and updating local norms

    Using and updating local norms Ptwholopr ~n (he .S I Y X O . 17, IYh-?01 USING AND UPDATING LOCAL NORMS STEPHEN N . ELLIOTT AND B U R K E H . BRETZING ’ Arizona State University The most ...

    Annotated Lucene 中文版 Lucene源码剖析

    - 创建一个简单的索引,并进行基本的查询操作,这是入门Lucene的第一步。 - **Lucene Roadmap**: - 了解Lucene的发展历程及其未来规划对于开发者来说非常重要。 #### 索引文件结构 - **索引数据术语和约定**:...

Global site tag (gtag.js) - Google Analytics