`

<转>浅谈文档索引普遍原理<笔记>

 
阅读更多

--lvpei.cnblogs.com

搜索引擎普遍采用全文检索技术,而其处理的大规模文档本身都是非结构或半结构化信息,文档索引技术是信息全文检索和快速查询的基础。

一、索引概述

索引是一种数据存储的组织结构。索引器用来完成信息索引的建立,维护和管理索引的功能。

倒排索引是一种高效率的索引组织方式,采用字或词作为索引项,能够很好的支持多种检索模型,提供高性能的检索。搜索引擎的索引使用了传统信息检索中的索引模型。索引结构通常组织成按照索引项排列的链表形式,在检索时,使用检索词和索引项进行匹配,直接定位在检索结果所在的列表。

 

二、索引器上下环境

索引器从原始文档中抽取索引项,用于表示文档,并生成文档集合的索引表。索引器运行环境涉及到的主要内容是文本预处理和检索数据库。主要包括原始文本库(网页或者文档),文本解析器(分析网页和文档内容,统一为无格式文档或者中间格式文档),文本中间格式库(去除噪音垃圾信息,完成分词之后的纯文本或者统一的中间格式),索引器(对解析器处理的结果信息进行处理,利用预设的索引项字典建立按索引项排列的链表,并动态更改索引字典),索引字典(词和编码的二元组结构数据库),文本索引库(以索引形式组织存放的数据文件)。

 

三、倒排索引原理

索引技术的核心机制是倒排索引结构。大规模数据一般都是文件形式存储,倒排索引是利用索引关键字直接确定文档列表,最后确定希望找到的文档本身。

 

四、索引分类

索引的分类一般从两个角度考虑,索引处理的索引项的类型(字索引、词索引、短语索引、混合索引)和索引建立更新的形式(静态和动态)。

 

五、高性能索引的关注方向

1-如何提高索引建立的速度。

2-如何减少索引的资源占用。

3-索引使用当中如何合理分配有限的内存资源。

4-如何提高资源的访问速度。

分享到:
评论

相关推荐

    IEnumerable<T>、ICollection<T>、IList<T>、ObservableCollectin<T>和Collection<T>的关系

    在.NET框架中,`IEnumerable&lt;T&gt;`、`ICollection&lt;T&gt;`、`IList&lt;T&gt;`、`ObservableCollection&lt;T&gt;`和`Collection&lt;T&gt;`是几个重要的泛型接口和类,它们在处理集合数据时扮演着不同的角色,提供了不同程度的功能和性能优化。...

    IEnumerable<T>、IEnumerable、ICollection<T>、IList<T>、ObservableCollectin<T>和Collection<T>得关系。

    本文将详细解释`IEnumerable&lt;T&gt;`、`IEnumerable`、`ICollection&lt;T&gt;`、`IList&lt;T&gt;`、`ObservableCollectin&lt;T&gt;`以及`Collection&lt;T&gt;`之间的关系。 首先,`IEnumerable&lt;T&gt;`接口是基础,它定义了一个可以被枚举(即遍历)...

    4d &lt;math&gt; <mi> N </ mi> <mo> = </ mo> <mn> 1 </ mn> &lt;/ math&gt; $$ \ mathcal {N} = 1 $$的状态的渐近增长 超保形指数

    &lt;mi&gt; N &lt;/ mi&gt; &lt;mo&gt; = &lt;/ mo&gt; &lt;mn&gt; 1 &lt;/ mn&gt; &lt;/ math&gt; $$ \ mathcal {N} = 1 $$超保形的超保形索引 四个维度上的场论具有渐近增长的状态,其电荷呈指数增长。 我们的分析采用了类似于Cardy的大电荷限制,对于...

    HTML 5提供了一些新的元素和属性,反映典型的现代用法网站。其中有些是技术上类似<div>和<span>标签,但有一定含义,例如<nav>(网站导航块)和<footer>。这种标签将有利于搜索引擎的索引整理、小屏幕装置和视障人士使用。同时为其他浏览要素提供了新的功能,通过一个标准接口,如<audio>和<video>标记。[3]

    其中有些是技术上类似&lt;div&gt;和&lt;span&gt;标签,但有一定含义,例如&lt;nav&gt;(网站导航块)和&lt;footer&gt;。这种标签将有利于搜索引擎的索引整理、小屏幕装置和视障人士使用。同时为其他浏览要素提供了新的功能,通过一个标准接口...

    C# 解析json格式数据为IList

    例如,如果你有一个JSON数组,你可能希望将其解析为`IList&lt;string&gt;`或`IList&lt;MyCustomClass&gt;`,具体取决于JSON数据的内容。 C#中解析JSON通常使用的是Json.NET库,这是一个非常流行且功能强大的开源库,可以方便地...

    JS遍历ul下的li点击弹出li的索引的实现方法

    &lt;li&gt;a&lt;/li&gt; &lt;li&gt;a&lt;/li&gt; &lt;li&gt;a&lt;/li&gt; &lt;li&gt;a&lt;/li&gt; &lt;li&gt;a&lt;/li&gt; &lt;/ul&gt; &lt;/div&gt; 我们遍历ul 下所有的li 并添加点击事件,一般我们会在for循环里面添加点击事件,但是结果和我们所期盼不一样,那么是为什么呢???? 接...

    SQL2005入门到精通(15)

    第15章 索引和查询优化 312&lt;br&gt;15.1 索引概述 312&lt;br&gt;15.1.1 聚集索引和非聚集索引 312&lt;br&gt;15.1.2 填充因子 312&lt;br&gt;15.1.3 使用目录视图查看索引 313&lt;br&gt;15.2 用CREATE INDEX语句创建索引 313&lt;br&gt;15.2.1 基本语法 ...

    C#List<T>的应用记录

    描述:本文档详细探讨了C#中泛型集合List&lt;T&gt;的使用,特别是其引用特性和如何通过索引访问及修改元素。此外,还深入分析了当List&lt;T&gt;的元素作为方法参数时的行为,并提供了一个具体的代码示例来演示这些概念。 知识点...

    Java搜索引擎的研究与实现(含文档+源码)

    Java搜索引擎的研究与实现(含文档+源码)&lt;br&gt;目录 1&lt;br&gt;摘要 3&lt;br&gt;第一章 引言 4&lt;br&gt;第二章 搜索引擎的结构 5&lt;br&gt;2.1系统概述 5&lt;br&gt;2.2搜索引擎的构成 5&lt;br&gt;2.2.1网络机器人 5&lt;br&gt;2.2.2索引与搜索 5&lt;br&gt;2.2.3 Web...

    搜索引擎系统学习与开发实践总结(相生昌).doc

    8 &lt;br&gt; 概述 8 &lt;br&gt; 切分原理 10 &lt;br&gt; 经验总结 13 &lt;br&gt; 四、索引器 14 &lt;br&gt; 概述 14 &lt;br&gt; 实现原理 14 &lt;br&gt; 经验总结 16 &lt;br&gt; 五、查询器 16 &lt;br&gt; 概述 16 &lt;br&gt; 实现原理 17 &lt;br&gt; 经验总结 19 &lt;br&gt; 六、系统关键...

    SQL2005入门到精通(4)

    50&lt;br&gt;4.4.2 创建惟一索引 51&lt;br&gt;4.4.3 查看表的索引 52&lt;br&gt;4.4.4 删除索引 53&lt;br&gt;4.5 维护数据表 53&lt;br&gt;4.5.1 在表中插入新列 53&lt;br&gt;4.5.2 改变表中列的排列顺序 54&lt;br&gt;4.5.3 自动编号列和标识符列 54&lt;br&gt;4.5.4 可...

    jive.chm

    &lt;br&gt;全文搜索&lt;br&gt; 1 使您的Jive搜索支持中文 &lt;br&gt; 2 关于Jive2中的中文搜索 &lt;br&gt; 3 基于JAVA的全文索引引擎Lucene简介 &lt;br&gt;&lt;br&gt; &lt;br&gt; &lt;br&gt;安全认证&lt;br&gt; 1 Jive2.1.1 License保护原理分析 &lt;br&gt; 2 用Java的加密机制来...

    JavaScript语言参考手册

    目录 &lt;br&gt;·此参考中包含的内容 &lt;br&gt;·轻松上手 &lt;br&gt;·简介 &lt;br&gt;·操作符 &lt;br&gt;·语句 &lt;br&gt;·核心 &lt;br&gt;·文档 &lt;br&gt;·窗口 &lt;br&gt;·表单 &lt;br&gt;·浏览器 &lt;br&gt;·事件和事件句柄 &lt;br&gt;·LiveWire数据库服务 &lt;br&gt;·进程管理...

    C#程序员参考手册(pdf)

    数组&lt;br&gt;第7章 类&lt;br&gt;第8章 结构&lt;br&gt;第9章 接口&lt;br&gt;第10章 枚举&lt;br&gt;第11章 字段&lt;br&gt;第12章 方法&lt;br&gt;第13章 属性&lt;br&gt;第14章 索引器&lt;br&gt;第15章 委托&lt;br&gt;第16章 事件&lt;br&gt;第17章 不安全代码&lt;br&gt;第18章 属性标志&lt;br&gt;第19...

    Jive资料集

    系统设计&lt;br&gt; 1 jive设计思路 &lt;br&gt; 2 jive的工作内幕 &lt;br&gt; 3 Jive源代码研究 &lt;br&gt; 4 Jive中的设计模式 &lt;br&gt; 5 jive学习笔记 &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;数据库设计&lt;br&gt; 1 Jive Forums数据库说明(英文) &lt;br&gt; 2 Jive KB...

    正则表达式教学资料

    &lt;br&gt;&lt;br&gt;索引&lt;br&gt;&lt;br&gt;1._引子&lt;br&gt;2._正则表达式的历史&lt;br&gt;3._正则表达式定义&lt;br&gt;&lt;br&gt;3.1_普通字符&lt;br&gt;3.2_非打印字符&lt;br&gt;3.3_特殊字符&lt;br&gt;3.4_限定符&lt;br&gt;3.5_定位符&lt;br&gt;3.6_选择&lt;br&gt;3.7_后向引用&lt;br&gt;&lt;br&gt;4._各种操作...

    MYSQL培训经典教程(共两部分) 1/2

    数据库优化 177&lt;br&gt;8.1 索引的使用 178&lt;br&gt;8.1.1索引对单个表查询的影响 178&lt;br&gt;8.1.2索引对多个表查询的影响 180&lt;br&gt;8.1.3多列索引对查询的影响 181&lt;br&gt;8.1.4索引的作用 182&lt;br&gt;8.1.5 索引的弊端 182&lt;br&gt;8.1.6 选择...

    MYSQL培训经典教程(共两部分) 2/2

    数据库优化 177&lt;br&gt;8.1 索引的使用 178&lt;br&gt;8.1.1索引对单个表查询的影响 178&lt;br&gt;8.1.2索引对多个表查询的影响 180&lt;br&gt;8.1.3多列索引对查询的影响 181&lt;br&gt;8.1.4索引的作用 182&lt;br&gt;8.1.5 索引的弊端 182&lt;br&gt;8.1.6 选择...

    HTML5参考手册

    HTML5参考手册中还包含了许多其他标签的说明,例如用于定义代码的&lt;code&gt;,定义表格的&lt;caption&gt;、&lt;table&gt;、&lt;th&gt;、&lt;tr&gt;和&lt;td&gt;,定义区块的&lt;div&gt;,以及定义无序和有序列表的&lt;ul&gt;、&lt;ol&gt;和&lt;li&gt;等。 这份参考手册是学习和...

    java文集

    正则表达式&lt;br&gt;lucene索引合并&lt;br&gt;探查Weblogic JDBC Multipool 问题 &lt;br&gt;struts通用Exception处理 &lt;br&gt;Grails中默认数据库HSQLDB点滴&lt;br&gt;从request获取各种路径总结&lt;br&gt;DIV实现的表格自动伸张与收缩&lt;br&gt;java 邮件...

Global site tag (gtag.js) - Google Analytics