一种基于树形结构的索引方法技术

技术编号:13063641 阅读:61 留言:0更新日期:2016-03-24 02:00
本发明专利技术提出了一种基于树形结构的索引方法,用于中文搜索引擎中对中文网页数据的处理,包括:步骤S100,网页数据预处理;(1)提取网页中的文本信息,生成相应的文本并对文本进行编号;(2)生成网页索引文件;(3)将文本中的标点符号去掉,使文本成为短字符串的集合;步骤S200,建立网页数据索引文件。本发明专利技术采用二元内相关后续树模型为网页数据创建索引,同时考虑了字索引和词索引的优缺点,在减少索引空间的同时提高了检索效率。

【技术实现步骤摘要】

本专利技术涉及数据处理领域,具体涉及。
技术介绍
随着互联网的飞速发展,信息的指数增长,数据形式的多样性,人们很难在海亮的信息中快速地找到符合自己需求的部分。全文数据库的出现,大大改善了这一现状。全文数据库,也称为文本数据库,它是管理海量文本的系统。全文数据库要完成的工作仍然是传统数据库的两大功能:存储和检索,具体而言就是文本数据的存储和任意字符串的检索。作为检索条件的字符串可以是常量型字符串,也可以是正则表达式(或其他方式,比如距离限制等等)表示的一组具有共同特征的字符串集合。目前比较常见和流行的全文检索模型有以下几种模型:署名文件(SignatureFiles)、位图(Bit Map)、倒排表(Inverted List)、Σ2矩阵Pat树和Pat数组等等。这些模型在专家们的努力下,已经相当成熟并在实践中得到广泛应用。从书目索引延伸出来的方法就是现在应用最广泛的倒排表模型。它具有创建索引速度较快的特点,在网络搜索引擎中广泛应用。但其所需的存储空间较大,查询速度较慢。署名文件虽然实现简单,但是要找到一个合适的散列函数和一个宽度适合的矢量非常困难,而且因对象而异。如果没有选择好,则查询结果就会出现相当的不确定性。位图文件索引结构思路简单,使用方便,时间效率高,在布尔检索上尤其高效,但是其空间效率很低,即使使用了位图压缩算法,仍然难以接受。Pat树模型的最大优点是检索效率很高,尤其对模型特殊的检索,如前缀检索、范围检索等检索效率更高。然而同位图模型一样,空间效率极低,而且创建过程中空间开销更大,创建效率也很低。Pat数组是对Pat树的修改,它将Pat树的叶节点串行化就得到了 Pat数组。Pat数组虽然很大程度上压缩了创建过程中的开销,但是,因为采用数组的存储方式,其创建和合并需要移动大量的数据,动态性很难令人满意。
技术实现思路
至少部分的解决现有技术中存在的问题,本专利技术提出,用于中文搜索引擎中对中文网页数据的处理,包括:步骤S100,网页数据预处理;步骤S200,建立网页数据索引文件。其中,步骤S100包括:(1)提取网页中的文本信息,生成相应的文本并对文本进行编号;(2)生成网页索引文件;(3)将文本中的标点符号去掉,使文本成为短字符串的集合。所述网页数据索引是基于二元内相关后续树创建的索引。所述的基于树形结构的索引方法,其中,步骤S100进一步包括:首先对抓取的原始网页进行分类,然后再按照分类分别提取网页中的文本信息,得到分类后的文本信息;生成网页索引文件的过程包括为原始网页的每个分类分别建立网页索引文件。所述的基于树形结构的索引方法,其中,在步骤S200中,建立网页数据索引文件进一步包括:首先,判断每个分类的文本信息的容量,当所述分类的容量小于1GB时,为所述分类的文本信息建立字索引,当所述分类的容量大于等于1GB时,为所述分类的文本信息建立词索引。所述的基于树形结构的索引方法,其中,所述二元内相关后续树定义如下:(1)后续:对文本T中的字符串a1&2来说,a2称为的后续,文本T最后一个字符的后续称为结束符,用“#”来表示;文本中总会有相同的字符出现,具体来说就是有相同的字或词,如果某一个索引项a出现了 k次,a不是文本的结尾,那么a有k个后续,记作a,s = 1,2,…,k ;(2) 一元后续表达式与一元后续树:假设全文T是由字符串&1,a2,…,an,#组成的,如果其中的au= a i2=…=a ik是相同的字符,记为a,而a il+1,ai2+1,…,aik+^别是它们的后续,则所有的a和它的后续就构成了一个一元后续表达式a (all+1, al2+1,…,alk+1),用一棵树来描述此表达式,a是树根,ail+1,ai2+1,…,&^+1是它的后续结点,这棵树就是a的一元后续树;(3) 二元后续表达式与二元后续树:对一元后续表达式进行扩展,如果原文T中有相同的字符串auail+1= ai2ai2+1 =…=aikaik+1,记作ab,则所有的ab和其后续就构成了一个~?兀后g头表达式,记作 a (b (ail+2, 3-12+2)…,a;k+2));(4)a 的二元后续树表示为:a 是树根,ail+1,ai2+1,…,aik+^ a 的后续,(a il+1, tag),(ai2+1, tag2),…,(aik+1, tagk)则作为 a 的后续结点,其中,tagp tag2...,tag#为是以 a il+1,ai2+1,…,aik+1为根的一元后续树中a il+1,ai2+1,…,&^+1的后续所在分支的序号;(5)内相关后续树的定义:由一个源文档库中全部文档的所有索引项的后续树组成的森林,叫做这个源文档库的内相关后续树,当所述后续树为二元后续树时,该内相关后续树为二元内相关后续树。所述的基于树形结构的索引方法,其中,基于二元内相关后续树创建索引的过程具体包括:第一阶段是扫描文本,统计双字频率,也就是统计每个字符后续的个数,为初始化树时分配空间提供参考,具体步骤是:读入文本的开始两个字符A和B,如果B不是文本的结尾,则将双字AB的频度加1,将字串指针后移一个字,统计BC的频度,C是B的后续,循环进行直到文本结尾,则文本中所有双字的频度统计完成,生成该文本的双字频度表;第二阶段是二元内相关后续树的建立过程,初始化二元内相关后续树,为每个索引项建立后续树,再次扫描文本,将文本中所有字符的后续及后续编号填入它的后续树中,直到文本扫描完毕,将建好的二元内相关后续树模型输出到文本形成索引文件。本专利技术采用二元内相关后续树模型为网页数据创建索引,同时考虑了字索引和词索引的优缺点,在减少索引空间的同时提尚了检索效率。【附图说明】图1为本专利技术基于树形结构的索引方法的流程图;【具体实施方式】下面将结合本专利技术的附图,对本专利技术的技术方案进行清楚、完整地描述。这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本专利技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本专利技术的一些方面相一致的装置和方法的例子。首先,对本专利技术中用到一些术语介绍如下:(1)源文档库:源文档库是指由网络爬虫从互联网上抓取的原始网页文件集合,用来建立索引为用户检索使用,该集合不是静态的,根据抓取的策略或者定期批量更新,或者增量更新,主要以保证系统的时新性为主,即将新出现的网页尽量及时的抓取过来建立索引,满足用户的检索需求;(2)预处理:预处理是指对抓取的网页文件进行处理的过程,包括:建立索引网页库、网页信息提取,建立索引网页库就是要实现给定一个网页的URL,在索引网页库中能够找到该URL所对应的网页;网页信息提取就是从网页中提取建立索引所需要的文本信息,包括标题、正文等;(3)文本:源文档库经过预处理步骤的网页信息提取所形成的文本信息的集合,是建立索引的直接对象;(4)分词词典:分词词典是分词操作的基础,是汉语词汇的集合,用来在分词时辨别并切分出文本中的单词;(5)分词操作:分词操作就是将文本切分成词汇组合的过程,预处理后的文本和用户输入的查询字符本文档来自技高网
...

【技术保护点】
一种基于树形结构的索引方法,用于中文搜索引擎中对中文网页数据的处理,包括:步骤S100,网页数据预处理;步骤S200,建立网页数据索引文件。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈虹宇罗阳苗宁
申请(专利权)人:四川神琥科技有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1