CN112115311A - 一种图数据库的弹性扩缩容方法、装置、设备及存储介质 - Google Patents

一种图数据库的弹性扩缩容方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112115311A
CN112115311A CN202010884121.2A CN202010884121A CN112115311A CN 112115311 A CN112115311 A CN 112115311A CN 202010884121 A CN202010884121 A CN 202010884121A CN 112115311 A CN112115311 A CN 112115311A
Authority
CN
China
Prior art keywords
graph database
master
database
graph
slave
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.)
Pending
Application number
CN202010884121.2A
Other languages
English (en)
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.)
Suning Financial Technology Nanjing Co Ltd
Original Assignee
Suning Financial Technology Nanjing 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 Suning Financial Technology Nanjing Co Ltd filed Critical Suning Financial Technology Nanjing Co Ltd
Priority to CN202010884121.2A priority Critical patent/CN112115311A/zh
Publication of CN112115311A publication Critical patent/CN112115311A/zh
Pending legal-status Critical Current

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

Landscapes

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

Abstract

本发明公开一种图数据库的弹性扩缩容方法、装置、设备及存储介质,属于数据库技术领域,方法包括:对主图数据库进行备份以生成主图数据库的从图数据库,其中,主图数据库存储有图数据,图数据包括多个节点以及节点之间的关系边;对主图数据库中的节点数量和关系边数量进行监控,根据监控结果,获取主图数据库中图数据对应的库容量;计算图数据对应的库容量处于主图数据库的当前数量级对应的总容量的占比,并对占比与预设比值阈值进行比较,得到比较结果;根据比较结果,对主图数据库与从图数据库进行主从切换,并对切换后的主图数据库进行相应的扩容处理或缩容处理。本发明能够改变原有必须要进行停机以实现图数据库的扩缩容的方式对业务的影响。

Description

一种图数据库的弹性扩缩容方法、装置、设备及存储介质
技术领域
本发明涉及数据库技术领域,尤其涉及一种图数据库的弹性扩缩容方法、装置、设备及存储介质。
背景技术
图数据库通常是指通过节点、属性、边的图格式进行数据存储的数据库。目前,图数据库克服了其他数据库无法解决的大而复杂的数据难题,在复杂问题的处理上有着明显的优势,已经成为所有数据管理***中成长最快的分类。
随着用户规模的增长和业务的不断调整,图数据库中的数据及服务所需的资源消耗越来越大,其数据量往往呈现上亿级数量,且按日更新消耗资源较多。当图数据库压力比较大时需要增加服务器的容器数量实现图数据库的扩容,目前是必须需要暂停数据库的服务才能实现扩容,这种方式会对业务运营带来不利影响;另外,扩容后的图数据库压力降下来时,如果无法及时地将资源恢复到原来的状态,则又可能导致资源的浪费。
发明内容
为了解决上述背景技术中提到的问题,本发明提供一种图数据库的弹性扩缩容方法、装置、设备及存储介质。
第一方面,提供了一种图数据库的弹性扩缩容方法,所述方法包括:
对主图数据库进行备份以生成所述主图数据库的从图数据库,其中,所述主图数据库存储有图数据,所述图数据包括多个节点以及所述节点之间的关系边;
对所述主图数据库中的节点数量和关系边数量进行监控,根据监控结果,获取所述主图数据库中所述图数据对应的库容量;
计算所述图数据对应的库容量处于所述主图数据库的当前数量级对应的总容量的占比,并对所述占比与预设比值阈值进行比较,得到比较结果;
根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理。
进一步地,所述根据监控结果,获取所述主图数据库中所述图数据对应的库容量,包括:
采用预设权重值对监控到的所述节点数量与所述关系边数量进行加权求和,将加权求和结果作为所述主图数据库中所述图数据对应的库容量;
或者,对监控到的所述节点数量与所述关系边数量进行求和计算,将求和结果作为所述主图数据库中所述图数据对应的库容量。
进一步地,所述预设比值阈值包括预设扩容阈值,所述根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理,包括;
判断所述占比是否超过所述预设扩容阈值;
若超过,将所述主图数据库由使用状态切换到更新状态,将所述从图数据库由备用状态切换到使用状态,并对切换到更新状态的所述主图数据库进行扩容。
进一步地,所述方法还包括:
若所述主图数据库完成扩容,将所述主图数据库由更新状态切换到使用状态,将所述从图数据库由使用状态切换到更新状态,并对切换到更新状态的所述从图数据库进行扩容。
进一步地,所述预设比值阈值包括预设缩容阈值,所述根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理,包括;
判断所述占比是否低于所述预设缩容阈值;
若低于,将所述主图数据库由使用状态切换到更新状态,将所述从图数据库由备用状态切换到使用状态,并对切换到更新状态的所述主图数据库进行缩容。
进一步地,所述方法还包括:
若所述主图数据库完成缩容,将所述主图数据库由更新状态切换到使用状态,将所述从图数据库由使用状态切换到更新状态,并对切换到更新状态的所述从图数据库进行缩容。
第二方面,提供了一种图数据库的弹性扩缩容装置,所述装置包括:
备份模块,用于对主图数据库进行备份以生成所述主图数据库的从图数据库,其中,所述主图数据库存储有图数据,所述图数据包括多个节点以及所述节点之间的关系边;
监控模块,用于对所述主图数据库中的节点数量和关系边数量进行监控;
获取模块,用于基于所述监控模块的监控结果,获取所述主图数据库中所述图数据对应的库容量;
计算模块,用于计算所述图数据对应的库容量处于所述主图数据库的当前数量级对应的总容量的占比;
比较模块,用于对所述计算模块计算出的占比与预设比值阈值进行比较,得到比较结果;
处理模块,用于根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理。
进一步地,所述获取模块具体用于:
采用预设权重值对监控到的所述节点数量与所述关系边数量进行加权求和,将加权求和结果作为所述主图数据库中所述图数据对应的库容量。
第三方面,提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
对主图数据库进行备份以生成所述主图数据库的从图数据库,其中,所述主图数据库存储有图数据,所述图数据包括多个节点以及所述节点之间的关系边;
对所述主图数据库中的节点数量和关系边数量进行监控,根据监控结果,获取所述主图数据库中所述图数据对应的库容量;
计算所述图数据对应的库容量处于所述主图数据库的当前数量级对应的总容量的占比,并对所述占比与预设比值阈值进行比较,得到比较结果;
根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
对主图数据库进行备份以生成所述主图数据库的从图数据库,其中,所述主图数据库存储有图数据,所述图数据包括多个节点以及所述节点之间的关系边;
对所述主图数据库中的节点数量和关系边数量进行监控,根据监控结果,获取所述主图数据库中所述图数据对应的库容量;
计算所述图数据对应的库容量处于所述主图数据库的当前数量级对应的总容量的占比,并对所述占比与预设比值阈值进行比较,得到比较结果;
根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理。
本发明提供一种图数据库的弹性扩缩容方法、装置、设备及存储介质,通过对主图数据库进行备份以生成主图数据库的从图数据库;对主图数据库中图数据包含的节点数量和关系边数量进行监控,根据监控结果,获取主图数据库中图数据对应的库容量;计算图数据对应的库容量处于主图数据库的当前数量级对应的总容量的占比,并对占比与预设比值阈值进行比较,得到比较结果;根据比较结果,对主图数据库与从图数据库进行主从切换,并对切换后的主图数据库进行与相应的扩容处理或缩容处理,由此通过监控图数据库中的实体关系边数量级,采用A/B切换的方式对图数据库进行相应的弹性扩容或缩容处理,由此避免了造成数据及资源浪费,同时改变了原有必须要进行停机以实现图数据库的扩缩容的方式对业务的影响。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中的图数据库的弹性扩缩容方法的流程示意图;
图2为一个实施例中的图数据库中知识图谱的结构示意图;
图3为一个实施例中的主、从图数据库在主从切换时的状态切换示意图;
图4为一个实施例中的图数据库的端口配置界面示意图;
图5为一个实施例中的图数据库的弹性扩缩容装置的结构图;
图6为一个实施例中的计算机设备的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
此外,在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
如前述背景技术所述,随着用户规模的增长和业务的不断调整,图数据库中的数据及服务所需的资源消耗越来越大,其数据量往往呈现上亿级数量,且按日更新消耗资源较多。当图数据库压力比较大时需要增加服务器的容器数量实现图数据库的扩容,目前是必须需要暂停数据库的服务才能实现扩容,这种方式会对业务运营带来不利影响;另外,扩容后的图数据库压力降下来时,如果无法及时地将资源恢复到原来的状态,则又可能导致资源的浪费。为此,本发明提供一种图数据库的弹性扩缩容方法,通过监控图数据库中的实体关系边数量级,采用A/B切换的方式进行图数据库弹性有效扩缩容,能够避免造成数据及资源浪费,同时改变了原有必须要进行停机以实现图数据库的扩缩容的方式对业务的影响。
在一个实施例中,提供了一种图数据库的弹性扩缩容方法,该方法应用于图数据库的弹性扩缩容装置中,该装置可以被配置于任一计算机设备,计算机设备可以是服务器,服务器可以是独立的服务器或多个服务器组成的服务器集群。
参照图1,本实施例提供一种图数据库的弹性扩缩容方法,包括步骤S1-S4:
步骤S1,对主图数据库进行备份以生成主图数据库的从图数据库,其中,主图数据库存储有图数据,图数据包括多个节点以及节点之间的关系边。
其中,图数据库可以采用Neo4j、JanusGraph或其他图形数据库。图数据库可以是以容器方式部署的数据库。
本实施例中,图数据包括多个节点以及节点之间的关系边,图数据中的节点用于表示发生连接的主体,图数据中的关系边用来表示主体之间的关联关系。节点通过与其相连的各个边和其他节点产生关联。图数据库中预先存储有具有图结构的数据,例如知识图谱、社交网络图、网页流量地图等。
示例性地,以知识图谱作为图数据库中的图数据为例,如图2所示,该知识图谱由9个节点组成,包括节点A~节点I,其中,节点F分别与节点B、C、D、E、F、G存在关系边,节点I分别与节点B、C存在关系边。
可以理解的是,当对主图数据库进行备份生成主图数据库的从图数据库后,从图数据库中存储的图数据与主图数据库中存储的图数据相同。
此外,图数据库预先设定有对应的初始数量级,该初始数量级可以根据实际情况(例如参照历史存储的图数据量)进行设定,例如将初始数量级设定为105,同时设定多个数量级作为阈值阶梯数σi,例如可以包括十万级105、百万级106、千万级107、亿级108、十亿级109、百亿级1010等10i的数量级,其中i的取值从5,6…起开始自增。例如,当图数据库的数量级为十万级105时,图数据库的总容量为105个。
步骤S2,对主图数据库中的节点数量和关系边数量进行监控,根据监控结果,获取主图数据库中图数据对应的库容量。
本实施例中,监控主图数据库中的节点数量和关系边数量,进而获取主图数据库中图数据对应的库容量,可以判断主图数据库的资源利用程度。
在一个示例中,根据监控结果,获取主图数据库中图数据对应的库容量,可以包括:
采用预设权重值对监控到的节点数量与关系边数量进行加权求和,将加权求和结果作为主图数据库中图数据对应的库容量;或者
对监控到的节点数量与关系边数量进行求和计算,将求和结果作为主图数据库中图数据对应的库容量。
其中,可以根据对节点预先分配的节点权重值以及对关系边预先分配的关系边权重值,对监控到的节点数量和关系边数量进行加权求和,将加权求和结果作为主图数据库中图数据对应的库容量。这里,节点权重值、关系边权重值可以根据专家经验法进行设定,节点权重值与关系边权重值之和为1,例如设定节点权重值为0.4,关系边权重值为0.6。
此外,也可以对监控到的节点数量与关系边数量进行求和,将求和结果作为主图数据库中图数据对应的库容量,也就是说,可以将主图数据库中图数据对应的库容量Storage定义为∑Node+∑Rel,即节点数量与关系边数量之和。以图2所示的知识图谱为例,其中节点数量∑Node=9,关系边数量∑Rel=11,可以计算出知识图谱对应的库容量Storage=20。
步骤S3,计算图数据对应的库容量处于主图数据库的当前数量级对应的总容量的占比,并对占比与预设比值阈值进行比较,得到比较结果。
本实施例中,主图数据库的当前数量级用于指示主图数据库当前的最大容量。主图数据库的当前数量级可以根据最后一次对主图数据库进行扩容或缩容的处理结果获得。
具体地,可以对步骤S2得到的主图数据库中图数据对应的库容量与主图数据库的当前数量级对应的总容量进行求比值,得到库容量占总容量的占比,对占比与预设比值阈值进行比较,以判断是否需要对主图数据库进行扩容处理或缩容处理。
其中,预设比值阈值包括与扩容处理对应的预设扩容阈值和与缩容处理对应的预设缩容阈值,即预设扩容阈值和预设缩容阈值分别是用于判断是否需要对主图数据库进行扩容处理或缩容处理的依据。当主图数据库中图数据对应的库容量占总容量的占比超过预设扩容阈值时,说明主图数据库中的负荷较重,需要对主图数据库进行扩容处理;当主图数据库中图数据对应的库容量占总容量的占比低于预设缩容阈值时,说明主图数据库中的负荷较少,资源利用程度不高,需要对主图数据库进行缩容处理,以提高资源利用程度。
步骤S4,根据比较结果,对主图数据库与从图数据库进行主从切换,并对切换后的主图数据库进行相应的扩容处理或缩容处理。
其中,主图数据库的状态切换逻辑为:使用中→更新中→使用中→使用中;相应地,从图数据库的状态切换逻辑为:备用中→使用中→更新中→备用中。
其中,预设的占比阈值包括预设扩容阈值,步骤S4的实现过程可以包括:
步骤S41,判断占比是否超过预设扩容阈值,若超过,将主图数据库由使用状态切换到更新状态,将从图数据库由备用状态切换到使用状态,并对切换到更新状态的主图数据库进行扩容。
进一步地,步骤S41执行之后,上述步骤S4的实现过程还可以包括:
步骤S42,若主图数据库完成扩容,将主图数据库由更新状态切换到使用状态,将从图数据库由使用状态切换到更新状态,并对切换到更新状态的从图数据库进行扩容。
其中,预设的占比阈值包括预设扩容阈值,上述步骤S4可以包括:
步骤S43,判断占比是否低于预设缩容阈值,若低于,将主图数据库由使用状态切换到更新状态,将从图数据库由备用状态切换到使用状态,并对切换到更新状态的主图数据库进行缩容。
进一步地,步骤S43执行之后,上述步骤S4的实现过程还可以包括:
步骤S44,若主图数据库完成缩容,将主图数据库由更新状态切换到使用状态,将从图数据库由使用状态切换到更新状态,并对切换到更新状态的从图数据库进行缩容。
其中,上述的预设扩容阈值和预设缩容阈值均可以根据实际情况进行设定,可以理解的是,预设扩容阈值和预设缩容阈值均小于1,且预设扩容阈值大于预设缩容阈值。
优选地,预设扩容阈值设定为0.8,预设缩容阈值设定为0.2。
其中,上述的扩容可以是对图数据库的当前数量级自增一。举例来说,假设图数据库的当前数量级为百万级106,若检测到主图数据库中图数据对应的库容量占总容量的占比超过0.8时,那么对当前数量级自增一后的数量级为千万级107以作为图数据库的扩容结果。其中,上述的扩容可以是对图数据库的当前数量级自减一。举例来说,假设图数据库的当前数量级为百万级106,若检测到主图数据库中图数据对应的库容量为150000,该库容量占主图数据库的总容量106的占比为0.15,低于0.2,那么对当前数量级自减一后的数量级为十万级105以作为图数据库的缩容结果,可以理解的是,在图数据库完成缩容处理后,对于图数据中超出最大容量的数据可以利用图数据库自身的弹性(或buffer)空间进行存储。
下面结合图3进一步说明上述步骤S4中主图数据库和从图数据库之间的主从切换过程。如图3所示,主图数据库用A表示,从图数据库用B表示,当服务器检测到主图数据库中图数据对应的库容量Storage处于该主图数据库的当前数量级对应的总容量的80%上分位时,即Storage≥0.8*10i,则服务器会将当前处于“使用中”状态的主图数据库切换为“更新中”状态,将处于“备用中”状态的从图数据库切换为“使用中”状态,对处于“更新中”状态的主图数据库升级其软件资源设施,以实现对主图数据库的扩容处理;当升级完毕后,将升级完毕的主图数据库由“更新中”状态切换为“使用中”状态,而将处于“使用中”状态的从图数据库切换为“更新中”状态,并按上述升级方式进行升级,以实现对从图数据库的扩容处理。当服务器检测到主图数据库中图数据对应的库容量Storage处于该主图数据库的当前数量级对应的总容量的20%下分位时,即Storage≤0.2*10i,则服务器会将当前处于“使用中”状态的主图数据库切换为“更新中”状态,将处于“备用中”状态的从图数据库切换为“使用中”状态,对处于“更新中”状态的主图数据库升级其软件资源设施,以实现对主图数据库的缩容处理;当升级完毕后,将升级完毕的主图数据库由“更新中”状态切换为“使用中”状态,而将处于“使用中”状态的从图数据库切换为“更新中”状态,并按上述升级方式进行升级,以实现对从图数据库的缩容处理。
另外,上述的扩容处理/缩容处理所需的资源可以根据预设的配置信息获取,配置信息中包括不同数量级所对应的容器实例以及容器实例所需要的资源信息。
可选地,本实施例提供的方法还可以包括:
若比较结果指示需要对主图数据库进行扩容处理或缩容处理,则输出数据库告警信息至预设终端,数据库告警信息包括:占比与预设比值阈值之间的比较结果、时间信息、图数据库的端口名称以及端口地址信息。
可选地,本实施例提供的方法还可以包括:
若主图数据库与从图数据库之间的主从切换出现失败,则发送切换失败信息至预设终端,以使预设终端通过人工手动配置对主图数据库与从图数据库进行主从切换,例如,当预设终端接收到切换失败信息后,通过人工对主图数据库与从图数据库进行主从切换,用户可以通过在终端上调出端口配置界面上,然后手动操作进行配置主图数据库的端口状态和从图数据库的端口状态。如图4所示的图数据库的端口配置界面示意图,用户可以在该配置界面上配置包括图数据库名称、端口名称、端口地址信息、端口当前状态信息以及对应操作按钮。
本发明实施例提供一种图数据库的弹性扩缩容方法,通过对主图数据库进行备份以生成主图数据库的从图数据库,并对主图数据库中实体数量以及关系边数量进行监控,以获取图数据库的图数据对应的库容量,并对图数据对应的库容量处于主图数据库的当前数量级对应的总容量的占比与预设的占比阈值进行比较,根据比较结果,采用A/B切换的方式对图数据库进行相应的弹性扩容或缩容处理,由此避免了造成数据及资源浪费,同时保证***的高效稳定运行,改变了原有必须要进行停机更新扩容的方式对业务的影响。
在一个实施例中,对主图数据库进行备份以生成主图数据库的从图数据库步骤之前,方法还可以包括构建知识图谱并作为图数据存储至主图数据库中,该过程包括:
对预先获取的资源数据进行抽取处理,获得图谱Schema,图谱Schema包括多个概念、概念之间的上下级关系以及指向关系;
将图谱Schema的图谱库名、各个概念分别表示为节点进行存储至预设的图数据库中;
基于各个概念所表示的节点,将概念之间的上下级关系、概念之间的指向关系分别以关系方式存储至图数据库中;
对图数据库中的各个概念添加实例,实例继承了概念的所有属性;
对图数据库中各个概念的实例添加属性信息,属性信息包括数值属性信息和对象属性信息;
对图数据库中继承的对象属性添加边属性信息,即构建得到知识图谱。
其中,将图谱Schema的图谱库名、各个概念分别表示为节点进行存储至预设的图数据库中,可以包括:
在图谱Schema的图谱库名表示为节点时,将图谱库名关联的参数信息以键值对的方式存储至图数据库中;
在各个概念分别表示为节点时,将各个概念关联的参数信息分别以键值对的方式存储至图数据库中,其中,各个概念关联的参数信息至少包括概念名称、概念属性信息。
其中,基于各个概念所表示的节点,将概念之间的上下级关系、概念之间的指向关系分别以关系方式存储至图数据库中,可以包括:
基于各个概念所表示的节点,将概念之间的上下级关系通过关系三元组结构存储至图数据库中;
根据概念之间的指向关系,对图数据库中各个概念所表示的节点通过有向边进行连接,并将各个有向边的边属性信息分别以键值对的方式存储至图数据库中。
本实施例中,通过利用图数据库存储知识图谱的顶层设计Schema描述,能够避免多层级父子关系在关系型数据库中递归查询复杂的问题,解决了知识图谱的Schema存储问题,提高了知识图谱调用返回能力,降低了反复拼接的性能成本。
本实施例中,通过利用图数据库存储知识图谱的顶层设计Schema描述,能够避免多层级父子关系在关系型数据库中递归查询复杂的问题,解决了知识图谱的Schema存储问题,提高了知识图谱调用返回能力,降低了反复拼接的性能成本。
在一个实施例中,提供了一种图数据库的弹性扩缩容装置,该装置可以被配置于任一计算机设备中,以使该计算机设备可以执行上述实施例提供的图数据库的弹性扩缩容方法。
参照图5,本实施例提供的图数据库的弹性扩缩容装置可以包括:
备份模块51,用于对主图数据库进行备份以生成主图数据库的从图数据库,其中,主图数据库存储有图数据,图数据包括多个节点以及节点之间的关系边;
监控模块52,用于对主图数据库中的节点数量和关系边数量进行监控;
获取模块53,用于基于监控模块的监控结果,获取主图数据库中图数据对应的库容量;
计算模块54,用于计算图数据对应的库容量处于主图数据库的当前数量级对应的总容量的占比;
比较模块55,用于对计算模块计算出的占比与预设比值阈值进行比较,得到比较结果;
处理模块56,用于根据比较结果,对主图数据库与从图数据库进行主从切换,并对切换后的主图数据库进行相应的扩容处理或缩容处理。
在一个实施例中,获取模块53具体用于:
采用预设权重值对监控到的节点数量与关系边数量进行加权求和,将加权求和结果作为主图数据库中图数据对应的库容量。
在一个实施例中,预设比值阈值包括预设扩容阈值,处理模块56具体用于:
判断占比是否超过预设扩容阈值;
若超过,将主图数据库由使用状态切换到更新状态,将从图数据库由备用状态切换到使用状态,并对切换到更新状态的主图数据库进行扩容。
在一个实施例中,处理模块56具体还用于:
若主图数据库完成扩容,将主图数据库由更新状态切换到使用状态,将从图数据库由使用状态切换到更新状态,并对切换到更新状态的从图数据库进行扩容。
在一个实施例中,预设比值阈值包括预设缩容阈值,处理模块56具体用于:
判断占比是否低于预设缩容阈值;
若低于,将主图数据库由使用状态切换到更新状态,将从图数据库由备用状态切换到使用状态,并对切换到更新状态的主图数据库进行缩容。
在一个实施例中,处理模块56具体还用于:
若主图数据库完成缩容,将主图数据库由更新状态切换到使用状态,将从图数据库由使用状态切换到更新状态,并对切换到更新状态的从图数据库进行缩容。
在一个实施例中,装置还可以包括第一告警模块,第一告警模块具体用于:
若比较结果指示需要对主图数据库进行扩容处理或缩容处理,则输出数据库告警信息至预设终端,数据库告警信息包括:占比与预设比值阈值之间的比较结果、时间信息、图数据库的端口名称以及端口地址信息。
在一个实施例中,装置还可以包括第二告警模块,第二告警模块具体用于:
若主图数据库与从图数据库之间的主从切换出现失败,则发送切换失败信息至预设终端,以使预设终端通过人工手动配置对主图数据库与从图数据库进行主从切换
在一个实施例中,装置还包括知识图谱存储模块,知识图谱存储模块用于:
对预先获取的资源数据进行抽取处理,获得图谱Schema,图谱Schema包括多个概念、概念之间的上下级关系以及指向关系;
将图谱Schema的图谱库名、各个概念分别表示为节点进行存储至预设的图数据库中;
基于各个概念所表示的节点,将概念之间的上下级关系、概念之间的指向关系分别以关系方式存储至图数据库中;
对图数据库中的各个概念添加实例,实例继承了概念的所有属性;
对图数据库中各个概念的实例添加属性信息,属性信息包括数值属性信息和对象属性信息;
对图数据库中继承的对象属性添加边属性信息,即构建得到知识图谱。
在一个实施例中,知识图谱存储模块具体用于:
在图谱Schema的图谱库表示为节点时,将图谱库关联的参数信息以键值对的方式存储至图数据库中;
在各个概念分别表示为节点时,将各个概念关联的参数信息分别以键值对的方式存储至图数据库中,其中,各个概念关联的参数信息至少包括概念名称、概念属性信息。
在一个实施例中,知识图谱存储模块具体用于:
基于各个概念所表示的节点,将概念之间的上下级关系通过关系三元组结构存储至图数据库中;
根据概念之间的指向关系,对图数据库中各个概念所表示的节点通过有向边进行连接,并将各个有向边的边属性信息分别以键值对的方式存储至图数据库中。
需要说明的是:本发明实施例提供的图数据库的弹性扩缩容装置中,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,本实施例中的图数据库的弹性扩缩容装置的具体实现过程和有益效果详见实施例中的图数据库的弹性扩缩容方法,这里不再赘述。
图6为本发明实施例提供的计算机设备的内部结构图。该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图数据库的弹性扩缩容方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
对主图数据库进行备份以生成主图数据库的从图数据库,其中,主图数据库存储有图数据,图数据包括多个节点以及节点之间的关系边;
对主图数据库中的节点数量和关系边数量进行监控,得到监控数据;
基于监控数据,获取主图数据库中图数据对应的库容量,并获取图数据处于对应库容量等级的占比;
计算图数据对应的库容量处于主图数据库的当前数量级对应的总容量的占比,并对占比与预设比值阈值进行比较,得到比较结果;
根据比较结果,对主图数据库与从图数据库进行主从切换,并对切换后的主图数据库进行相应的扩容处理或缩容处理。
在一个实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
对主图数据库进行备份以生成主图数据库的从图数据库,其中,主图数据库存储有图数据,图数据包括多个节点以及节点之间的关系边;
对主图数据库中的节点数量和关系边数量进行监控,得到监控数据;
基于监控数据,获取主图数据库中图数据对应的库容量,并获取图数据处于对应库容量等级的占比;
计算图数据对应的库容量处于主图数据库的当前数量级对应的总容量的占比,并对占比与预设比值阈值进行比较,得到比较结果;
根据比较结果,对主图数据库与从图数据库进行主从切换,并对切换后的主图数据库进行相应的扩容处理或缩容处理。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种图数据库的弹性扩缩容方法,其特征在于,所述方法包括:
对主图数据库进行备份以生成所述主图数据库的从图数据库,其中,所述主图数据库存储有图数据,所述图数据包括多个节点以及所述节点之间的关系边;
对所述主图数据库中的节点数量和关系边数量进行监控,根据监控结果,获取所述主图数据库中所述图数据对应的库容量;
计算所述图数据对应的库容量处于所述主图数据库的当前数量级对应的总容量的占比,并对所述占比与预设比值阈值进行比较,得到比较结果;
根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理。
2.根据权利要求1所述的方法,其特征在于,所述根据监控结果,获取所述主图数据库中所述图数据对应的库容量,包括:
采用预设权重值对监控到的所述节点数量与所述关系边数量进行加权求和,将加权求和结果作为所述主图数据库中所述图数据对应的库容量;
或者,对监控到的所述节点数量与所述关系边数量进行求和计算,将求和结果作为所述主图数据库中所述图数据对应的库容量。
3.根据权利要求1所述的方法,其特征在于,所述预设比值阈值包括预设扩容阈值,所述根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理,包括;
判断所述占比是否超过所述预设扩容阈值;
若超过,将所述主图数据库由使用状态切换到更新状态,将所述从图数据库由备用状态切换到使用状态,并对切换到更新状态的所述主图数据库进行扩容。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述主图数据库完成扩容,将所述主图数据库由更新状态切换到使用状态,将所述从图数据库由使用状态切换到更新状态,并对切换到更新状态的所述从图数据库进行扩容。
5.根据权利要求1至4任一所述的方法,其特征在于,所述预设比值阈值包括预设缩容阈值,所述根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理,包括;
判断所述占比是否低于所述预设缩容阈值;
若低于,将所述主图数据库由使用状态切换到更新状态,将所述从图数据库由备用状态切换到使用状态,并对切换到更新状态的所述主图数据库进行缩容。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若所述主图数据库完成缩容,将所述主图数据库由更新状态切换到使用状态,将所述从图数据库由使用状态切换到更新状态,并对切换到更新状态的所述从图数据库进行缩容。
7.一种图数据库的弹性扩缩容装置,其特征在于,所述装置包括:
备份模块,用于对主图数据库进行备份以生成所述主图数据库的从图数据库,其中,所述主图数据库存储有图数据,所述图数据包括多个节点以及所述节点之间的关系边;
监控模块,用于对所述主图数据库中的节点数量和关系边数量进行监控;
获取模块,用于基于所述监控模块的监控结果,获取所述主图数据库中所述图数据对应的库容量;
计算模块,用于计算所述图数据对应的库容量处于所述主图数据库的当前数量级对应的总容量的占比;
比较模块,用于对所述计算模块计算出的占比与预设比值阈值进行比较,得到比较结果;
处理模块,用于根据所述比较结果,对所述主图数据库与所述从图数据库进行主从切换,并对切换后的所述主图数据库进行与相应的扩容处理或缩容处理。
8.根据权利要求7所述的装置,其特征在于,所述获取模块具体用于:
采用预设权重值对监控到的所述节点数量与所述关系边数量进行加权求和,将加权求和结果作为所述主图数据库中所述图数据对应的库容量;或者
对监控到的所述节点数量与所述关系边数量进行求和计算,将求和结果作为所述主图数据库中所述图数据对应的库容量。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至6任一所述的图数据库的弹性扩缩容方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一所述的图数据库的弹性扩缩容方法。
CN202010884121.2A 2020-08-28 2020-08-28 一种图数据库的弹性扩缩容方法、装置、设备及存储介质 Pending CN112115311A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010884121.2A CN112115311A (zh) 2020-08-28 2020-08-28 一种图数据库的弹性扩缩容方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010884121.2A CN112115311A (zh) 2020-08-28 2020-08-28 一种图数据库的弹性扩缩容方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112115311A true CN112115311A (zh) 2020-12-22

Family

ID=73803860

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010884121.2A Pending CN112115311A (zh) 2020-08-28 2020-08-28 一种图数据库的弹性扩缩容方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112115311A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114996351A (zh) * 2022-05-18 2022-09-02 聚好看科技股份有限公司 数据库弹性方法、数据库弹性装置及数据库弹******

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108600321A (zh) * 2018-03-26 2018-09-28 中国科学院计算技术研究所 一种基于分布式内存云的图数据存储方法和***
CN109783577A (zh) * 2019-01-05 2019-05-21 咪付(广西)网络技术有限公司 一种基于策略的云端数据库弹性伸缩方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108600321A (zh) * 2018-03-26 2018-09-28 中国科学院计算技术研究所 一种基于分布式内存云的图数据存储方法和***
CN109783577A (zh) * 2019-01-05 2019-05-21 咪付(广西)网络技术有限公司 一种基于策略的云端数据库弹性伸缩方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114996351A (zh) * 2022-05-18 2022-09-02 聚好看科技股份有限公司 数据库弹性方法、数据库弹性装置及数据库弹******

Similar Documents

Publication Publication Date Title
CN110597623A (zh) 容器资源分配方法、装置、计算机设备和存储介质
CN110750267A (zh) 业务信息更新方法、装置、计算机设备和存储介质
CN111158715B (zh) 灰度发布控制方法及***
Scholz-Reiter et al. Robust capacity allocation in dynamic production networks
CN115297124B (zh) 一种***运维管理方法、装置及电子设备
CN112115311A (zh) 一种图数据库的弹性扩缩容方法、装置、设备及存储介质
CN114528085A (zh) 资源调度方法、装置、计算机设备、存储介质和程序产品
CN115391963A (zh) 基于超边内部结构的随机超网络鲁棒性研究方法和***
CN112540749A (zh) 微服务划分方法、装置、计算机设备和可读存储介质
CN115167992A (zh) 任务处理方法、***、装置、服务器、介质及程序产品
CN106603125B (zh) 一种与蓝牙设备进行数据交互的方法及装置
CN112115310A (zh) 一种图谱Schema的存储方法、装置、计算机设备及存储介质
CN108810992B (zh) 一种网络切片的资源控制方法和装置
CN111754117B (zh) 任务下发方法、装置、电子设备及存储介质
CN111079390B (zh) 一种复选框列表的选择状态确定方法以及装置
CN113127359A (zh) 一种测试数据的获得方法及装置
CN115514624B (zh) 监控方法、装置、电子设备及存储介质
CN114268540B (zh) 规则引擎的优化方法、装置及设备
CN110879774B (zh) 一种网元性能数据告警方法及装置
CN118034971A (zh) 容器状态的恢复方法、装置、计算机设备、存储介质
CN116401028A (zh) 任务处理方法、***、计算机设备和程序产品
CN114579527A (zh) 针对磁带中镜像文件的转存方法、装置和计算机设备
CN115454997A (zh) 位图管理方法、装置、计算机设备和存储介质
CN114968108A (zh) 缓存数据的保存期限设置方法、装置、设备和存储介质
CN117648310A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201222