一种资源空间模型的存储与访问方法

文档序号:6609935阅读:222来源:国知局
专利名称:一种资源空间模型的存储与访问方法
技术领域
本发明涉及数据库技术领域,特别涉及一种资源空间模型的存储与访问实现方法。
背景技术
信息资源的存储是计算机科学面临的最基本问题之一,是辅助人们进行信息处理的核心技术。常见的信息资源存储方式可分为无结构化存储(如普通文本)、半结构化存储(如超文本标记语言文档和扩展标记语言文档)、结构化存储(如关系数据库表)。无结构存储方式中信息资源的语义通常是隐含和模糊的;半结构化存储中信息资源的语义仅部分明确,如扩展标记语言利用标记来指明文档某部分内容的语义;而结构化存储方式中资源的语义则是显式的,如关系数据库表根据若干预定义的属性来规范资源的存储和检索。
资源空间模型(Resource Space Model)是一种新的结构化资源表示方法,其主要特征是利用分类语义组织资源。整个资源空间由若干轴构成,每根轴代表一个语义特征对资源的分类,类别由轴上的概念表示。每根轴上的概念之间可以存在层次关系,子代概念代表对属于父代概念类别的资源的进一步细分。例如,存在以下资源空间资源空间(性别(男、女),专业(计算机(软件、硬件),历史(古代史、近代史、现代史)))。
该空间有两根轴,分别为“性别”和“专业”。“性别”轴上分类概念有“男”和“女”。“专业”轴上第一层分类概念有“计算机”和“历史”,属于“计算机”的资源可以被其子概念“软件”和“硬件”进一步细分。资源空间中一个点代表一种语义分类,存放所有属于该分类的资源。在参考文献1“Hai Zhuge,Resource spacemodel,its design method and applications(资源空间模型的设计方法和应用),Journalof Systems and Software,Volume72,Issue 1,June2004,Pages71-81”中有对关于资源空间模型的详细说明。
资源空间模型已经具备了较为完善的范式理论指导其构建过程,但目前尚缺乏有效的存储机制,在存储介质上保持资源空间模型的分类语义。与现有技术中的其他空间模型相比,资源空间模型的一个优势在于对资源分类语义的维护,因此,实现资源空间模型在存储介质上的存储时,应当保持资源空间模型的分类语义信息。但现有技术中用于实现其他空间模型存储的机制并不能实现对资源空间模型中分类语义信息的保留。以与资源空间模型较为相近的多维空间模型为例,多维空间模型存储时,要求空间每一维上的坐标存在线性序,而资源空间模型中,每一维(轴)上坐标(概念)只有层次关系,不存在线性序,因此,现有的多维空间存储方法不能直接应用于资源空间模型的存储。如果用常用的关系数据库表作为资源空间模型的存储机制,也会丢失资源空间模型中概念间的层次语义关系,而且在多属性查询时效率不高。
基于资源空间模型的上述特点,需要一种资源空间模型的存储实现方法,以及相应的访问实现方法。

发明内容
本发明的目的是克服现有的存储方法无法存储资源空间模型中概念间的层次语义关系,而且在多属性查询时效率不高的缺陷,从而提供一种资源空间模型的存储方法以及对存储后的资源空间模型进行访问的方法。
为了实现上述目的,本发明提供了一种资源空间模型的存储方法,包括以下步骤步骤1)、输入一个资源空间模型,所述资源空间模型中包含有轴,轴上有表示资源分类的概念,在每个所述轴上,所述概念间存在层次关系;步骤2)、对资源空间模型中的所述轴和概念进行比特串编码,得到相应的多维比特串空间,所述比特串编码保留所述概念间的层次关系;步骤3)、保存所述轴或概念与其比特串编码之间的映射关系;步骤4)、根据所述的输入的资源空间模型,初始化所述多维比特串空间对应的索引树,得到一棵底层索引树。
上述技术方案中,在所述的步骤2)与所述的步骤3)之间,对所述概念的比特串编码进行无损压缩编码。
所述的无损压缩编码将比特串编码中的连续1比特序列用所含1的个数代替。
上述技术方案中,在所述的步骤2)中,所述的比特串编码采用二叉树编码。
在所述的二叉树编码中,首先将所述资源空间模型中每根轴上的概念树森林转换为二叉树,然后将所有轴构成的二叉树森林转换为单棵的二叉树;最后对所述单棵二叉树上指向左子树的边赋值0比特,指向右子树的边赋值1比特;对于所述单棵二叉树上的某一概念,从根节点起到所述概念所在节点经过的边的值拼接起来就是所述概念的比特串编码。
上述技术方案中,在所述的步骤4)中,所述的初始化包括设定所述多维比特串空间的维数,保存单个索引树叶节点的连续磁盘空间大小,保存单个索引树中间节点的连续磁盘空间大小,设定页面负载因子、节点分裂因子、节点重插因子的值。
本发明还提供了一种资源空间模型的访问方法,具体包括以下步骤步骤a)、用户提出资源访问请求,对用户给出的资源访问请求,通过所述的轴或概念与比特串编码间的映射关系将所述的资源访问请求转换为所述多维比特串空间理解的格式;步骤b)、根据资源访问请求,从与多维比特串空间对应索引树的根节点开始查找与资源访问请求相关的叶节点,确定所述叶节点的位置;步骤c)、在所述的叶节点上,实现所述的资源访问请求;步骤d)、返回所述资源访问请求的结果,并利用所述轴或概念与比特串编码间的映射关系将所述结果转化为所述资源空间模型中的资源表示格式,并显示给用户。
上述技术方案中,所述的资源访问请求包括资源插入请求、资源删除请求、资源修改请求、资源范围查询请求和资源精确查询请求。
上述技术方案中,在用户提出资源访问请求前,还需要定义所述多维比特串空间中的分类区域,设定多维比特串空间中的邻近度量标准,定义所述索引树的优化目标,并确定最优子区域的筛选方法和所述分类区域的分裂方法。
所述的定义所述多维比特串空间中的分类区域的具体实现方法包括分类区域对应所述多维比特串空间中一块区域,其在每维上的投影是该维所有概念组成的集合的子集;分类区域是在索引树生成过程中动态产生的,在同一块分类区域中的分类点具有分类语义邻近性。
所述的设定多维比特串空间中的邻近度量标准是指所述的多维比特串空间中分类语义的近似程度,它包括分类点间的邻近度,分类区域间的邻近度,分类点和分类区域间的邻近度,所述分类语义的近似程度通过计算同轴概念在概念层次树上的最短路径长度得到。
上述技术方案中,所述的查找与资源访问请求相关的叶节点是指从根节点开始,根据最优子区域筛选法,每次进入当前节点的最优子区域对应的分支节点,直至到达树的叶节点。
所述的最优子区域是包含插入资源后在空间体积、空间重叠体积和空间周长三方面总体增长最小的那个子区域。
本发明的优点在于1、本发明采用资源空间模型实现对资源的存储可以完整地保持资源的分类语义。
2、本发明的资源空间模型存储方法基于资源的分类语义在磁盘上保存资源,提高了资源语义检索的效率。
3、本发明的资源空间模型存储方法对资源空间模型中的轴和概念进行比特串编码,仅根据概念的比特串码,就能判断其祖先后代关系、父子关系、兄弟关系等语义关系。
4、本发明的资源空间模型存储方法实现了对概念比特串码的可选的压缩编码,避免过长的概念比特串码在存储时占用存储资源过多的问题。
5、本发明的资源空间模型存储方法中定义了概念间的语义距离,该距离反映了人们对概念间语义关系的认识,概念间语义距离可以很容易地通过计算概念的比特串码得到。
6、本发明通过对概念进行比特串编码,使得资源空间模型转换为位于底层的多维比特串空间。基于多维比特串空间可以高效地实现资源的插入、删除、修改、精确查询和范围查询等各种资源操作。
7、多维比特串空间利用分类区域来组织分类语义相似的资源,同时分类区域对应磁盘上一块连续存储空间,因此,资源操作的效率更高。
8、本发明基于概念间语义距离定义了多维比特串空间中分类点间的邻近度,分类区域间的邻近度,分类点和分类区域间的邻近度。基于邻近度的定义设计了优化准则来指导资源访问时最优子区域的遴选,以及分类区域的分裂,使得分类区域中的资源分布更紧凑,减少空白区域,从而降低资源操作的时间。


图1为资源空间模型在一个实施例中的示意图;图2为图1中的资源空间模型用概念层次树的方式表示后的示意图;
图3为对图1中的资源空间模型进行二叉树编码的示意图;图4为图1所示资源空间模型中的各个概念与其比特串编码在磁盘文件中存储的示意图;图5为表示分类区域在某根轴上投影范围的示意图;图6为本发明的资源空间模型的存储方法;图7为本发明的资源空间模型的访问方法。
具体实施例方式
下面结合附图和具体实施方式
对本发明作进一步详细描述针对资源空间模型在存储时需要保留轴上层次语义信息的要求,本发明采用二叉树编码的方式对资源空间模型进行编码,得到资源空间模型中概念的比特串编码,从而形成位于底层的多维比特串空间,然后在多维比特串空间的基础上,实现对资源的相关操作。由于资源空间模型和多维比特串空间的不同,在上述操作过程中,还需要将资源空间模型的操作命令转换为多维比特串空间可以理解的格式,并将最终得到的多维比特串空间的操作结果转换为资源空间模型的资源表示格式。
下面对本发明方法的具体实现过程进行说明图1是一个资源空间模型RS(X(C1(C11,C12,C13),C2(C21,C22)),Y(C3(C31,C32),C4(C41,C42))的示意图,从图中可见,该资源空间模型是一个二维的资源空间模型,在X轴上的第一层有两个概念,分别为C1和C2,对于概念C1做进一步的细分,分为C11,C12,C13,对于概念C2可做进一步的细分,分为C21,C22;在Y轴上的第一层也有两个概念,分别为C3和C4,C3进一步细分为C31,C32,C4进一步细分为C41,C42。上述资源空间内,C2是C21和C22的父亲概念,C21和C22间是兄弟关系。资源空间模型中各个概念间的层次关系可以用图2中的概念层次树的方式表示。
要实现资源空间模型的存储,就要对资源空间模型进行编码,图3描述了如何实现对图1所示资源空间模型进行编码。在图3中,所采用的编码方式为二叉树编码,在编码时,首先将资源空间模型中每根轴上的概念树森林转换为二叉树,然后将所有轴构成的二叉树森林转换为单棵的二叉树;最后对二叉树上指向左子树的边赋值0比特,指向右子树的边赋值1比特。对于二叉树上的某一概念,从根节点起到该概念所在节点经过的边的值拼接起来就是该概念的比特串编码。例如,概念C31的比特串码是100。除了本实施例所提到的上述二叉树编码方式外,在其他的实施例中,还可以对二叉树上指向左子树的边赋值1比特,对指向右子树的边赋值0比特。资源空间模型进行二叉树编码后,得到相应的位于底层的多维比特串空间,由于与资源空间模型相比,所得到的多维比特串空间在逻辑上属于下层,因此多维比特串空间通常也被称为底层多维比特串空间。
在上述编码实现过程中,森林转换为二叉树、二叉树森林转换为单棵二叉树都是成熟的现有技术,因此在本实施例中不对其实现进行解释说明。
完成对资源空间模型的编码后,根据资源空间模型中同层概念数目的多少,决定是否需要对概念的比特串编码进行压缩编码。从前述对资源空间的编码过程可以知道,在一个概念的比特串编码中,0比特代表一次概念细分,1比特代表相应层的一个兄弟概念。由于资源空间模型中概念层次的深度一般不会太大,但同层兄弟概念的个数可能会非常大,所以1比特的个数通常是导致比特串码过长的主要原因。为了节省存储空间和提高检索速度,本发明可根据资源空间模型中同层概念数目的多少来决定是否对概念的比特串编码进行压缩编码。
对概念的比特串编码进行压缩编码时,采用无损压缩编码的方法,它具有多种实现方式。在一个实施例中,对个数超过32的连续1比特序列用所含1的个数代替。例如,比特串序列“0-11111111-11111111-11111111-11111111-111-00-11011”的压缩编码为0-“35”-00-11011。在其它的实施例中,也可对所要代替的连续1比特序列的个数进行调整,如对超过8个的连续1比特序列用所含1的个数代替。上述压缩编码过程中,采用对连续1比特序列的压缩表示可以用一个32位整型值表示最多231-1个连续1比特。因此,经过压缩后的比特串码的上限是用33个整型值来表示,实际应用中远小于该值;经测试,经过压缩后的比特串码平均长度不超过160个比特。对概念的比特串编码进行压缩有利于克服概念的比特串编码过长,不利于存储的缺陷。
在完成对资源空间模型中的轴和概念的比特串编码后,还需要保存轴和概念与它们的比特串编码间的映射关系。概念(轴)与其比特串编码间的对应关系就是所述的映射关系,概念与比特串间的映射保存机制可以保证高效地从给定的概念获取该概念的比特串编码,或从一个概念的比特串编码获取相应的概念。在一个资源空间模型中,所有概念(轴)和它们的比特串编码间的映射关系保存在单一文件中,当保存概念与比特串映射关系的文件大小不超过预定值(如32M byte)时,将该文件直接存入磁盘文件中,并在用户进行资源操作前一次读入内存,在内存中用现有成熟技术(如哈希表)实现双向映射和高效双向查找;当保存概念与比特串映射关系的文件大小超过预定值时,在保存该映射的文件头部建立该映射的索引,采用外索引方式实现概念与比特串编码间的查找。索引的构建可以利用已知的技术。
图4表示了图1所示资源空间模型中的各个概念与其比特串编码在磁盘文件中的存储,这一存储文件被称为模式串文件,通过这一模式串文件很容易知道概念与比特串编码间的关系。
资源空间模型经过上述的编码过程形成多维比特串空间后,还需要对多维比特串空间对应的索引树做初始化操作。这一初始化过程包括设定空间的维数,保存单个索引树叶节点的连续磁盘空间(称为页面)大小,保存单个索引树中间节点(称为索引节点)的连续磁盘空间大小,设定页面负载因子、节点分裂因子、节点重插因子的值等。在初始化过程中所设定的上述参数将影响后续的资源插入、节点分裂等操作,也将影响从外存读取单个索引节点的速度。而在初始化过程中,设置不同的参数,也将生成不同的索引树。
在本步骤中,底层多维比特串空间的索引树是专门针对多维比特串空间的新的空间索引树,不同于现有的空间索引树。它的最大特点就是基于资源空间模型多维层次分类语义来建立索引,维上比特串坐标之间存在非线序的层次语义关系,而现有技术中维上坐标间是线序关系。底层多维比特串空间的索引树又被称为底层索引树。
通过本发明的上述方法实现资源空间模型在计算机系统中的存储后,本发明还提供了一种对资源空间模型的访问方法,以实现对基于资源空间模型的数据库的各种操作。
用户要对基于资源空间模型的数据库进行访问时,首先提出资源访问请求,对于该资源访问请求,通过概念与比特串编码间的映射关系将操作请求转换为底层多维比特串空间可以理解的格式。从资源空间模型自身的特点可以知道,资源空间模型中的轴之间没有线性顺序,每个轴上的兄弟概念之间也没有线性顺序,而在底层多维比特串空间上,轴和同层概念被任意固化成一个序。因此,对于根据资源空间模型给出的资源访问请求,只有转换为底层多维比特串空间可以理解的格式才能进一步在底层多维比特串空间中完成相应的资源操作。例如,对图1所示的资源空间模型,用户想插入资源r(Y=C32,X=C12)LOCATION,其中(Y=C32,X=C12)是资源r的分类语义描述,LOCATION是资源r的位置,在单机环境下可以是文件路径名,在网络环境下可以是统一资源标识符。查找图4中所记载的模式串文件,该资源访问请求将被转化为适合底层多维比特串空间(第一维是X,第二维是Y)的标准形式r(001,1001)LOCATION,其中001是C12的比特串码,1001是C32的比特串码。
基于资源空间模型的数据库根据用户给出的资源访问请求类型,就可以调用基于底层索引树的插入、删除、修改和查询接口,实现相关操作。
但在底层多维比特串空间中实现上述资源操作前,对资源操作中所涉及的相关概念进行说明。
A、定义底层多维比特串空间中的分类区域定义分类区域后,可判断一个概念是否在该分类区域内。一个分类区域对应多维比特串空间的一部分,它包含了具有相似分类语义的资源。分类区域在每维上的投影范围对应资源空间模型中该轴上一个概念集合。在图5中,假设黑色节点是某分类区域中的资源在某轴上对应的所有概念,则该分类区域在此轴上的投影范围为所有阴影节点和黑色节点对应的概念集合,在图5中,Cs是概念层次树在先序遍历下所有黑色节点中排在最前的节点,Ce是所有黑色节点中排在最后面的节点,则某分类区域在该轴上的投影范围在概念层次树先序遍历下的范围为[Cs,Ce]。在本发明中,设定投影范围是为了避免用集合来表示某分类区域中的资源在某轴上对应的所有概念,因为这会导致索引树上层节点所对应分类区域的表示过于复杂。在本发明给出的投影范围的设定下,同一范围中的概念的分类语义也是相近的,这使得该投影范围比较紧凑,减少了分类区域相交的概率。根据概念Cs、Ce和概念C的比特串编码,可以判断C是否属于该范围[Cs,Ce]。因此,也就可以知道一个概念是否属于某一分类区域。
上述的通过比较概念的比特串编码从而判断某一概念是否在某一分类区域内的具体实现方法如下令s是概念Cs的比特串编码,e是概念Ce的比特串编码,t是概念C的比特串编码。设r是s和e的最长公共前缀,s’是s去掉头r剩下的比特串,e’是e去掉头r剩下的比特串,t’是t去掉头r剩下的比特串,x是t’和s’的最长公共前缀,y是t’和e’的最长公共前缀,p是t’去掉头x剩下的比特串,q是s’去掉头x剩下的比特串,m是t’去掉头y剩下的比特串。当且仅当以下条件成立时,C属于范围[Cs,Ce](1)r是t的前缀且不等于t;(2)如果t’以0开头,则x等于s’,或者p以1开头且q以0开头;如果t’以1开头,则当t’不是e’的前缀或t’等于e’时,m是空串或以0开头。
B、定义底层多维比特串空间的“邻近”度量标准该标准反映了分类语义的近似程度,它分为分类点间的邻近,分类区域间的邻近,分类点和分类区域间的邻近。分类语义的近似程度与轴上概念间的语义相似度(或称为语义距离)有关,而同轴概念之间的语义相似度(或语义距离)等于它们在概念层次树上的最短路径长度。轴上概念间的语义距离具有以下特征(a)如果两概念C和C’中C是C’的祖先节点,则C’是越远的后代,它们的语义距离越远,反之依然;(b)如果两概念C和C’不存在祖先后代关系,假定C”是它们的最近公共祖先节点,则当C’是C”越远的后代,C和C’的语义距离越远;当C是C”越远的后代,C和C’的语义距离越远;(c)如果C和C’是兄弟关系,则另一C”到C的语义距离应该等于C”到C’的语义距离;(d)语义距离满足对称性,即C和C’的语义距离等于C’和C的语义距离;(e)语义距离满足正值性,即任何C和C’的语义距离都不小于0;(f)语义距离满足严格正值性,即如果C和C’的语义距离等于0,则C和C’是同一概念,反言之,只有相同概念的语义距离为0。
利用上述的同轴概念间的语义相似度可计算分类语义间的邻近度,例如,两分类点之间的邻近度可以用它们在各维上语义距离的和表示;在计算分类点和分类区域间的邻近度时,首先计算分类点和分类区域在每一维上的投影间的语义距离,然后对这些语义距离求和;计算分类区域间的邻近度时,可化归为计算分类点和分类区域间的邻近度。上述计算邻近度的操作也可以有不同于本实施例的实现方式,如在计算分类点和分类区域间的邻近度时,也可以首先计算分类点和分类区域在每一维上的投影间的语义距离,然后对这些语义距离求平方和的根。
C、定义多维比特串空间中的底层索引树的优化目标对底层索引树进行优化以使得搜索资源时需要访问的节点较少,以提高搜索效率。衡量索引树优化目标的指标有三类,包括分类区域的体积、分类区域间重叠体积和分类区域周长。对上述三个指标值的计算是成熟的现有技术,利用上面给出的语义距离定义可以计算得到。
根据上述的索引树优化目标,本发明给出了多维比特串空间中资源访问时最优子区域筛选方法最优子区域是包含插入资源后在空间体积、空间重叠体积和空间周长三方面总体增长最小的那个子区域。同时,本发明还给出了多维比特串空间中分类区域的分裂标准分裂成的两个子分类区域间距离要远、总体积要小、重叠体积要小和总周长要短。根据上述的分裂标准,分类区域的分裂过程如下第一步,从所有子分类区域中选取两个最远的作为种子;第二步,根据分裂标准将剩下的分类区域逐一分配给某个种子;第三步,属于第一个种子的子分类区域构成分裂得到的第一个分类区域,属于第二个种子的子分类区域构成分裂得到的第二个分类区域。
本实施例中,根据分裂标准,提供了一种最优的分裂方法,但在实际使用中也可以采用其他的分裂方法。例如,基于本实施例中所述的分裂标准,首先选择两个子分类区域作为种子,然后根据分裂标准将剩余的子分类区域逐一分配给种子,最后根据子分类区域所属的种子将整个区域分裂成两个区域。在上述分裂过程中,作为种子的两个子分裂区域不要求距离最远。
在完成上述对多维比特串空间中分类区域的定义、多维比特串空间中邻近度量标准的确定、索引树优化目标的定义,并确定了最优子区域筛选方法、分类区域的分裂方法后,对资源的插入、删除、查询等操作进行具体说明。
在多维比特串空间中插入资源时,由于在底层索引树的叶节点中包含有若干个分类点,而每个分类点又包含有若干资源,因此应当首先在底层索引树中查找可插入资源的叶节点,然后在叶节点的相关分类点中插入资源。其具体实现过程如下给定资源,从底层索引树的根节点开始,根据前文提到的最优子区域筛选方法,每次进入当前节点的最优子区域所对应的分支节点,直至到达底层索引树的叶节点。在所找到的叶节点中查找给定资源所属分类点,找到,则将资源插入该分类点,否则,新建给定资源对应的分类点,并将资源加入其中。新建分类点可能导致叶节点的上溢,如果没有上溢,则结束插入过程;如果上溢,则该叶节点分裂成两个叶节点,将其中新生成的叶节点加入父节点,如果父节点也上溢,按同样过程处理,直至根结点。如果根结点也分裂,则新建一个根结点,其孩子节点为原根结点分裂得到的两个节点。
在多维比特串空间中删除资源时,也要首先在底层索引树中查找资源所在的叶节点,然后在该叶节点下查找相关的分类点,在分类点下删除资源。其具体实现过程如下给定资源,先查找包含该资源的叶节点。从底层索引树的根节点开始,选择分类区域包含给定资源的子节点,直到到达某个叶节点。如果该过程中当前节点的所有子节点的分类区域都不包含给定资源对应的分类点,说明资源不存在,结束删除过程;如果找到的叶节点中所有分类点都不等于给定资源的分类点,说明资源不存在,结束删除过程;如果找到的叶节点包含给定资源对应的分类点,但该分类点中未存储给定资源,结束删除过程;如果在叶节点的分类点中存在相应的资源,则删除之。如果包含给定资源的空间分类点中资源个数在给定资源删除后为零,则删除该分类点。分类点的删除可能导致叶节点对应存储页面的下溢。如果没有下溢,则结束删除过程;反之,将叶节点中所有分类点重新插入树中,并从父节点中删除该叶节点。如果导致父节点下溢,则将父节点中所有子节点重新插入到树中倒数第二层,即这些子节点原先所在的层。递归执行该过程,直至根结点。
在多维比特串空间中修改资源时,其实现过程与删除过程相似,因此,不再对其具体实现过程进行说明。
在多维比特串空间中对资源进行查询的种类包括范围查询和精确查询,资源删除过程已经包括了资源的精确查询,因此,不再对其具体实现过程进行说明。
对资源做范围查询是在给出一个指定范围的基础上,检查所要查询的资源是否在指定的范围内。对资源做范围查询的具体实现过程如下给出指定范围,从树根节点开始,选择分类区域与指定范围相交的子节点,直到到达某个叶节点,该叶节点为可能包含所要查询资源的节点,如果这一查找过程中当前节点的所有子节点的分类区域都不和给定范围相交,说明资源不存在,查询返回结果为空,如果找到的叶节点不包含给定范围内的分类点,查询返回结果为空;反之,返回在给定范围内的所有分类点中的所有资源。
在完成上述的资源操作后,对于需要向用户返回资源操作结果的相关操作,如精确查询或范围查询的返回结果,利用轴和概念与比特串编码间的映射关系将其转化为资源空间模型中的资源表示格式,并显示给用户。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
权利要求
1.一种资源空间模型的存储方法,包括以下步骤步骤1)、输入一个资源空间模型,所述资源空间模型中包含有轴,轴上有表示资源分类的概念,在每个所述轴上,所述概念间存在层次关系;步骤2)、对资源空间模型中的所述轴和概念进行比特串编码,得到相应的多维比特串空间,所述比特串编码保留所述概念间的层次关系;步骤3)、保存所述轴或概念与其比特串编码之间的映射关系;步骤4)、根据所述的输入的资源空间模型,初始化所述多维比特串空间对应的索引树,得到一棵底层索引树。
2.根据权利要求1所述的资源空间模型的存储方法,其特征在于,在所述的步骤2)与所述的步骤3)之间,对所述概念的比特串编码进行无损压缩编码。
3.根据权利要求2所述的资源空间模型的存储方法,其特征在于,所述的无损压缩编码将比特串编码中的连续1比特序列用所含1的个数代替。
4.根据权利要求1或2所述的资源空间模型的存储方法,其特征在于,在所述的步骤2)中,所述的比特串编码采用二叉树编码。
5.根据权利要求4所述的资源空间模型的存储方法,其特征在于,在所述的二叉树编码中,首先将所述资源空间模型中每根轴上的概念树森林转换为二叉树,然后将所有轴构成的二叉树森林转换为单棵的二叉树;最后对所述单棵二叉树上指向左子树的边赋值0比特,指向右子树的边赋值1比特;对于所述单棵二叉树上的某一概念,从根节点起到所述概念所在节点经过的边的值拼接起来就是所述概念的比特串编码。
6.根据权利要求1或2所述的资源空间模型的存储方法,其特征在于,在所述的步骤4)中,所述的初始化包括设定所述多维比特串空间的维数,保存单个索引树叶节点的连续磁盘空间大小,保存单个索引树中间节点的连续磁盘空间大小,设定页面负载因子、节点分裂因子、节点重插因子的值。
7.一种资源空间模型的访问方法,具体包括以下步骤步骤a)、用户提出资源访问请求,对用户给出的资源访问请求,通过所述的轴或概念与比特串编码间的映射关系将所述的资源访问请求转换为所述多维比特串空间理解的格式;步骤b)、根据资源访问请求,从与多维比特串空间对应索引树的根节点开始查找与资源访问请求相关的叶节点,确定所述叶节点的位置;步骤c)、在所述的叶节点上,实现所述的资源访问请求;步骤d)、返回所述资源访问请求的结果,并利用所述轴或概念与比特串编码间的映射关系将所述结果转化为所述资源空间模型中的资源表示格式,并显示给用户。
8.根据权利要求7所述的资源空间模型的访问方法,其特征在于,所述的资源访问请求包括资源插入请求、资源删除请求、资源修改请求、资源范围查询请求和资源精确查询请求。
9.根据权利要求7所述的资源空间模型的访问方法,其特征在于,在用户提出资源访问请求前,还需要定义所述多维比特串空间中的分类区域,设定多维比特串空间中的邻近度量标准,定义所述索引树的优化目标,并确定最优子区域的筛选方法和所述分类区域的分裂方法。
10.根据权利要求9所述的资源空间模型的访问方法,其特征在于,所述的定义所述多维比特串空间中的分类区域的具体实现方法包括分类区域对应所述多维比特串空间中一块区域,其在每维上的投影是该维所有概念组成的集合的子集;分类区域是在索引树生成过程中动态产生的,在同一块分类区域中的分类点具有分类语义邻近性。
11.根据权利要求9所述的资源空间模型的访问方法,其特征在于,所述的设定多维比特串空间中的邻近度量标准是指所述的多维比特串空间中分类语义的近似程度,它包括分类点间的邻近度,分类区域间的邻近度,分类点和分类区域间的邻近度,所述分类语义的近似程度通过计算同轴概念在概念层次树上的最短路径长度得到。
12.根据权利要求7所述的资源空间模型的访问方法,其特征在于,所述的查找与资源访问请求相关的叶节点是指从根节点开始,根据最优子区域筛选法,每次进入当前节点的最优子区域对应的分支节点,直至到达树的叶节点。
13.根据权利要求12所述的资源空间模型的访问方法,其特征在于,所述的最优子区域是包含插入资源后在空间体积、空间重叠体积和空间周长三方面总体增长最小的那个子区域。
全文摘要
本发明公开了一种资源空间模型的存储方法,包括输入一个资源空间模型;对资源空间模型中的所述轴和概念进行比特串编码,得到相应的多维比特串空间,所述比特串编码保留所述概念间的层次关系;保存轴或概念与其比特串编码之间的映射关系;根据所述的输入的资源空间模型,初始化所述多维比特串空间对应的索引树,得到一个底层索引树。本发明还公开了一种资源空间模型的访问方法。本发明可以完整地保持资源的分类语义,并可提高资源语义检索的效率。
文档编号G06F17/30GK101071444SQ200710117639
公开日2007年11月14日 申请日期2007年6月20日 优先权日2007年6月20日
发明者诸葛海, 何超 申请人:中国科学院计算技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1