一种图形数据库及其实现方法

文档序号:6356829阅读:180来源:国知局
专利名称:一种图形数据库及其实现方法
技术领域
本发明涉及数据处理领域,特别是涉及一种图形数据库及其实现方法。
背景技术
数据库(Database)可以认为是按照数据结构来组织、存储和管理数据的仓库,而图形数据库(graphic database)是利用计算机将点、线、面等图形基本元素按一定数据结构进行存储的数据集合。而关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据。在关系数据库中,采用单一的数据结构即是关系来描述数据,即是关系数据库中的数据之间的各种联系均用关系来表示。数据的逻辑结构可以采用二维表来实现。在关系数据库中常用的关系操作包括数据查询和数据更新等操作,其中数据查询包括选择、投影、 连接、除、并、交、差等操作,而数据更新插入、删除或者修改操作。关系操作的特点是其集合操作方式,即操作的对象和结果都是集合。因此现有技术中的关系数据库不适合存储树状或网状的数据结构,而在实际的应用场景中,很多的数据模型是树状或网状的,例如一个公司的组织架构、一个网络的拓扑结构等,如果采用关系数据库来存储这些树状或网状的数据将会使得存储过程非常繁琐和效率低下。

发明内容
本发明所要解决的技术问题是提供一种图形数据库及其实现方法,用以解决现有技术中关系数据库在存储树状或网状的数据结构时导致的存储效率低下的技术问题。为解决上述技术问题,本发明实施例提供了一种图形数据库,包括信息获取单元,用于获取待存储数据信息,所述待存储数据信息包括节点信息及各个节点之间的关系信息;数据集接口单元,用于按照所述待存储数据信息调用对应的数据结构;存储单元,用于按照所述数据结构的格式将所述待存储数据进行存储。优选的,所述信息获取单元包括节点模块,用于获取所述待存储数据的节点信息,所述节点信息包括节点的定义信息、属性信息和数据信息;关系模块,用于获取各个节点之间的关系信息,所述关系信息包括各个节点之间的组织关系和/或引用关系。优选的,所述数据集接口单元具体包括读取模块,用于读取所述图形数据库的配置文件,以得到实际的存储单元的类型;调用模块,用于按照实际的存储单元的类型为所述待存储数据调用需要满足的数据结构。优选的,所述存储单元具体包括
接收模块,用于从数据集接口单元获取待存储数据信息以及对应的数据结构信息;存储模块,用于按照所述数据结构信息将所述待存储数据保存至所述实际的数据表中。优选的,所述存储单元的类型具体为关系数据库、可扩展编程语言XML文件或预定义格式的文件。本发明实施例还提供了一种图形数据库的实现方法,包括信息获取单元获取待存储数据信息,所述待存储数据信息包括节点信息及各个节点之间的关系信息;数据集接口单元按照所述待存储数据信息调用对应的数据结构;存储单元按照所述数据结构的格式将所述待存储数据进行存储。优选的,所述获取待存储数据信息,具体包括获取所述待存储数据的节点信息,所述节点信息包括节点的定义信息、属性信息和数据信息;获取各个节点之间的关系信息,所述关系信息包括各个节点之间的组织关系和/ 或引用关系。优选的,所述按照所述待存储数据信息调用对应的数据结构,具体包括读取所述图形数据库的配置文件,以得到实际的存储单元的类型;按照实际的存储单元的类型为所述待存储数据调用需要满足的数据结构。优选的,所述按照所述数据结构的格式将所述待存储数据进行存储,具体包括从数据集接口单元获取待存储数据信息以及对应的数据结构信息;按照所述数据结构信息将所述待存储数据保存至所述实际的数据表中。优选的,所述存储单元的类型具体为关系数据库、可扩展编程语言XML文件或预定义格式的文件。与现有技术相比,本发明具有以下优点在本实施例中,由统一的数据集接口按照所述待存储数据信息调用对应的数据结构,就可以按照所述数据结构的格式将所述待存储数据存储进图形数据库中。本发明实施例在存储树状或网状的数据结构时也不会导致存储效率低下,提高了数据的存储效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明的一种图形数据库实施例的架构框图;图2为本发明图形数据库实施例在实际应用中的分层示意图;图3为本发明实施例中节点SysUser与Customer之间的关系示意图;图4为本发明实施例中引用关系和组织关系的关系示意图;图5是本发明的一种图形数据库的实现方法实施例1的结构示意图6是本发明的一种图形数据库的实现方法实施例2的结构示意图。
具体实施例方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本发明作进一步详细的说明。参考图1,示出了本发明的一种图形数据库实施例的架构框图,可以包括以下单元信息获取单元101,用于获取待存储数据信息,所述待存储数据信息包括节点信息及各个节点之间的关系信息。在实施例中该信息获取单元可以采用节点或者关系等对象实现。该信息获取单元可以从接收到的待存储数据获取到节点信息及各个节点之间的关系信息,其中节点信息指的是树状或网状等数据中的记录实体信息,可以包括节点的定义信息、属性信息或者数据信息等;而各个节点之间的关系信息可以是不同节点之间的组织关系,也可以是一个节点对另一个节点的引用关系。数据集接口单元102,用于按照所述待存储数据信息调用对应的数据结构。本实施例中所述的数据集(DatMet)是图形数据库中数据的逻辑存储单元,图形数据库中的数据以及图形数据库自身的逻辑定义均存储在DatMet中,DataSet可以认为是一个接口,通过数据集接口能够调用图形数据库的配置文件,从而通过配置文件来获取各个节点的数据信息在存储时需要匹配的数据结构。可以理解的是,每一个DataSet都由一个全局唯一的名称和若干个列(Column)组成。在DatMet中的列表支持如表1所示的两种数据类型表 1
类型说明String用于保存文本性的描述信息Number用于保存整数、浮点数等数字信息, 或用来保存布尔值信息,值为1表示 true, 值为-1表示false存储单元103,用于按照所述数据结构的格式将所述待存储数据进行存储。通过数据集接口单元调用得到的数据格式,可以知道该待存储数据(各个节点信息及节点之间的关系信息)进行存储时需要满足什么样的数据格式,则由存储单元按照该种数据格式进行待存储数据的存储。具体的,存储单元在实际应用中可以采用关系数据库、 可扩展标记语言(XML,Extensible Markup Language)或自定义格式的文件来实现。可以从上述介绍中看出,本发明实施例中的图形数据库的架构可以自上而下分为三层。最上层对应信息获取单元101,为图形数据库中各种概念对象(例如节点、关系或者引用等)的组织与实现;中间层对应数据集接口单元,为抽象的数据物理存储接口层,将物理存储的数据抽象为若干个Dat必et。而底层对应存储单元,则为物理存储实现层,可以借助现在的存储引擎实现,例如传统的关系数据库或者XML文件等等。
因此参考图2,示出了本发明图形数据库实施例在实际应用中的分层示意图。下面将对图2中示意出的各个组成部分进行详细说明。在图形数据库中,每一种记录实体均可抽象为Node,例如在表述一个计算机网络应用系统时,对于交换机中的端口、PC服务器的网卡、CPU、生产配件的厂商、被提供服务的客户、系统中的用户或者权限等等,都可以抽象为Node。每个Node拥有一个全局唯一的名称和一些其特有的属性,用于记录配置信息。例如对于被提供服务的客户,可以将对应的Node命名为Customer,Customer拥有如下属性contractedAmount (合同总额)、 industry (所属行业)、name (客户名称)、description (描述)等。在本发明实施例中, Node的属性具体可以是如表2所示的数据类型。表权利要求
1.一种图形数据库,其特征在于,包括信息获取单元,用于获取待存储数据信息,所述待存储数据信息包括节点信息及各个节点之间的关系信息;数据集接口单元,用于按照所述待存储数据信息调用对应的数据结构; 存储单元,用于按照所述数据结构的格式将所述待存储数据进行存储。
2.如权利要求1所述的图形数据库,其特征在于,所述信息获取单元包括节点模块,用于获取所述待存储数据的节点信息,所述节点信息包括节点的定义信息、 属性信息和数据信息;关系模块,用于获取各个节点之间的关系信息,所述关系信息包括各个节点之间的组织关系和/或引用关系。
3.如权利要求1所述的图形数据库,其特征在于,所述数据集接口单元具体包括 读取模块,用于读取所述图形数据库的配置文件,以得到实际的存储单元的类型;调用模块,用于按照实际的存储单元的类型为所述待存储数据调用需要满足的数据结构。
4.如权利要求3所述的图形数据库,其特征在于,所述存储单元具体包括 接收模块,用于从数据集接口单元获取待存储数据信息以及对应的数据结构信息; 存储模块,用于按照所述数据结构信息将所述待存储数据保存至所述实际的数据表中。
5.如权利要求3或4所述的图形数据库,其特征在于,所述存储单元的类型具体为关系数据库、可扩展编程语言XML文件或预定义格式的文件。
6.一种图形数据库的实现方法,其特征在于,包括信息获取单元获取待存储数据信息,所述待存储数据信息包括节点信息及各个节点之间的关系信息;数据集接口单元按照所述待存储数据信息调用对应的数据结构; 存储单元按照所述数据结构的格式将所述待存储数据进行存储。
7.如权利要求6所述的方法,其特征在于,所述获取待存储数据信息,具体包括 获取所述待存储数据的节点信息,所述节点信息包括节点的定义信息、属性信息和数据信息;获取各个节点之间的关系信息,所述关系信息包括各个节点之间的组织关系和/或引用关系。
8.如权利要求6所述的方法,其特征在于,所述按照所述待存储数据信息调用对应的数据结构,具体包括读取所述图形数据库的配置文件,以得到实际的存储单元的类型; 按照实际的存储单元的类型为所述待存储数据调用需要满足的数据结构。
9.如权利要求8所述的方法,其特征在于,所述按照所述数据结构的格式将所述待存储数据进行存储,具体包括从数据集接口单元获取待存储数据信息以及对应的数据结构信息; 按照所述数据结构信息将所述待存储数据保存至所述实际的数据表中。
10.如权利要求6-9任一项所述的方法,其特征在于,所述存储单元的类型具体为关系数据库、可扩展编程语言XML文件或预定义格式的文件。
全文摘要
本发明提供了一种图形数据库及其实现方法,所述图形数据库包括信息获取单元,用于获取待存储数据信息,所述待存储数据信息包括节点信息及各个节点之间的关系信息;数据集接口单元,用于按照所述待存储数据信息调用对应的数据结构;存储单元,用于按照所述数据结构的格式将所述待存储数据进行存储。本发明实施例在存储树状或网状的数据结构时也不会导致存储效率低下,提高了数据的存储效率。
文档编号G06F17/30GK102193990SQ20111007379
公开日2011年9月21日 申请日期2011年3月25日 优先权日2011年3月25日
发明者于洪方, 井卫军, 刘健, 姚福源, 蒋建平, 陈升 申请人:北京世纪互联工程技术服务有限公司, 北京云快线软件服务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1