CN114254164B - 一种图数据存储方法及装置 - Google Patents

一种图数据存储方法及装置 Download PDF

Info

Publication number
CN114254164B
CN114254164B CN202210190011.5A CN202210190011A CN114254164B CN 114254164 B CN114254164 B CN 114254164B CN 202210190011 A CN202210190011 A CN 202210190011A CN 114254164 B CN114254164 B CN 114254164B
Authority
CN
China
Prior art keywords
vertex
edge
data
identifier
pointer
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.)
Active
Application number
CN202210190011.5A
Other languages
English (en)
Other versions
CN114254164A (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.)
Fangtu Data Beijing Software Co ltd
Global Energy Interconnection Research Institute
Original Assignee
Fangtu Data Beijing Software Co ltd
Global Energy Interconnection Research Institute
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 Fangtu Data Beijing Software Co ltd, Global Energy Interconnection Research Institute filed Critical Fangtu Data Beijing Software Co ltd
Priority to CN202210190011.5A priority Critical patent/CN114254164B/zh
Publication of CN114254164A publication Critical patent/CN114254164A/zh
Application granted granted Critical
Publication of CN114254164B publication Critical patent/CN114254164B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种图数据存储方法及装置,其中,该方法包括:根据目标业务的图结构确定顶点数据和边数据,顶点数据包括各顶点的顶点引用标识,边数据包括各边的边引用标识;将各顶点的顶点引用标识和各边的边引用标识分别存储于各定长数据段中,存储各顶点的顶点引用标识的定长数据段的长度相同,存储各边的边引用标识的定长数据段的长度相同;根据各顶点在文件中的存储位置形成各顶点的标识符,结合各顶点的标识符建立图结构的索引树。通过执行本发明,将顶点引用标识和边引用标识存储在定长数据段中,实现了存储空间的动态可复用,并且,通过顶点的存储位置形成各顶点的标识符,使得各顶点具备ID不变性,提高了数据的定位效率。

Description

一种图数据存储方法及装置
技术领域
本发明涉及数据存储技术领域,具体涉及一种图数据存储方法及装置。
背景技术
随着互联网、移动互联网、社交网络、物联网及工业领域关联型网络如电力网络的爆炸式发展,关系图的存储以及基于关系图的网络拓扑结构分析与功能分析等应用有着极大的需求,同时也促成了图数据库的研发热潮。当需要存储规模较大的关系网络数据时,会占用较大的空间,并且存在数据的读取延迟、写入效率低等问题。
发明内容
因此,本发明要解决的技术问题在于克服现有技术中存储图关系网络时占用空间较大的缺陷,从而提供一种图数据存储方法及装置。
本发明第一方面提供了一种图数据存储方法,包括:根据目标业务的图结构确定顶点数据和边数据,顶点数据包括各顶点的顶点引用标识,边数据包括各边的边引用标识;将各顶点的顶点引用标识和各边的边引用标识分别存储于各定长数据段中,存储各顶点的顶点引用标识的定长数据段的长度相同,存储各边的边引用标识的定长数据段的长度相同;根据各顶点在文件中的存储位置形成各顶点的标识符,结合各顶点的标识符建立图结构的索引树。
可选地,在本发明提供的图数据存储方法中,存储顶点引用标识的定长数据段的长度与存储边引用标识的定长数据段的长度相同。
可选地,在本发明提供的图数据存储方法中,顶点的顶点引用标识包括与顶点关联的第一条边的指针,以及顶点对应属性域的指针。
可选地,在本发明提供的图数据存储方法中,顶点数据还包括各顶点的顶点属性数据,边数据还包括各边的边属性数据,方法还包括:将各顶点的顶点属性数据和各边的边属性数据分别存储于各变长数据段中。
可选地,在本发明提供的图数据存储方法中,将各顶点的顶点属性数据分别存储于各变长数据段中,包括:根据顶点属性数据的数据类型确定序列化规则;按照序列化规则将顶点属性数据存储于变长数据段中。
可选地,在本发明提供的图数据存储方法中,将各边的边属性数据分别存储于各变长数据段中,包括:根据边属性数据的数据类型确定序列化规则;按照序列化规则将边属性数据存储于变长数据段中。
可选地,在本发明提供的图数据存储方法中,边的边引用标识包括常用标识和非常用标识,常用标识的使用频次高于非常用标识的使用频次,常用标识和非常用标识分离存储。
可选地,在本发明提供的图数据存储方法中,边的常用标识包括源点指针、与源点相关的下一条边指针、目的顶点指针、与目的顶点相关的下一条边指针。
可选地,在本发明提供的图数据存储方法中,边的非常用标识包括与源点相关的前一条边指针、与目的顶点相关的前一条边指针、边的属性域的指针。
本发明第二方面提供了一种图数据存储装置,包括:数据提取模块,用于根据目标业务的图结构确定顶点数据和边数据,顶点数据包括各顶点的顶点引用标识,边数据包括各边的边引用标识;数据存储模块,用于将各顶点的顶点引用标识和各边的边引用标识分别存储于各定长数据段中;索引树建立模块,用于根据各顶点在文件中的存储位置形成各顶点的标识符,结合各顶点的标识符建立图结构的索引树。
本发明第三方面提供了一种计算机设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,从而执行如本发明第一方面提供的图数据存储方法。
本发明技术方案,具有如下优点:
本发明提供的图数据存储方法及装置,将各顶点的顶点引用标识和各边的边引用标识分别存储于各定长数据段中,存储各顶点的顶点引用标识的定长数据段的长度相同,意味着不同顶点的顶点引用标识的存储空间都是相同的,即不同顶点的顶点引用标识可以放到同样大小的空间里,因此,在已有顶点被删除后,其它顶点的顶点引用标识可以放置到被删除顶点原有的空间中,实现了存储空间的动态可复用,若不同顶点的数据的存储空间不同,则存在已被删除的顶点的存储空间空闲,但是需要重新为新加入的顶点开设存储空间的现象,造成空间的浪费。同理,存储各边的边引用标识的定长数据段的长度相同,也可实现存储空间的动态可复用。由此,本发明提供的图数据存储方法实现了存储空间的动态可复用,占用少量的空间即可实现对图结构的存储。并且,在本发明提供的图数据存储方法中,根据各顶点在文件中的存储位置形成各顶点的标识符,由于顶点的顶点引用标识存储在定长数据段中,存储空间大小固定,因此,顶点引用标识的存储位置可始终保持不变,且不同顶点的顶点引用标识存储在不同的位置,因此,通过各顶点的顶点引用标识的存储位置能够为各顶点确定唯一且不变的标识符,使得各顶点具备ID不变性,提高了后续数据的查询效率。由于顶点标识符是根据该顶点在文件中的存储位置形成的,因此,通过顶点的标识符可以快速定位到顶点的存储位置,从而直接基于位置偏移量的访问方式一次性直达目标数据的物理存储位置,不需要通过索引或其它方式先进行额外检索得到数据的位置后再定位到数据,提升了数据的定位效率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中图数据存储方法的一个具体示例的流程图;
图2为本发明实施例中图数据存储装置的一个具体示例的原理框图;
图3为本发明实施例中计算机设备的一个具体示例的原理框图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
本发明实施例提供了一种图数据存储方法,如图1所示,包括:
步骤S11:根据目标业务的图结构确定顶点数据和边数据,顶点数据包括各顶点的顶点引用标识,边数据包括各边的边引用标识。
在一可选实施例中,图结构是根据目标业务的业务原始数据以及相关业务逻辑建立的。建立图结构的步骤具体包括:
先根据目标业务的业务数据定义图结构中的顶点,顶点应为最细粒度,不可再分, 构建顶点集合
Figure 733059DEST_PATH_IMAGE001
为图拓扑的规模。根据各顶点在目标业务中所表征的对 象的功能、结构特征,以及各顶点之间的连接关系理清各类顶点属性,构建顶点属性集合
Figure 119041DEST_PATH_IMAGE002
,其中
Figure 367620DEST_PATH_IMAGE003
代表顶点
Figure 966091DEST_PATH_IMAGE004
的属性集,
Figure 511955DEST_PATH_IMAGE005
是顶点属性数量。
在一可选实施例中,顶点的属性包括顶点的目标节点,示例性地,若节点A与节点B相连,则节点A的属性数据中,目的顶点为节点B的地址,通过顶点的属性中的目标节点,能够确定各节点之间的连接关系。
在一可选实施例中,不同质的顶点属性数量
Figure 537680DEST_PATH_IMAGE005
不一定相同,并且,对于不同的目标 业务,各顶点对应的属性不同,示例性地,在电力业务中,若顶点表征变电站,则该顶点的属 性包括电压等级、变电器类型、容量等。
然后,根据构建的顶点集合以及顶点之间的连接关系,构建关系图结构中的边集 合
Figure 273554DEST_PATH_IMAGE006
,
Figure 941296DEST_PATH_IMAGE007
为连边的总数,边由源节点ID和目标节点ID构成,
Figure 79016DEST_PATH_IMAGE008
Figure 541222DEST_PATH_IMAGE009
表示源节点ID,
Figure 764393DEST_PATH_IMAGE010
表示目标节点ID。根据各边所连接的顶点在目标业务中所表征 的对象的功能与结构特征理清各条边属性,构建边属性集
Figure 970246DEST_PATH_IMAGE011
,其中
Figure 962473DEST_PATH_IMAGE012
代表边
Figure 657896DEST_PATH_IMAGE013
的属性集,
Figure 368363DEST_PATH_IMAGE014
是边属性数量。
在一可选实施例中,不同质的边属性数量
Figure 112329DEST_PATH_IMAGE014
不一定相同,并且,对于不同的目标业 务,各边对应的属性不同,示例性地,在电力业务中,若边表征电力输送线缆,则该边的属性 包括电阻、电抗、材质、长度、面积等。
步骤S12:将各顶点的顶点引用标识和各边的边引用标识分别存储于各定长数据段中,存储各顶点的顶点引用标识的定长数据段的长度相同,存储各边的边引用标识的定长数据段的长度相同。
在本发明实施例中,存储各顶点的顶点引用标识的定长数据段的长度相同,意味着不同顶点的顶点引用标识的存储空间都是相同的,即不同顶点的顶点引用标识可以放到同样大小的空间里,因此,在已有顶点被删除后,其它顶点的顶点引用标识可以放置到被删除顶点原有的空间中,实现了存储空间的动态可复用,若不同顶点的数据的存储空间不同,则存在已被删除的顶点的存储空间空闲,但是需要重新为新加入的顶点开设存储空间的现象,造成空间的浪费。同理,存储各边的边引用标识的定长数据段的长度相同,也可实现存储空间的动态可复用。由此,本实施例提供的图数据存储方法实现了存储空间的动态可复用,占用少量的空间即可实现对图结构的存储。
步骤S13:根据各顶点在文件中的存储位置形成各顶点的标识符,结合各顶点的标识符建立图结构的索引树。顶点在文件中的存储位置可以是顶点在文件中的偏移量。
在一可选实施例中,在确定各顶点的标识符后,建立各顶点的主键,建立的索引树为各顶点对应指针B+索引树。
在一可选实施例中,边的唯一标识为源点和目的顶点的关联关系。
在本发明实施例中,根据顶点的顶点引用标识的存储位置形成该顶点的标识符。由于顶点的顶点引用标识存储在定长数据段中,存储空间大小固定,因此,顶点引用标识的存储位置可始终保持不变,且不同顶点的顶点引用标识存储在不同的位置,因此,通过各顶点的顶点引用标识的存储位置能够为各顶点确定唯一且不变的标识符,使得各顶点具备ID不变性,ID不变性指的是在一个系统中,某一个对象的标识ID在系统的整个生命周期(数据创建之后、删除之前)中不会变。ID不变性是数据管理系统的一个重要特性,为应用系统的搭建带来了数据的一致性。示例性地,若第一次以标识ID1对数据管理系统中的对象A进行访问,但是在第一次访问后,对象A的标识发生了变化,则后续再以标识ID1访问该数据管理系统时,无法访问到对象A,造成了数据访问的困难。本发明实施例中通过顶点的顶点引用标识的存储位置为顶点建立标识符,使得顶点具有ID不变性,提高了后续数据的查询效率。
并且,以顶点在文件中的实际存储位置作为该顶点的标识符,无需花费存储空间去存储其顶点的标识符,节省了图结构的存储空间。
由于顶点标识符是根据该顶点在文件中的存储位置形成的,因此,通过顶点的标识符可以快速定位到顶点的存储位置,从而直接基于位置偏移量的访问方式一次性直达目标数据的物理存储位置,不需要通过索引或其它方式先进行额外检索得到数据的位置后再定位到数据,提升了数据的定位效率。
同理,根据各边在文件中的存储位置形成各边的标识符,通过该边的标识符可以快速定位到边的存储位置,从而直接基于位置偏移量的访问方式一次性直达目标数据的物理存储位置,不需要通过索引或其它方式先进行额外检索得到数据的位置后再定位到数据,提升了数据的定位效率。
在一可选实施例中,存储所述顶点引用标识的定长数据段的长度与存储边引用标识的定长数据段的长度相同。
在本发明实施例中,存储顶点引用标识的定长数据段和存储边引用标识的定长数据段的长度相同,意味着顶点引用标识和边引用标识可以放到同样大小的空间里,因此,在已有顶点或边被删除后,其它顶点或边的顶点引用标识或边引用标识可以放置到被删除顶点或边原有的空间中,实现了存储空间的动态可复用,占用少量的空间即可实现对图结构的存储。
在一可选实施例中,顶点的顶点引用标识包括与顶点关联的第一条边的指针,以及顶点对应属性域的指针。
在本发明实施例中,顶点对应属性域是指用于存储该顶点的属性数据的存储空间。
在图结构中,若一个顶点只与一条边关联,则与该顶点关联的唯一一条边为与该顶点关联的第一条边,当一个顶点与多条边关联时,根据实际的数据加载顺序确定与顶点关联的第一条边,示例性地,顶点A分别与顶点B和顶点C连接,若在加载顶点A的数据后,先加载的是顶点B的数据,则判定连接顶点A与顶点B的边为顶点A的第一条边。
在一可选实施例中,将顶点引用标识存储于定长数据段中时,设定长数据段的长度为N个字节,将与顶点关联的第一条边的指针存放在定长数据段中的前M个字节中,将顶点对应属性域的指针存放在定长数据段中的后(N-M)个字节。
在一可选实施例中,边的边引用标识包括常用标识和非常用标识,常用标识的使用频次高于非常用标识的使用频次,常用标识和非常用标识分离存储,即,常用标识和非常用标识存储在不同的定长数据段中。
在一可选实施例中,边的常用标识包括源点指针、与源点相关的下一条边指针、目的顶点指针、与目的顶点相关的下一条边指针。
在一可选实施例中,边的非常用标识包括与源点相关的前一条边指针、与目的顶点相关的前一条边指针、边的属性域的指针。
在一可选实施例中,顶点与边的顺序根据实际的数据加载顺序确定。
本发明实施例中按照数据的使用频次,将引用标识分为常用标识和非常用标识,常用数据存储了具体的点的邻接边链表,用于数据的遍历,不常用数据存储了反向的邻接边链表,用于邻接链表的维护。在计算介数、路径等场景中,因为只是加载了常用数据,没有加载不常用数据,因而减少了IO加载的数据量,加快了数据访问效率,因此,本发明实施例提供的图数据存储方法,将常用标识和非常用标识分离存储,提高了计算介数、最短路径等图常用遍历场景的数据访问效率。
在一可选实施例中,顶点数据还包括各顶点的顶点属性数据,边数据还包括各边的边属性数据,本发明实施例提供的图数据存储方法还包括:将各顶点的顶点属性数据和各边的边属性数据分别存储于各变长数据段中。
在一可选实施例中,将各顶点的顶点属性数据分别存储于各变长数据段中,包括:
首先,根据顶点属性数据的数据类型确定序列化规则。
然后,按照序列化规则将顶点属性数据存储于变长数据段中。
在一可选实施例中,顶点属性数据的数据类型包括int,double,string等,对于不同类型的顶点属性数据,采用不同的序列化规则进行存储。
在一可选实施例中,将顶点属性数据存储在变长数据段中时,先在变长数据段的首部存储顶点属性数据的长度,然后存储顶点属性数据,在读取顶点属性数据时,先根据确定顶点属性数据的长度,然后读取对应字节的数据,得到顶点属性数据。示例性地,若需要存储的数据为abcdefg,abcdefg的长度为7,在将abcdefg存入边长数据段中时,先在变长数据段的首部存入“7”,然后再存入“abcdefg”,在读取时,先读到“7”后,再往后读取7个字节,得到数据“abcdefg”。
在一可选实施例中,将各边的边属性数据分别存储于各变长数据段中,包括:
首先,根据边属性数据的数据类型确定序列化规则。
然后,按照序列化规则将边属性数据存储于变长数据段中。
在本发明实施例中,顶点属性数据和边属性数据的长度不唯一,无法存储在定长数据段中。
在一可选实施例中,图结构的存储规则如下表所示:
Figure 224641DEST_PATH_IMAGE016
本发明实施例提供了一种图数据存储装置,如图2所示,包括:
数据提取模块21,用于根据目标业务的图结构确定顶点数据和边数据,顶点数据包括各顶点的顶点引用标识,边数据包括各边的边引用标识,详细内容参见上述实施例中步骤S11的描述,在此不再赘述。
数据存储模块22,用于将各顶点的顶点引用标识和各边的边引用标识分别存储于各定长数据段中,详细内容参见上述实施例中步骤S12的描述,在此不再赘述。
索引树建立模块23,用于根据各顶点在文件中的存储位置形成各顶点的标识符,结合各顶点的标识符建立图结构的索引树,详细内容参见上述实施例中步骤S13的描述,在此不再赘述。
本发明实施例提供了一种计算机设备,如图3所示,该计算机设备主要包括一个或多个处理器31以及存储器32,图3中以一个处理器31为例。
该计算机设备还可以包括:输入装置33和输出装置34。
处理器31、存储器32、输入装置33和输出装置34可以通过总线或者其他方式连接,图3中以通过总线连接为例。
处理器31可以为中央处理器(Central Processing Unit,CPU)。处理器31还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。存储器32可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据图数据存储装置的使用所创建的数据等。此外,存储器32可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器32可选包括相对于处理器31远程设置的存储器,这些远程存储器可以通过网络连接至图数据存储装置。输入装置33可接收用户输入的计算请求(或其他数字或字符信息),以及产生与图数据存储装置有关的键信号输入。输出装置34可包括显示屏等显示设备,用以输出计算结果。
本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储计算机指令,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的图数据存储方法。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(FlashMemory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

Claims (7)

1.一种图数据存储方法,其特征在于,包括:
根据目标业务的图结构确定顶点数据和边数据,所述顶点数据包括各顶点的顶点引用标识,所述边数据包括各边的边引用标识;
将各顶点的顶点引用标识和各边的边引用标识分别存储于各定长数据段中,存储各顶点的顶点引用标识的定长数据段的长度相同,存储各边的边引用标识的定长数据段的长度相同;
根据各顶点在文件中的存储位置形成各顶点的标识符,结合各顶点的标识符建立所述图结构的索引树;
所述顶点的顶点引用标识包括与所述顶点关联的第一条边的指针,以及所述顶点对应属性域的指针;
边的边引用标识包括常用标识和非常用标识,所述常用标识的使用频次高于所述非常用标识的使用频次,
所述常用标识和所述非常用标识分离存储;
所述边的常用标识包括源点指针、与源点相关的下一条边指针、目的顶点指针、与目的顶点相关的下一条边指针;
所述边的非常用标识包括与源点相关的前一条边指针、与目的顶点相关的前一条边指针、所述边的属性域的指针;
根据顶点在文件中的存储位置形成顶点标识符,通过顶点的标识符能够定位到顶点的存储位置,从而直接基于位置偏移量的访问方式直达目标数据的物理存储位置;
根据各边在文件中的存储位置形成各边的标识符,通过边的标识符能够定位到边的存储位置,从而直接基于位置偏移量的访问方式直达目标数据的物理存储位置。
2.根据权利要求1所述的图数据存储方法,其特征在于,
存储所述顶点引用标识的定长数据段的长度与存储所述边引用标识的定长数据段的长度相同。
3.根据权利要求1所述的图数据存储方法,其特征在于,所述顶点数据还包括各顶点的顶点属性数据,所述边数据还包括各边的边属性数据,所述方法还包括:
将各顶点的顶点属性数据和各边的边属性数据分别存储于各变长数据段中。
4.根据权利要求3所述的图数据存储方法,其特征在于,将各顶点的顶点属性数据分别存储于各变长数据段中,包括:
根据所述顶点属性数据的数据类型确定序列化规则;
按照所述序列化规则将所述顶点属性数据存储于变长数据段中。
5.根据权利要求3所述的图数据存储方法,其特征在于,将各边的边属性数据分别存储于各变长数据段中,包括:
根据所述边属性数据的数据类型确定序列化规则;
按照所述序列化规则将所述边属性数据存储于变长数据段中。
6.一种图数据存储装置,其特征在于,包括:
数据提取模块,用于根据目标业务的图结构确定顶点数据和边数据,所述顶点数据包括各顶点的顶点引用标识,所述边数据包括各边的边引用标识;
数据存储模块,用于将各顶点的顶点引用标识和各边的边引用标识分别存储于各定长数据段中;
索引树建立模块,用于根据各顶点在文件中的存储位置形成各顶点的标识符,结合各顶点的标识符建立所述图结构的索引树;
所述顶点的顶点引用标识包括与所述顶点关联的第一条边的指针,以及所述顶点对应属性域的指针;
边的边引用标识包括常用标识和非常用标识,所述常用标识的使用频次高于所述非常用标识的使用频次,
所述常用标识和所述非常用标识分离存储;
所述边的常用标识包括源点指针、与源点相关的下一条边指针、目的顶点指针、与目的顶点相关的下一条边指针;
所述边的非常用标识包括与源点相关的前一条边指针、与目的顶点相关的前一条边指针、所述边的属性域的指针;
根据顶点在文件中的存储位置形成顶点标识符,通过顶点的标识符能够定位到顶点的存储位置,从而直接基于位置偏移量的访问方式直达目标数据的物理存储位置;
根据各边在文件中的存储位置形成各边的标识符,通过边的标识符能够定位到边的存储位置,从而直接基于位置偏移量的访问方式直达目标数据的物理存储位置。
7.一种计算机设备,其特征在于,包括:
至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,从而执行如权利要求1-5中任一项所述的图数据存储方法。
CN202210190011.5A 2022-03-01 2022-03-01 一种图数据存储方法及装置 Active CN114254164B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210190011.5A CN114254164B (zh) 2022-03-01 2022-03-01 一种图数据存储方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210190011.5A CN114254164B (zh) 2022-03-01 2022-03-01 一种图数据存储方法及装置

Publications (2)

Publication Number Publication Date
CN114254164A CN114254164A (zh) 2022-03-29
CN114254164B true CN114254164B (zh) 2022-06-28

Family

ID=80800136

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210190011.5A Active CN114254164B (zh) 2022-03-01 2022-03-01 一种图数据存储方法及装置

Country Status (1)

Country Link
CN (1) CN114254164B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116204683A (zh) * 2022-09-15 2023-06-02 阿里巴巴(中国)有限公司 动态图数据存储系统、读取系统及对应方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103593433B (zh) * 2013-11-12 2016-11-02 中国科学院信息工程研究所 一种面向海量时序数据的图数据处理方法及系统
CN109344295B (zh) * 2018-08-24 2020-05-05 阿里巴巴集团控股有限公司 分布式图嵌入方法、装置、设备及系统
CN109446362B (zh) * 2018-09-05 2021-07-23 深圳神图科技有限公司 基于外存的图数据库结构、图数据存储方法、装置
CN112287182B (zh) * 2020-10-30 2023-09-19 杭州海康威视数字技术股份有限公司 图数据存储、处理方法、装置及计算机存储介质
CN113177034B (zh) * 2021-05-06 2023-07-18 南京大学 一种跨平台统一的分布式图数据处理方法

Also Published As

Publication number Publication date
CN114254164A (zh) 2022-03-29

Similar Documents

Publication Publication Date Title
WO2022100233A1 (zh) 一种基于图数据库的电网检索方法及系统
US10642515B2 (en) Data storage method, electronic device, and computer non-volatile storage medium
CN109446362B (zh) 基于外存的图数据库结构、图数据存储方法、装置
US9158803B2 (en) Incremental schema consistency validation on geographic features
CN107807989B (zh) 小文件处理方法及装置
WO2022241813A1 (zh) 一种基于图压缩的图数据库构建方法、装置及相关组件
CN111159184A (zh) 元数据追溯方法、装置及服务器
CN114254164B (zh) 一种图数据存储方法及装置
CN112667860A (zh) 一种子图匹配方法、装置、设备及存储介质
WO2021174836A1 (zh) 差分包生成方法方法、装置、计算机设备及存储介质
CN111078276B (zh) 应用程序的冗余资源处理方法、装置、设备及存储介质
CN113268439A (zh) 内存地址的查找方法和装置、电子设备和存储介质
US9213759B2 (en) System, apparatus, and method for executing a query including boolean and conditional expressions
CN116089663A (zh) 一种规则表达式匹配方法、装置及计算机可读存储介质
CN113434506B (zh) 数据管理及检索方法、装置、计算机设备及可读存储介质
CN114489762A (zh) 一种多版本应用的实现方法、系统及电子设备
CN112463058B (zh) 一种碎片数据整理方法、装置及存储节点
CN113297171A (zh) 数据库迁移方法及装置、数据库集群
CN115705313A (zh) 一种数据处理方法、装置、设备及计算机可读存储介质
CN115964002B (zh) 一种电能表终端档案管理方法、装置、设备及介质
CN113742332A (zh) 数据存储方法、装置、设备及存储介质
CN116127154A (zh) 知识标签推荐方法、装置、电子设备及存储介质
CN115934999A (zh) 一种基于块文件的视频流数据存储方法、装置及介质
CN115269511A (zh) 一种泛电子文件封装方法及装置
CN114048219A (zh) 图数据库更新方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant