CN112860953A - 图数据库的数据导入方法、装置、设备及存储介质 - Google Patents
图数据库的数据导入方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112860953A CN112860953A CN202110111170.7A CN202110111170A CN112860953A CN 112860953 A CN112860953 A CN 112860953A CN 202110111170 A CN202110111170 A CN 202110111170A CN 112860953 A CN112860953 A CN 112860953A
- Authority
- CN
- China
- Prior art keywords
- data
- imported
- graph database
- attributes
- updating
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种图数据库的数据导入方法、装置、设备及存储介质,包括以下步骤:客户端获取待导入数据和更新操作,并将待导入数据和更新操作发给服务端;其中,待导入数据包括待导入的点数据、边数据,点数据、边数据包括多个属性,更新操作是为待导入数据的一个或多个属性对应指定的一个或多个操作;服务端接收待导入数据和更新操作,并执行如下操作:根据待导入数据的标识属性来查询服务端的图数据库,判断是否存在具有相同标识属性的原数据,如果结果已存在,则根据原数据和待导入数据的对应属性执行更新操作并将执行更新操作后的属性记录在图数据库中。利用本发明提出的方法,能够提升基于原数据进行更新的数据加载性能,大幅度提高处理效率。
Description
技术领域
本发明涉及数据库技术领域,特别是涉及一种图数据库的数据导入方法、装置、设备及存储介质。
背景技术
在图数据库(graph database)中,数据是按照“节点”和“边”的模式存储和操作的。社交网络就是图的一个例子,其中每个节点代表一个人,边可以是朋友关系,并用属性表示节点和边的数据信息。在使用图数据库时,需先基于非图结构数据源通过数据建模、变换和导入等操作建立图结构数据。
图数据库在进行数据加载时,进行新增或者直接覆盖时,加载速度很快;但是基于原数据进行更新时,速度就会非常慢。原因在于,在数据更新时,需要进行如下操作:首先客户端从图数据库服务端查询边是否已经存在;如果存在,将查询出的点、边的属性传输至客户端;在客户端,该查询出的点、边的属性与待加载数据一起计算得到新属性值;然后再将该新属性写入图数据库服务端。因此数据查询、传输次数较多,导致效率低下。虽然可以采用批量读取、批量更新的方式来提升速度,但仍然无法满足一些大数据量业务场景的需要。
发明内容
本发明的目的在于提供一种新的图数据库的数据导入方法、装置及存储介质。
本发明的目的采用以下技术方案来实现。依据本发明提出的图数据库的数据导入方法,包括以下步骤:步骤S1,客户端获取待导入数据和对应的更新操作,并将所述待导入数据和所述更新操作发给服务端;其中,所述待导入数据包括待导入的点数据和/或边数据,所述点数据和/或所述边数据包括多个属性,所述更新操作是为所述待导入数据的所述多个属性中的一个或一些属性对应指定的一个或多个操作;步骤S2,服务端接收所述待导入数据和所述更新操作,并由所述服务端执行如下操作:根据所述待导入数据的标识属性来查询服务端的图数据库,判断是否存在具有相同的标识属性的原数据,如果所述查询的结果为已存在,则根据所述原数据和所述待导入数据的对应属性执行所述更新操作,并将执行所述更新操作后的属性记录在所述图数据库中。
本发明的目的还可以采用以下的技术措施来进一步实现。
前述的图数据库的数据导入方法,在所述服务端的图数据库底层设置有实现所述更新操作所需的指令;
至少一些所述更新操作的指令包括读取所述原数据并用所述待导入数据来修改所述原数据;
所述更新操作包括以下的一个或多个:取最大操作、取最小操作、累加操作、添加到集合操作、集合交集操作、添加到列表操作、从列表删除操作、保留原值操作、覆盖操作。
前述的图数据库的数据导入方法,在所述步骤S2中所述的根据所述待导入数据的标识属性来查询服务端的图数据库,判断是否存在具有相同的标识属性的原数据的步骤之后,还包括:如果所述查询的结果为所述图数据库中不存在所述原数据,则在所述图数据库中根据所述待导入数据新建数据。
本发明的目的还采用以下的技术方案来实现。依据本发明提出的一种图数据库的数据导入装置,包括:
接收模块,用于接收待导入数据和对应的更新操作;其中,所述待导入数据包括待导入的点数据和/或边数据,所述点数据和/或所述边数据包括多个属性,所述更新操作是为所述待导入数据的所述多个属性中的一个或一些属性对应指定的一个或多个操作;
查询模块,用于根据所述待导入数据的标识属性来查询图数据库,判断是否存在具有相同的标识属性的原数据;以及
更新模块,用于如果所述查询的结果为已存在,则根据所述原数据和所述待导入数据的对应属性执行所述更新操作,并将执行所述更新操作后的属性记录在所述图数据库中。
本发明的目的还可以采用以下的技术措施来进一步实现。
前述的图数据库的数据导入装置,所述装置还包括更新操作预设模块,用于存储实现所述更新操作所需的指令;其中,至少一些所述更新操作的指令包括读取所述原数据并借助所述原数据来修改所述待导入数据;所述更新操作包括以下的一个或多个:取最大操作、取最小操作、累加操作、添加到集合操作、集合交集操作、添加到列表操作、从列表删除操作、保留原值操作、覆盖操作。
前述图数据库的数据导入装置还包括新建模块,用于如果所述查询的结果为在所述图数据库中不存在所述原数据,则在所述图数据库中根据所述待导入数据新建数据。
本发明的目的还采用以下的技术方案来实现。依据本发明提出的一种图数据库的数据导入装置,包括:
获取模块,用于获取待导入数据和对应的更新操作;其中,所述待导入数据包括待导入的点数据和/或边数据,所述点数据和/或所述边数据包括多个属性,所述更新操作是为所述待导入数据的所述多个属性中的一个或一些属性对应指定的一个或多个操作;以及
发送模块,用于将所述待导入数据和所述更新操作发送至具有图数据库的服务端;以便所述服务端:根据所述待导入数据的标识属性来查询服务端的图数据库中是否存在具有相同的标识属性的原数据,如果所述查询的结果为已存在,则根据所述原数据和所述待导入数据的对应属性执行所述更新操作,并将执行所述更新操作后的属性记录在所述图数据库中。
本发明的目的还采用以下的技术方案来实现。依据本发明提出的一种图数据库的数据导入设备,包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行所述计算机可读指令,使得所述计算机可读指令被所述处理器执行时实现上述任一项可能的图数据库的数据导入方法。
本发明的目的还采用以下的技术方案来实现。依据本发明提出的一种计算机存储介质,包括计算机指令,当计算机指令在设备上运行时,使得设备执行上述任一方面可能的图数据库的数据导入方法。
本发明与现有技术相比具有明显的优点和有益效果。借由上述技术方案,本发明提出的图数据库的数据导入方法、装置、设备及存储介质至少具有下述优点及有益效果:利用本发明提出的图数据库的数据导入方法,在对图数据库基于原数据进行更新时,通过在图数据库中预先增加了更新操作的定义和实现,在导入数据同时指定属性采用的更新操作,由图数据库直接完成数据计算,从而减少数据交互,提升基于原数据进行更新的数据加载性能,大幅度提高处理效率。
上述说明仅是本发明技术方案的概述,为了能更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
图1是本发明一个实施例的图数据库的数据导入方法的流程示意图;
图2是本发明一个实施例的图数据库的数据导入装置的示意图;
图3是本发明另一实施例的图数据库的数据导入装置的示意图;
图4是本发明另一实施例的图数据库的数据导入设备的示意图。
具体实施方式
为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的图数据库的数据导入方法、装置、设备及存储介质的具体实施方式、结构、特征及其功效,详细说明如后。
在图数据库(graph database)中,数据是按照“点”(vertex)和“边”(edge)的模式存储和操作的。其中,点是独立存在的对象,也称为顶点、节点。边是点之间发生的关系、事件,也称作关系。每个节点或关系可以有一个或多个属性。可选的,属性的形式可以是键值对。
图1为本发明的图数据库的数据导入方法一个实施例的示意性流程框图。请参阅图1,本发明示例的图数据库的数据导入方法主要包括以下步骤:
步骤S1,客户端获取待导入数据并获取对应的更新操作,并将该待导入数据和该更新操作发给服务端。
其中,该待导入数据可以是“节点-边”模式的数据,该待导入数据包括待导入的一个或多个点数据和/或一个或多个边数据。各个点数据和/或边数据包括多个属性。该更新操作是为该待导入数据的多个属性中的一个或一些属性对应指定的一个或多个操作。从而在将待导入数据和更新操作发送至服务端时,将包括点和/或边的一个或多个属性的待导入数据、与其中一个或一些属性对应的更新操作发送至服务端。另外,由于本文的更新操作针对于点、边的属性,因此也可称为属性更新操作。
步骤S2,服务端接收待导入数据和对应的更新操作,该服务端具有图数据库,并由该服务端执行如下操作:
查询该服务端的图数据库中是否存在与待导入数据对应的原数据,具体的,根据待导入数据的标识属性来查询服务端的图数据库,判断是否存在具有相同的标识属性的原数据;
如果查询的结果为已存在与待导入数据的标识属性相同的原数据,则在该服务端中根据该原数据和该待导入数据的对应属性执行接收到的更新操作,并将执行更新操作后的属性记录在图数据库中。
可选的,点数据和/或边数据的标识属性为前述的其所包含的多个属性中的一类属性,用于区分不同的点、边。标识属性包括但不限于点和/或边的名称、标识码或地址中的一个或多个。需注意,一个点或一个边可以同时包括多个同种类型的标识属性。例如在一个具体示例中,图数据库为涉及网络安全的图数据库,一个边数据可以具有两个标识属性:发出端地址和接收端地址。
需注意,前述更新操作中的“操作”,在面向对象的程序设计和软件开发中也可称为“方法”,当然这里的方法可以是一个类的方法,也可以是一个复杂的操作过程,或者在面向过程的程序设计和软件开发中也可称为“函数”。
在本发明的一些实施例中,本发明提出的图数据库的数据导入方法还可以包括:预先、或在获取导入数据时,亦即在前述步骤S1之前或在进行前述步骤S1的过程中,为待导入数据的一个或一些属性、或者为待导入数据的一类或一些类属性指定对应的操作。需注意,在客户端进行的指定属性更新操作可以是用户人为选定采用何种更新;或者,也可以自动选定更新操作,例如,可以预先设定数据类型与更新操作之间的对应关系,在获取待导入数据时,根据获取到的待导入数据的类型来自动确定所使用的更新方法。
作为一个具体实施例,预先设置有更新规则,该更新规则中包含属性类型与更新操作的对应关系,在客户端获取待导入数据时,同时获取更新规则,从而根据该更新规则确定与待导入数据中的一个或一些属性对应的更新操作。作为另一具体实施例,不必预先设置更新规则,而是客户端通过接收用户指令来获取待导入数据和/或更新操作,从而可以通过用户的输入来获取为一个或多个属性指定对应的更新操作。
在本发明的一些实施例中,前述更新操作是预先在服务端的图数据库底层中实现的,更新操作的具体处理已预存在服务端。具体的,在本发明的一些实施例中,在前述步骤S2之前还包括:在服务端的图数据库的底层设置有实现更新操作所需的指令。并且在前述步骤S2之中,服务端在接收待导入数据和更新操作后,发送至服务端的图数据库的底层,由图数据库的底层根据预先设置的实现更新操作所需的指令来执行后续操作。可选的,在前述的服务端的图数据库的底层预先实现属性更新操作的过程中,预先实现多种更新操作,并为该多种更新操作分配对应的标识信息,例如名称或ID等,用以在前述示例中根据该标识信息来指定和利用更新操作。
需注意,在一些示例中,客户端在获取和发送更新操作时,仅需利用更新操作的标识和所对应的属性来进行获取和发送,而不必利用更新操作的具体实现。因为更新操作的具体处理已预存在服务端,且更新操作的具体处理是在服务端执行的。作为本发明的一个具体实施例,在前述步骤S1中,获取更新操作具体包括:获取一个或多个属性的标识(例如属性的名称、ID等)、以及该属性将要进行的更新操作的标识(例如更新操作的名称、ID等)。在一个可选示例中,利用键字段记录属性的标识,利用值字段记录更新操作的标识,从而可以利用键值对来表示更新规则,该更新规则用于记录属性与更新操作的对应关系。
在本发明的一些实施例中,至少一些更新操作需利用图数据库中已存在的原数据,包括但不限于:读取原数据并用待导入数据来修改原数据;或,读取原数据并利用该原数据来修改待导入数据以便存储该修改后的待导入数据。
在本发明的一些实施例中,前述更新操作包括以下的一个或多个:取最大操作(简称max)、取最小操作(简称min)、累加操作(简称sum)、添加到集合操作(简称set_add)、集合交集操作(简称set_inter)、添加到列表操作(简称list_append)、从列表删除操作(简称list_remove)、保留原值操作(简称keep)、覆盖操作(简称overwrite)。
可选的,取最大max、取最小min:适用于时间类属性。累加sum:适用于包数、字节数、次数类属性。涉及集合set、列表list的操作:适用于端口、时间记录类属性。保留原值old:适用于一些标记类属性。可选的,添加到列表操作包括把数据加入到一个列表中;添加到集合操作包括:加入列表前,先查重,如果不存在就加入;集合交集操作用于获取多个集合的相同子集。
可选的,默认的更新操作为覆盖操作。例如,若待导入数据的一条边包括一个属性但未指定该属性对应的更新操作的类型,则在步骤S2中利用该待导入数据的该边的该属性来替换图数据库中的原数据的该边的该属性。需注意,本示例中虽然以待导入数据的边作为示例,事实上也可以对待导入数据的点进行同样处理。
在本发明的一些实施例中,在前述步骤S2中的查询图数据库中是否存在与待导入数据对应的原数据之后,还包括:如果查询的结果为图数据库中不存在与待导入数据对应的原数据,则根据待导入数据在图数据库中新建数据。
利用本发明提出的图数据库的数据导入方法,在对图数据库基于原数据进行更新时,通过在图数据库中预先增加了更新操作的定义和实现,在导入数据同时指定属性采用的更新操作,由图数据库直接完成数据计算,从而减少数据交互,提升基于原数据进行更新的数据加载性能,大幅度提高处理效率。
作为一个具体实施例,利用图数据库记录网络安全情况。其中的边edge及其属性可以表示为键值对,如下:
"edges":[
{
"label":"trojan",
"source":"src_ip",
"target":"dst_ip",
"input":{
"type":"file",
"format":"JSON",
"path":"./trojan.json"
},
"field_mapping":{
"cnt":"comm_num",
"load_date":"earliest_day",
"update_date":"last_day"
},
"update_method":{
""""
comm_num:sum,
"earliest_day":"min",
"last_day":"max",
"dst_port":"set_add"
}
]
其中,"update_method":{}用于为一批数据设置相同的更新方法。具体的,括号中的键值对用于指定更新操作:"comm_num":"sum"表示将comm_num属性的更新操作选定为累加操作sum,"earliest_day":"min"表示将earliest_day属性的更新操作选定为取最小操作min,等等。
需注意,在本示例中,利用前述内容设置属性对应的更新操作,而不是为在单个数据中设置对应的更新操作,从而能够为一批数据设置相同的更新方法,从而能够批量地更新数据。
而当从客户端向服务端提交一条如下的待导入数据时:
{
"src_ip":"100.1.2.3",
"dst_ip":"200.5.6.7",
"dst_port":9100,
"event_name":"木马-远控Win32.Hupigon.kxbl",
"comm_num":9,
"category":"灰鸽子",
"earliest_day":"2019-06-2200:00:00",
"last_day":"2019-06-2800:00:00"
}
如果在源IP(src_ip)和目的IP(dst_ip)之间没有木马边,则用上述待导入数据新建一条木马边。其中,该数据中的源IP为100.1.2.3,目的IP为200.5.6.7。
如果已经存在这样一条木马边时,假设原边属性如下:
{
"src_ip":"100.1.2.3",
"dst_ip":"200.5.6.7",
"dst_port":{11000},
"event_name":"木马-远控Win32.Hupigon.kxbl",
"comm_num":80,
"category":"灰鸽子",
"earliest_day":"2019-06-01 00:00:00",
"last_day":"2019-06-06 00:00:00"
}
则按照"update_method":{}的规则来更新边属性。从而生成的新边属性为:
{
"src_ip":"100.1.2.3",
"dst_ip":"200.5.6.7",
"dst_port":{11000,9100},
"event_name":"木马-远控Win32.Hupigon.kxbl",
"comm_num":89,
"category":"灰鸽子",
"earliest_day":"2019-06-01 00:00:00",
"last_day":"2019-06-28 00:00:00"
}
其中,根据前述的"update_method":{},对dst_port属性、comm_num属性、earliest_day属性、last_day属性分别进行了对应的更新操作。
利用本发明提出的图数据库的数据导入方法,客户端在加载数据时,将要导入的数据发送给图数据库服务端,服务端将数据和指定的更新操作发给底层,图数据库底层查询数据,如果已存在,根据更新方法直接更新数据。这样避免了数据的二次查询,以及现存数据在客户端和服务端之间的传输过程,从而大幅度提高导入速度。
图2是图示根据本发明的一个实施例的图数据库的数据导入装置的示意图。如图2所示,根据本发明实施例的图数据库的数据导入装置100,包括接收模块101、查询模块102和更新模块103。
其中,该接收模块101用于接收由客户端传来的待导入数据和对应的更新操作。其中,该待导入数据包括待导入的点数据和/或边数据,该点数据和/或该边数据包括多个属性,该更新操作是为待导入数据的多个属性中的一个或一些属性对应指定的一个或多个操作。
该查询模块102用于查询图数据库中是否存在与待导入数据对应的原数据,具体用于根据待导入数据的标识属性来查询图数据库,判断是否存在具有相同的标识属性的原数据。
该更新模块103用于如果查询的结果为已存在,则根据原数据和待导入数据的对应属性执行更新操作,并将执行更新操作后的属性记录在图数据库中。
在本发明的一些实施例中,本发明的图数据库的数据导入装置100还包括更新操作预设模块(图中未示出),用于存储实现更新操作所需的指令。
在本发明的一些实施例中,至少一些更新操作的指令包括:读取原数据并用待导入数据来修改原数据;或,读取原数据并利用该原数据来修改待导入数据以便存储该修改后的待导入数据。
在本发明的一些实施例中,前述更新操作包括以下的一个或多个:取最大操作、取最小操作、累加操作、添加到集合操作、集合交集操作、添加到列表操作、从列表删除操作、保留原值操作、覆盖操作。
在本发明的一些实施例中,图数据库的数据导入装置100还包括:新建模块(图中未示出)。该新建模块用于如果查询的结果为图数据库中不存在原数据,则在图数据库中根据待导入数据新建数据。
需注意,本发明的图数据库的数据导入装置100可以以各种形式来实施,包括但不限于服务器。
图3是图示根据本发明的一个实施例的图数据库的数据导入装置的示意图。如图3所示,根据本发明实施例的图数据库的数据导入装置200,包括获取模块201和发送模块202:
其中,该获取模块201用于获取待导入数据和对应的更新操作。其中,待导入数据包括待导入的点数据和/或边数据,点数据和/或边数据包括多个属性,更新操作是为待导入数据的多个属性中的一个或一些属性对应指定的一个或多个操作。
该发送模块202用于将待导入数据和更新操作发送至具有图数据库的服务端。以便该服务端:根据待导入数据的标识属性来查询服务端的图数据库中是否存在具有相同的标识属性的原数据,如果查询的结果为已存在,则根据原数据和待导入数据的对应属性执行更新操作,并将执行更新操作后的属性记录在图数据库中。
需注意,本发明的图数据库的数据导入装置200可以以各种形式来实施,包括但不限于诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置、车载终端设备、车载显示终端、车载电子后视镜等等的移动终端设备以及诸如数字TV、台式计算机等等的固定终端设备。
图4是图示根据本发明的一个实施例的图数据库的数据导入设备的示意性框图。如图4所示,根据本公开实施例的图数据库的数据导入设备300包括存储器301和处理器302。
该存储器301用于存储非暂时性计算机可读指令。具体地,存储器301可以包括一个或多个计算机程序产品,该计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。该易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。该非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。
该处理器302可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制图数据库的数据导入设备300中的其它组件以执行期望的功能。在本公开的一个实施例中,该处理器302用于运行该存储器301中存储的该计算机可读指令,使得该图数据库的数据导入设备300执行前述的本公开各实施例的图数据库的数据导入方法的全部或部分步骤。
本领域技术人员应能理解,为了解决如何获得良好用户体验效果的技术问题,本实施例中也可以包括诸如通信总线、接口等公知的结构,这些公知的结构也应包含在本发明的保护范围之内。
有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。
本发明的实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在设备上运行时,使得设备执行上述相关方法步骤实现上述实施例中的图数据库的数据导入方法。
本发明的实施例还提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的图数据库的数据导入方法。
另外,本发明的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的图数据库的数据导入方法。
其中,本发明提供的装置、设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
以上所述,仅是本发明的较佳实施例而已,并非对本发明做任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (9)
1.一种图数据库的数据导入方法,其特征在于,所述方法包括以下步骤:
步骤S1,客户端获取待导入数据和对应的更新操作,并将所述待导入数据和所述更新操作发给服务端;其中,所述待导入数据包括待导入的点数据和/或边数据,所述点数据和/或所述边数据包括多个属性,所述更新操作是为所述待导入数据的所述多个属性中的一个或一些属性对应指定的一个或多个操作;
步骤S2,服务端接收所述待导入数据和所述更新操作,并由所述服务端执行如下操作:
根据所述待导入数据的标识属性来查询服务端的图数据库,判断是否存在具有相同的标识属性的原数据,
如果所述查询的结果已存在,则根据所述原数据和所述待导入数据的对应属性执行所述更新操作,并将执行所述更新操作后的属性记录在所述图数据库中。
2.根据权利要求1所述的图数据库的数据导入方法,其特征在于,
在所述服务端的所述图数据库底层设置有实现所述更新操作所需的指令;
至少一些所述更新操作的指令包括读取所述原数据并用所述待导入数据来修改所述原数据;
所述更新操作包括以下的一个或多个:取最大操作、取最小操作、累加操作、添加到集合操作、集合交集操作、添加到列表操作、从列表删除操作、保留原值操作、覆盖操作。
3.根据权利要求1所述的图数据库的数据导入方法,其特征在于,在所述步骤S2中所述的根据所述待导入数据的标识属性来查询服务端的图数据库,判断是否存在具有相同的标识属性的原数据的步骤之后,还包括:
如果所述查询的结果为所述图数据库中不存在所述原数据,则在所述图数据库中根据所述待导入数据新建数据。
4.一种图数据库的数据导入装置,其特征在于,所述装置包括:
接收模块,用于接收待导入数据和对应的更新操作;其中,所述待导入数据包括待导入的点数据和/或边数据,所述点数据和/或所述边数据包括多个属性,所述更新操作是为所述待导入数据的所述多个属性中的一个或一些属性对应指定的一个或多个操作;
查询模块,用于根据所述待导入数据的标识属性来查询图数据库,判断是否存在具有相同的标识属性的原数据;以及,
更新模块,用于如果所述查询的结果为已存在,则根据所述原数据和所述待导入数据的对应属性执行所述更新操作,并将执行所述更新操作后的属性记录在所述图数据库中。
5.根据权利要求4所述的图数据库的数据导入装置,其特征在于,
所述装置还包括更新操作预设模块,用于存储实现所述更新操作所需的指令;
其中,至少一些所述更新操作的指令包括:读取所述原数据并用所述待导入数据来修改所述原数据;
所述更新操作包括以下的一个或多个:取最大操作、取最小操作、累加操作、添加到集合操作、集合交集操作、添加到列表操作、从列表删除操作、保留原值操作、覆盖操作。
6.根据权利要求4所述的图数据库的数据导入装置,其特征在于,所述装置还包括:
新建模块,用于如果所述查询的结果为在所述图数据库中不存在所述原数据,则在所述图数据库中根据所述待导入数据新建数据。
7.一种图数据库的数据导入装置,其特征在于,所述装置包括:
获取模块,用于获取待导入数据和对应的更新操作;其中,所述待导入数据包括待导入的点数据和/或边数据,所述点数据和/或所述边数据包括多个属性,所述更新操作是为所述待导入数据的所述多个属性中的一个或一些属性对应指定的一个或多个操作;以及,
发送模块,用于将所述待导入数据和所述更新操作发送至具有图数据库的服务端;以便所述服务端:根据所述待导入数据的标识属性来查询服务端的图数据库中是否存在具有相同的标识属性的原数据,如果所述查询的结果为已存在,则根据所述原数据和所述待导入数据的对应属性执行所述更新操作,并将执行所述更新操作后的属性记录在所述图数据库中。
8.一种图数据库的数据导入设备,其特征在于,包括:
存储器,用于存储非暂时性计算机可读指令;以及
处理器,用于运行所述计算机可读指令,使得所述计算机可读指令被所述处理器执行时实现权利要求1至3中任一项所述的图数据库的数据导入方法。
9.一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在设备上运行时,使得所述设备执行如权利要求1至3中任一项所述的图数据库的数据导入方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110111170.7A CN112860953A (zh) | 2021-01-27 | 2021-01-27 | 图数据库的数据导入方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110111170.7A CN112860953A (zh) | 2021-01-27 | 2021-01-27 | 图数据库的数据导入方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112860953A true CN112860953A (zh) | 2021-05-28 |
Family
ID=76009558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110111170.7A Pending CN112860953A (zh) | 2021-01-27 | 2021-01-27 | 图数据库的数据导入方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112860953A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113239063A (zh) * | 2021-06-23 | 2021-08-10 | 北京金山数字娱乐科技有限公司 | 一种图数据库更新方法及装置 |
CN113326276A (zh) * | 2021-06-23 | 2021-08-31 | 北京金山数字娱乐科技有限公司 | 一种图数据库更新方法及装置 |
CN113448964A (zh) * | 2021-06-29 | 2021-09-28 | 四川蜀天梦图数据科技有限公司 | 一种基于图-kv的混合存储方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309750A (zh) * | 2020-03-31 | 2020-06-19 | 中国邮政储蓄银行股份有限公司 | 图数据库的数据更新方法和装置 |
US20200233860A1 (en) * | 2019-01-22 | 2020-07-23 | International Business Machines Corporation | Querying knowledge graph databases |
CN111444287A (zh) * | 2020-03-17 | 2020-07-24 | 北京齐尔布莱特科技有限公司 | 图数据库构建方法、关联信息查询方法、装置及计算设备 |
CN112015819A (zh) * | 2020-08-31 | 2020-12-01 | 杭州欧若数网科技有限公司 | 分布式图数据库的数据更新方法、装置、设备及介质 |
-
2021
- 2021-01-27 CN CN202110111170.7A patent/CN112860953A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200233860A1 (en) * | 2019-01-22 | 2020-07-23 | International Business Machines Corporation | Querying knowledge graph databases |
CN111444287A (zh) * | 2020-03-17 | 2020-07-24 | 北京齐尔布莱特科技有限公司 | 图数据库构建方法、关联信息查询方法、装置及计算设备 |
CN111309750A (zh) * | 2020-03-31 | 2020-06-19 | 中国邮政储蓄银行股份有限公司 | 图数据库的数据更新方法和装置 |
CN112015819A (zh) * | 2020-08-31 | 2020-12-01 | 杭州欧若数网科技有限公司 | 分布式图数据库的数据更新方法、装置、设备及介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113239063A (zh) * | 2021-06-23 | 2021-08-10 | 北京金山数字娱乐科技有限公司 | 一种图数据库更新方法及装置 |
CN113326276A (zh) * | 2021-06-23 | 2021-08-31 | 北京金山数字娱乐科技有限公司 | 一种图数据库更新方法及装置 |
CN113239063B (zh) * | 2021-06-23 | 2024-03-29 | 北京金山数字娱乐科技有限公司 | 一种图数据库更新方法及装置 |
CN113448964A (zh) * | 2021-06-29 | 2021-09-28 | 四川蜀天梦图数据科技有限公司 | 一种基于图-kv的混合存储方法及装置 |
CN113448964B (zh) * | 2021-06-29 | 2022-10-21 | 四川蜀天梦图数据科技有限公司 | 一种基于图-kv的混合存储方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108388599B (zh) | 电子装置、数据迁移及调用方法及存储介质 | |
CN112860953A (zh) | 图数据库的数据导入方法、装置、设备及存储介质 | |
CN109885786B (zh) | 数据缓存处理方法、装置、电子设备及可读存储介质 | |
CN109213604B (zh) | 一种数据源的管理方法和装置 | |
CN111460458B (zh) | 一种数据处理方法、相关装置及计算机可存储介质 | |
US11683316B2 (en) | Method and device for communication between microservices | |
CN111737564A (zh) | 一种信息查询方法、装置、设备及介质 | |
US11360966B2 (en) | Information processing system and method of controlling information processing system | |
CN114817146A (zh) | 一种处理数据的方法和装置 | |
CN113301203B (zh) | 基于通讯录对历史信息数据进行更新的方法及装置 | |
CN108520401B (zh) | 用户名单管理方法、装置、平台及存储介质 | |
CN116233254A (zh) | 业务切流方法、装置、计算机设备和存储介质 | |
US10448124B2 (en) | Method and system for issuing media information | |
CN116151631A (zh) | 一种业务决策处理系统、一种业务决策处理方法和装置 | |
CN115658794A (zh) | 数据查询方法、装置、计算机设备和存储介质 | |
US10678453B2 (en) | Method and device for checking false sharing in data block deletion using a mapping pointer and weight bits | |
CN114493799A (zh) | 一种分库分表管理专车订单数据的方法及系统 | |
CN110580200B (zh) | 数据同步方法和装置 | |
CN109522014B (zh) | 基于新产品开发的算法处理方法、电子装置及可读存储介质 | |
CN112291241A (zh) | 防火墙开墙方法、防火墙开墙装置及终端设备 | |
CN111144771A (zh) | 确定风评策略的方法、装置及计算机存储介质 | |
KR102267560B1 (ko) | 블록 체인에 저장되는 데이터 크기를 축소할 수 있는 데이터의 변경 이력 관리 방법 | |
CN115037799B (zh) | 限流方法、装置、设备及介质 | |
WO2024016789A1 (zh) | 日志数据查询方法、装置、设备和介质 | |
CN107729013B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210528 |