CN105608092A - 一种创建动态索引的方法及装置 - Google Patents

一种创建动态索引的方法及装置 Download PDF

Info

Publication number
CN105608092A
CN105608092A CN201410680195.9A CN201410680195A CN105608092A CN 105608092 A CN105608092 A CN 105608092A CN 201410680195 A CN201410680195 A CN 201410680195A CN 105608092 A CN105608092 A CN 105608092A
Authority
CN
China
Prior art keywords
node
index
path
document
node element
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410680195.9A
Other languages
English (en)
Other versions
CN105608092B (zh
Inventor
彭川
郑程光
孙伟丰
罗正海
李�浩
王博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New Founder Holdings Development Co ltd
Original Assignee
Peking University Founder Information Industry Group Co Ltd
Peking University Founder Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peking University Founder Information Industry Group Co Ltd, Peking University Founder Group Co Ltd filed Critical Peking University Founder Information Industry Group Co Ltd
Priority to CN201410680195.9A priority Critical patent/CN105608092B/zh
Publication of CN105608092A publication Critical patent/CN105608092A/zh
Application granted granted Critical
Publication of CN105608092B publication Critical patent/CN105608092B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种创建动态索引的方法及装置,涉及数据库存储技术领域。该创建动态索引的方法包括:获取可扩展标识语言XML文档中需要建立索引的元素节点;为需要建立索引的所述元素节点设置标识,并将具有所述标识的元素节点保存至所述XML文档的节点存储表中;从所述XML文档的节点路径表中获取具有所述标识的元素节点的节点路径,在所述节点路径上创建索引,并将所述索引保存至节点路径索引元数据表中。用户能够灵活的创建、删除及管理索引,在满足用户查询需求的基础上,节省了数据库的存储空间,提高数据库的查询效率。

Description

一种创建动态索引的方法及装置
技术领域
本发明涉及数据库存储技术领域,特别涉及一种创建动态索引的方法及装置。
背景技术
XML数据库管理系统(XML-DBMS)是近年快速发展的一种新型的数据库管理系统(DBMS),它存储和检索的数据是XML文档。XML数据的检索和更新语言是有W3C制定的标准的XQuery和XQueryUpdate。XQuery系列语言基于序列数据模型(XDM),即XQuery中任意数据都是一个序列,序列由若干个有序的项目(item)的组成;一个项目是一个原子值或者一个XDM节点,一个XDM节点是XML文档的7种节点之一。基于这样的数据模型,最自然和高效的XML数据存储方案就是把XML文档存储为节点。
在XML-DBMS中存储XML文档的实体称为容器,一个容器中存储任意多个XML文档的数据内容,而这个容器由若干个数据表支撑,分别存储这些XML文档的各个方面的数据和结构信息,包括节点数据,节点间关系,路径数据,各种索引,各种统计信息等。数据表存储的单位是数据行,一个数据表中含有若干个数据行,并且可以通过索引快速查找到特定的数据行。
XML文档内容被作为节点数据存储在一个节点表中,在XDM的7种节点中,把属性节点,名字空间节点,文本节点,注释节点和处理指令节点都存放在它们的父亲节点(必然是元素节点)中,因此节点表中只存储元素节点和文档节点。文档节点存储一个XML文档的元数据信息,而文档的内容则存储在这个文档的所有的元素节点中。
XML-DBMS的一大类典型应用就是把它作为文档数据库来使用。作为文档数据库,用户会有大量的查询xml文档中某条路径下的某个节点的操作。这就要求我们的数据库要实时高效的查询出结果,所以我们就在往容器中加文档的时候,在xml文档中的每条路径上都创建了基于这个节点的路径索引,这样的确满足了用户的基于某条路径的查询需求。但对用户来说,不需要对xml文档的每条路径都进行查询操作,而对xml文档中的每条路径都创建节点的路径索引,会对XML-DBMS的存储空间会造成极大的浪费。
发明内容
本发明的目的在于提供一种创建动态索引的方法及装置,用户能够根据自己是需求为需要建立索引的节点路径建立索引,既满足了用户的查询要求,还节省了数据库的存储空间。
为了达到上述目的,本发明实施例提供一种创建动态索引的方法,包括:
获取可扩展标识语言XML文档中需要建立索引的元素节点;
为需要建立索引的所述元素节点设置标识,并将具有所述标识的元素节点保存至所述XML文档的节点存储表中;
从所述XML文档的节点路径表中获取具有所述标识的元素节点的节点路径,在所述节点路径上创建索引,并将所述索引保存至节点路径索引元数据表中。
其中,所述XML文档的节点存储表包含:一个文档节点及多个元素节点,其中,所述文档节点用于存储所述XML文档的元数据和根元素节点ID,所述元素节点用于存储本元素节点的属性节点、名字空间节点、文本子节点、处理指令子节点、注释子节点以及本元素节点与其他元素节点的关系。
其中,所述方法还包括:
响应用户的删除预设文档中预设节点路径的索引的操作;
根据所述预设文档的ID和预设节点路径的ID,从所述节点路径索引元数据表中查询所述预设节点路径上是否存在索引;
若存在索引,则从所述节点路径索引元数据表中删除所述节点路径的索引。
其中,所述方法还包括:
响应用户在所述节点存储表中插入一元素节点的操作;
若用户需要为所述元素节点建立索引,则为所述元素节点设置所述标识并根据所述标识为所述元素节点的节点路径创建索引。
其中,所述方法还包括:
响应用户修改所述节点存储表中一元素节点的文本节点的值的操作;
根据所述元素节点的ID从所述节点路径索引元数据表中查询所述元素节点的节点路径上是否存在索引;
若存在索引,则根据所述修改对应修改所述节点路径索引元数据表中的节点路径索引。
其中,所述方法还包括:
响应用户删除一元素节点的操作;
根据所述元素节点的ID从所述节点路径索引元数据表查询该元素节点的节点路径上是否存在索引;
如果存在索引,则从所述节点存储表中删除该元素节点的同时从所述节点路径索引元数据表中删除所述索引。
其中,删除所述元素节点后,所述方法还包括:
从所述节点路径表中查询是否存在与该元素节点的节点路径相同的其他元素节点;
若不存在与该元素节点的节点路径相同的其他元素节点,从所述节点路径索引元数据表中删除该节点路径的其他数据。
本发明实施例还提供一种创建动态索引的装置,包括:
获取模块,用于获取可扩展标识语言XML文档中需要建立索引的元素节点;
设置模块,用于为需要建立索引的所述元素节点设置标识,并将具有所述标识的元素节点保存至所述XML文档的节点存储表中;
第一创建模块,用于从所述XML文档的节点路径表中获取具有所述标识的元素节点的节点路径,在所述节点路径上创建索引,并将所述索引保存至节点路径索引元数据表中。
其中,所述XML文档的节点存储表包含:一个文档节点及多个元素节点,其中,所述文档节点用于存储所述XML文档的元数据和根元素节点ID,所述元素节点用于存储本元素节点的属性节点、名字空间节点、文本子节点、处理指令子节点、注释子节点以及本元素节点与其他元素节点的关系。
其中,所述装置还包括:
第一删除模块,用于响应用户的删除预设文档中预设节点路径的索引的操作;
第一查询模块,用于根据所述预设文档的ID和预设节点路径的ID,从所述节点路径索引元数据表中查询所述预设节点路径上是否存在索引;
第二删除模块,用于若存在索引,则从所述节点路径索引元数据表中删除所述节点路径的索引。
其中,所述装置还包括:
插入模块,用于响应用户在所述节点存储表中插入一元素节点的操作;
第二创建模块,用于若用户需要为所述元素节点建立索引,则为所述元素节点设置所述标识并根据所述标识为所述元素节点的节点路径创建索引。
其中,所述装置还包括:
第一修改模块,用于响应用户修改所述节点存储表中一元素节点的文本节点的值的操作;
第二查询模块,用于根据所述元素节点的ID从所述节点路径索引元数据表中查询所述元素节点的节点路径上是否存在索引;
第二修改模块,用于若存在索引,则根据所述修改对应修改所述节点路径索引元数据表中的节点路径索引。
其中,所述装置还包括:
第三删除模块,用于响应用户删除一元素节点的操作;
第三查询模块,用于根据所述元素节点的ID从所述节点路径索引元数据表查询该元素节点的节点路径上是否存在索引;
第四删除模块,用于如果存在索引,则从所述节点存储表中删除该元素节点的同时从所述节点路径索引元数据表中删除所述索引。
其中,所述装置还包括:
第四查询模块,用于从所述节点路径表中查询是否存在与该元素节点的节点路径相同的其他元素节点;
第五删除模块,用于若不存在与该元素节点的节点路径相同的其他元素节点,从所述节点路径索引元数据表中删除该节点路径的其他数据。
本发明的上述技术方案至少具有如下有益效果:
本发明实施例的创建动态索引的方法及装置中,根据用户意愿为需要建立索引的元素节点对应的节点路径创建索引,同时对应的在节点路径索引元数据表中保存其索引;用户能够灵活的创建、删除及管理索引,在满足用户查询需求的基础上,节省了数据库的存储空间,提高数据库的查询效率。
附图说明
图1表示本发明实施例的创建动态索引的方法的基本步骤示意图;
图2表示本发明实施例的创建动态索引的方法中删除一路径索引的步骤示意图;
图3表示本发明实施例的创建动态索引的方法中插入一元素节点的步骤示意图;
图4表示本发明实施例的创建动态索引的方法中修改一元素节点的文本节点的值的步骤示意图;
图5表示本发明实施例的创建动态索引的方法中删除一元素节点的步骤示意图;
图6表示本发明实施例的创建动态索引的装置的结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有技术中对所有元素节点的节点路径均建立索引,而用户并不需要查询所有的节点,严重浪费了数据库的存储空间的问题,提供一种创建动态索引的方法及装置,根据用户意愿为需要建立索引的元素节点对应的节点路径创建索引,同时对应的在节点路径索引元数据表中保存其索引;用户能够灵活的创建、删除及管理索引,在满足用户查询需求的基础上,节省了数据库的存储空间,提高数据库的查询效率。
如图1所示,本发明实施例提供一种创建动态索引的方法,包括:
步骤11,获取可扩展标识语言XML文档中需要建立索引的元素节点;
步骤12,为需要建立索引的所述元素节点设置标识,并将具有所述标识的元素节点保存至所述XML文档的节点存储表中;
步骤13,从所述XML文档的节点路径表中获取具有所述标识的元素节点的节点路径,在所述节点路径上创建索引,并将所述索引保存至节点路径索引元数据表中。
本发明的上述实施例中,XML文档的每一个元素节点都有一条路径,且这些所有的元素节点的所有路径均存放在所述节点路径表中;具体的,该节点路径表中以节点路径编号(pathID)为键值,指向节点路径表中对应的元素节点的具体路径。而所有的元素节点都存储在所述节点存储表中,该节点存储表中具体存储节点的标识(nodeID)、该节点对应的节点路径的pathID、该节点所在的文档的docID等值。
例如在节点存储表中,在docID,pathID和文本节点三列组合建立一个索引,就是在节点的路径上建立了节点的路径索引;用户在通过xquery语句查询的时候,只需要输入某个xml文档下的某条路径下,文本节点是什么作为查询条件,就能通过该节点表上的路径索引查到用户想要的数据。
比如,数据库中存储为<a>
<b>
<c>C1</c>
<c>C2</c>
</b>
</a>
路径/a/b/c下有两个元素节点C1,C2,他们的路径都是/a/b/c。
当查询语句为for$iindoc(“test/test.xml”)/a/b/cwhere$i/text()=”C1”return$i
通过路径索引查询结果就是<c>C1</c>。
本发明的具体实施例中,XML数据库管理系统中存储XML文档的实体称为容器,每个容器中存储有一张所述节点路径索引元数据表,该节点路径索引元数据表用来管理和维护用户根据自身意愿动态创建的自定义的节点路径,且这些节点路径是需要在节点存储表上建立索引的。具体的,该节点路径索引元数据表中存储了路径索引的名字,节点路径的pathID,节点路径所在文档的docID,文档容器的ID以及节点的路径等字段信息。
具体的,本发明上述实施例中,所述XML文档的节点存储表包含:一个文档节点及多个元素节点,其中,所述文档节点用于存储所述XML文档的元数据和根元素节点ID,所述元素节点用于存储本元素节点的属性节点、名字空间节点、文本子节点、处理指令子节点、注释子节点以及本元素节点与其他元素节点的关系。
具体的,当用户需要新增一个XML文档到XML数据库管理系统中时,按照通常的方式存储XML文档的文档节点和元素节点数据。在添加XML文档命令后面指定一个参数,并由用户指定需要在该文档的哪些节点路径上建立索引。当缺省值(系统默认状态)是不在添加的文档的节点路径上建立索引时,如果用户指定了需要建立索引的参数并给出了需要添加节点路径的索引的路径值,则XML数据库管理系统在解析文档的时候,每解析出一个元素节点,然后把解析出的元素节点插入到节点存储表中的时候,这时给一个标识告诉存储引擎是否要在这个元素节点上建立路径索引。同时,在节点路径索引元数据表添加相应的记录。
例如:XML文档的原始存储方式如下:
当需要添加一个路径索引时,
addDoctestbooks.xmlon/bookstore/book/name–fD:\books.xmlwithair
其中,test是容器名字;
books.xml是添加的xml文档名字;
/bookstore/book/name是需要建立节点路径索引的路径;
air是这个路径索引的索引名字。
当用户以缺省值添加文档的时候,就是说用户没有在添加的文档中建立对应的节点的路径索引。然后,用户在以后的查询中,有需要在已经添加的文档中建立路径索引的需求,对于这种情况,我们依然可以动态的添加指定的节点路径上的索引,通过扫节点存储表中的每一个元素节点,找到需要建立节点路径索引的元素节点。然后,建立其对应的节点路径索引。同样的,需要在节点路径索引元数据表上添加相应的记录。
创建一个节点路径索引的过程如下:
createIndexOntestbooks.xmlon/bookstore/book/authorwithidx
其中,test是容器名字;
books.xml是添加的xml文档名字;
/bookstore/book/author是需要建立节点路径索引的路径;
idx是这个路径索引的索引名字。
进一步的,本发明的上述实施例中,如图2所示,所述方法还包括:
步骤21,响应用户的删除预设文档中预设节点路径的索引的操作;
步骤22,根据所述预设文档的ID和预设节点路径的ID,从所述节点路径索引元数据表中查询所述预设节点路径上是否存在索引;
步骤23,若存在索引,则从所述节点路径索引元数据表中删除所述节点路径的索引。
本发明的具体实施例中,删除文档的节点路径的索引时,用户指定了删除哪个文档,哪条路径上的节点索引。XML数据库管理系统首先会根据用户给定的文档ID和节点的路径来查询节点路径索引表。查看是该文档的用户指定的路径上是否有节点路径索引。如果没有,则会给用户一个反馈;如果有,则直接删除其对应的索引。同时,节点路径索引元数据表也要做相应的删除操作。
进一步的,本发明的上述实施例中,如图3所示,所述方法还包括:
步骤31,响应用户在所述节点存储表中插入一元素节点的操作;
步骤32,若用户需要为所述元素节点建立索引,则为所述元素节点设置所述标识并根据所述标识为所述元素节点的节点路径创建索引。
本发明的具体实施例中,在节点存储表中插入一个节点,首先去节点路径索引元数据表去检查该节点是否需要建立路径索引。如果需要建立,给存储引擎一个标志位,告诉它这个节点需要建立路径索引。
进一步的,本发明的上述实施例中,如图4所示,所述方法还包括:
步骤41,响应用户修改所述节点存储表中一元素节点的文本节点的值的操作;
步骤42,根据所述元素节点的ID从所述节点路径索引元数据表中查询所述元素节点的节点路径上是否存在索引;
步骤43,若存在索引,则根据所述修改对应修改所述节点路径索引元数据表中的节点路径索引。
本发明的具体实施例中,修改一个元素节点的文本节点的值,首先也是要检查该元素节点上是否有节点路径索引。如果有,则它对应的路径索引也要修改。
进一步的,本发明的上述实施例中,如图5所示,所述方法还包括:
步骤51,响应用户删除一元素节点的操作;
步骤52,根据所述元素节点的ID从所述节点路径索引元数据表查询该元素节点的节点路径上是否存在索引;
步骤53,如果存在索引,则从所述节点存储表中删除该元素节点的同时从所述节点路径索引元数据表中删除所述索引。
较佳的,删除所述元素节点后,所述方法还包括:
步骤54,从所述节点路径表中查询是否存在与该元素节点的节点路径相同的其他元素节点;
步骤55,若不存在与该元素节点的节点路径相同的其他元素节点,从所述节点路径索引元数据表中删除该节点路径的其他数据。
本发明的具体实施例中,删除一个元素节点,首先要通过路径索引元数据表检查该元素节点是否有路径索引。如果有,则删除该节点的时候,它对应的路径索引也要删掉。需要注意的是,如果删除这个元素节点后,在该文档中再也没有与这个元素节点拥有相同路径的元素节点了,则这时需要把路径索引的元数据表中的这个路径索引的元数据删掉。
本发明的上述实施例在XML数据库管理系统中动态的创建节点路径上的索引,比以前的做法更有效的节省了XML-DBMS的存储空间,并且更灵活有效地满足了用户的需求。动态的创建节点路径上的索引,使XML数据库管理系统更灵活,用户可以根据自身的需求,做出是否要创建索引的操作,使用起来更灵活方便,而且还不会造成XMLDBMS系统空间的浪费;同时本发明在现有的节点数据存储方案上,经过灵活有效的改进,以很小的代价在节点路径上添加了可动态创建节点路径索引的功能,保证了系统开发的可实施性。
为了更好的实现上述目的,如图6所示,本发明实施例还提供一种创建动态索引的装置,包括:
获取模块61,用于获取可扩展标识语言XML文档中需要建立索引的元素节点;
设置模块62,用于为需要建立索引的所述元素节点设置标识,并将具有所述标识的元素节点保存至所述XML文档的节点存储表中;
第一创建模块63,用于从所述XML文档的节点路径表中获取具有所述标识的元素节点的节点路径,在所述节点路径上创建索引,并将所述索引保存至节点路径索引元数据表中。
具体的,本发明的上述实施例中,所述XML文档的节点存储表包含:一个文档节点及多个元素节点,其中,所述文档节点用于存储所述XML文档的元数据和根元素节点ID,所述元素节点用于存储本元素节点的属性节点、名字空间节点、文本子节点、处理指令子节点、注释子节点以及本元素节点与其他元素节点的关系。
具体的,本发明的上述实施例中,所述装置还包括:
第一删除模块,用于响应用户的删除预设文档中预设节点路径的索引的操作;
第一查询模块,用于根据所述预设文档的ID和预设节点路径的ID,从所述节点路径索引元数据表中查询所述预设节点路径上是否存在索引;
第二删除模块,用于若存在索引,则从所述节点路径索引元数据表中删除所述节点路径的索引。
具体的,本发明的上述实施例中,所述装置还包括:
插入模块,用于响应用户在所述节点存储表中插入一元素节点的操作;
第二创建模块,用于若用户需要为所述元素节点建立索引,则为所述元素节点设置所述标识并根据所述标识为所述元素节点的节点路径创建索引。
具体的,本发明的上述实施例中,所述装置还包括:
第一修改模块,用于响应用户修改所述节点存储表中一元素节点的文本节点的值的操作;
第二查询模块,用于根据所述元素节点的ID从所述节点路径索引元数据表中查询所述元素节点的节点路径上是否存在索引;
第二修改模块,用于若存在索引,则根据所述修改对应修改所述节点路径索引元数据表中的节点路径索引。
具体的,本发明的上述实施例中,所述装置还包括:
第三删除模块,用于响应用户删除一元素节点的操作;
第三查询模块,用于根据所述元素节点的ID从所述节点路径索引元数据表查询该元素节点的节点路径上是否存在索引;
第四删除模块,用于如果存在索引,则从所述节点存储表中删除该元素节点的同时从所述节点路径索引元数据表中删除所述索引。
具体的,本发明的上述实施例中,所述装置还包括:
第四查询模块,用于从所述节点路径表中查询是否存在与该元素节点的节点路径相同的其他元素节点;
第五删除模块,用于若不存在与该元素节点的节点路径相同的其他元素节点,从所述节点路径索引元数据表中删除该节点路径的其他数据。
本发明上述实施例为了节省XML数据库管理系统的存储空间,同时又能满足用户的查询需求,提供一种创建动态索引的方法,使得用户可以对自定义的路径创建索引;可以对节点路径上的索引进行创建,删除,重建等操作;节省数据库的存储空间,提高查询效率。
需要说明的是,本发明实施例提供的创建动态索引的装置是应用上述创建动态索引的方法的装置,则上述方法的所有实施例均适用于该装置,且均能达到相同或相似的有益效果。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (14)

1.一种创建动态索引的方法,其特征在于,包括:
获取可扩展标识语言XML文档中需要建立索引的元素节点;
为需要建立索引的所述元素节点设置标识,并将具有所述标识的元素节点保存至所述XML文档的节点存储表中;
从所述XML文档的节点路径表中获取具有所述标识的元素节点的节点路径,在所述节点路径上创建索引,并将所述索引保存至节点路径索引元数据表中。
2.根据权利要求1所述的创建动态索引的方法,其特征在于,所述XML文档的节点存储表包含:一个文档节点及多个元素节点,其中,所述文档节点用于存储所述XML文档的元数据和根元素节点ID,所述元素节点用于存储本元素节点的属性节点、名字空间节点、文本子节点、处理指令子节点、注释子节点以及本元素节点与其他元素节点的关系。
3.根据权利要求1所述的创建动态索引的方法,其特征在于,所述方法还包括:
响应用户的删除预设文档中预设节点路径的索引的操作;
根据所述预设文档的ID和预设节点路径的ID,从所述节点路径索引元数据表中查询所述预设节点路径上是否存在索引;
若存在索引,则从所述节点路径索引元数据表中删除所述节点路径的索引。
4.根据权利要求1所述的创建动态索引的方法,其特征在于,所述方法还包括:
响应用户在所述节点存储表中插入一元素节点的操作;
若用户需要为所述元素节点建立索引,则为所述元素节点设置所述标识并根据所述标识为所述元素节点的节点路径创建索引。
5.根据权利要求1所述的创建动态索引的方法,其特征在于,所述方法还包括:
响应用户修改所述节点存储表中一元素节点的文本节点的值的操作;
根据所述元素节点的ID从所述节点路径索引元数据表中查询所述元素节点的节点路径上是否存在索引;
若存在索引,则根据所述修改对应修改所述节点路径索引元数据表中的节点路径索引。
6.根据权利要求1所述的创建动态索引的方法,其特征在于,所述方法还包括:
响应用户删除一元素节点的操作;
根据所述元素节点的ID从所述节点路径索引元数据表查询该元素节点的节点路径上是否存在索引;
如果存在索引,则从所述节点存储表中删除该元素节点的同时从所述节点路径索引元数据表中删除所述索引。
7.根据权利要求6所述的创建动态索引的方法,其特征在于,删除所述元素节点后,所述方法还包括:
从所述节点路径表中查询是否存在与该元素节点的节点路径相同的其他元素节点;
若不存在与该元素节点的节点路径相同的其他元素节点,从所述节点路径索引元数据表中删除该节点路径的其他数据。
8.一种创建动态索引的装置,其特征在于,包括:
获取模块,用于获取可扩展标识语言XML文档中需要建立索引的元素节点;
设置模块,用于为需要建立索引的所述元素节点设置标识,并将具有所述标识的元素节点保存至所述XML文档的节点存储表中;
第一创建模块,用于从所述XML文档的节点路径表中获取具有所述标识的元素节点的节点路径,在所述节点路径上创建索引,并将所述索引保存至节点路径索引元数据表中。
9.根据权利要求8所述的创建动态索引的装置,其特征在于,所述XML文档的节点存储表包含:一个文档节点及多个元素节点,其中,所述文档节点用于存储所述XML文档的元数据和根元素节点ID,所述元素节点用于存储本元素节点的属性节点、名字空间节点、文本子节点、处理指令子节点、注释子节点以及本元素节点与其他元素节点的关系。
10.根据权利要求8所述的创建动态索引的装置,其特征在于,所述装置还包括:
第一删除模块,用于响应用户的删除预设文档中预设节点路径的索引的操作;
第一查询模块,用于根据所述预设文档的ID和预设节点路径的ID,从所述节点路径索引元数据表中查询所述预设节点路径上是否存在索引;
第二删除模块,用于若存在索引,则从所述节点路径索引元数据表中删除所述节点路径的索引。
11.根据权利要求8所述的创建动态索引的装置,其特征在于,所述装置还包括:
插入模块,用于响应用户在所述节点存储表中插入一元素节点的操作;
第二创建模块,用于若用户需要为所述元素节点建立索引,则为所述元素节点设置所述标识并根据所述标识为所述元素节点的节点路径创建索引。
12.根据权利要求8所述的创建动态索引的装置,其特征在于,所述装置还包括:
第一修改模块,用于响应用户修改所述节点存储表中一元素节点的文本节点的值的操作;
第二查询模块,用于根据所述元素节点的ID从所述节点路径索引元数据表中查询所述元素节点的节点路径上是否存在索引;
第二修改模块,用于若存在索引,则根据所述修改对应修改所述节点路径索引元数据表中的节点路径索引。
13.根据权利要求8所述的创建动态索引的装置,其特征在于,所述装置还包括:
第三删除模块,用于响应用户删除一元素节点的操作;
第三查询模块,用于根据所述元素节点的ID从所述节点路径索引元数据表查询该元素节点的节点路径上是否存在索引;
第四删除模块,用于如果存在索引,则从所述节点存储表中删除该元素节点的同时从所述节点路径索引元数据表中删除所述索引。
14.根据权利要求13所述的创建动态索引的装置,其特征在于,所述装置还包括:
第四查询模块,用于从所述节点路径表中查询是否存在与该元素节点的节点路径相同的其他元素节点;
第五删除模块,用于若不存在与该元素节点的节点路径相同的其他元素节点,从所述节点路径索引元数据表中删除该节点路径的其他数据。
CN201410680195.9A 2014-11-24 2014-11-24 一种创建动态索引的方法及装置 Expired - Fee Related CN105608092B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410680195.9A CN105608092B (zh) 2014-11-24 2014-11-24 一种创建动态索引的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410680195.9A CN105608092B (zh) 2014-11-24 2014-11-24 一种创建动态索引的方法及装置

Publications (2)

Publication Number Publication Date
CN105608092A true CN105608092A (zh) 2016-05-25
CN105608092B CN105608092B (zh) 2020-07-14

Family

ID=55988034

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410680195.9A Expired - Fee Related CN105608092B (zh) 2014-11-24 2014-11-24 一种创建动态索引的方法及装置

Country Status (1)

Country Link
CN (1) CN105608092B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111046131A (zh) * 2019-12-27 2020-04-21 杭州依图医疗技术有限公司 一种文档处理方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101661481A (zh) * 2008-08-29 2010-03-03 国际商业机器公司 存储xml数据的方法、执行xml查询的方法及其装置
CN102096706A (zh) * 2011-01-05 2011-06-15 北京大学 一种变步长xml编码方法
CN102768674A (zh) * 2012-06-12 2012-11-07 上海方正数字出版技术有限公司 一种基于路径结构的xml数据存储方法
CN102819585A (zh) * 2012-07-31 2012-12-12 上海方正数字出版技术有限公司 一种xml数据库文档控制方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101661481A (zh) * 2008-08-29 2010-03-03 国际商业机器公司 存储xml数据的方法、执行xml查询的方法及其装置
CN102096706A (zh) * 2011-01-05 2011-06-15 北京大学 一种变步长xml编码方法
CN102768674A (zh) * 2012-06-12 2012-11-07 上海方正数字出版技术有限公司 一种基于路径结构的xml数据存储方法
CN102819585A (zh) * 2012-07-31 2012-12-12 上海方正数字出版技术有限公司 一种xml数据库文档控制方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111046131A (zh) * 2019-12-27 2020-04-21 杭州依图医疗技术有限公司 一种文档处理方法及装置
CN111046131B (zh) * 2019-12-27 2023-09-26 杭州依图医疗技术有限公司 一种文档处理方法及装置

Also Published As

Publication number Publication date
CN105608092B (zh) 2020-07-14

Similar Documents

Publication Publication Date Title
US8078570B2 (en) Versioning data warehouses
US11341171B2 (en) Method and apparatus for implementing a set of integrated data systems
US9753960B1 (en) System, method, and computer program for dynamically generating a visual representation of a subset of a graph for display, based on search criteria
US8880463B2 (en) Standardized framework for reporting archived legacy system data
CN103123631B (zh) 文案的生成、网页文案的展示方法、装置及网站服务器
CN103942205B (zh) 存储、读取目录索引的方法、装置及系统
CN111026874A (zh) 知识图谱的数据处理方法及服务器
CN104063365B (zh) 在pdf文档中插入对象的方法
CN103399857B (zh) 一种通用文档结构信息抽取方法
CN106339498A (zh) 数据同步方法、装置和系统
CN105808775A (zh) 版式文件信息同步入数据库方法与装置
Zamboulis XML data integration by graph restructuring
CN109947759A (zh) 一种数据索引建立方法、索引检索方法及装置
US9015204B2 (en) Onboarding resources to an identity management system
CN105354266A (zh) 一种基于富图模型RichGraph的图数据管理方法
EP3282372B1 (en) Method and apparatus for storing data
CN103309954A (zh) 一种基于html网页的数据抽取系统
CN105608092A (zh) 一种创建动态索引的方法及装置
CN103955519A (zh) 一种台账查询记录系统及其查询记录方法
CN105740250B (zh) 一种创建xml节点的属性索引的方法及装置
CN101996161B (zh) 一种电子文档的历史版本数据处理方法及装置
CN107463618B (zh) 一种索引创建方法和装置
CN100407204C (zh) 一种标注计算机资源的方法及其系统
CN112488642B (zh) 一种基于结构化标签并以对象为核心的云端文件管理方法
CN103294821B (zh) 基于多层子查询结果分支树的xml数据查询结果访问方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220909

Address after: 3007, Hengqin international financial center building, No. 58, Huajin street, Hengqin new area, Zhuhai, Guangdong 519031

Patentee after: New founder holdings development Co.,Ltd.

Address before: 100871 room 808, founder building, Zhongguancun, 298 Chengfu Road, Haidian District, Beijing

Patentee before: PEKING UNIVERSITY FOUNDER GROUP Co.,Ltd.

Patentee before: PKU FOUNDER INFORMATION INDUSTRY GROUP CO.,LTD.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200714

CF01 Termination of patent right due to non-payment of annual fee