CN113918571A - 血缘数据读写方法、装置、电子设备及可读存储介质 - Google Patents
血缘数据读写方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN113918571A CN113918571A CN202111272401.9A CN202111272401A CN113918571A CN 113918571 A CN113918571 A CN 113918571A CN 202111272401 A CN202111272401 A CN 202111272401A CN 113918571 A CN113918571 A CN 113918571A
- Authority
- CN
- China
- Prior art keywords
- graph database
- database
- data
- graph
- blood
- 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
- 239000008280 blood Substances 0.000 title claims abstract description 219
- 210000004369 blood Anatomy 0.000 title claims abstract description 219
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000003860 storage Methods 0.000 title claims abstract description 26
- 230000002776 aggregation Effects 0.000 claims description 28
- 238000004220 aggregation Methods 0.000 claims description 28
- 238000013500 data storage Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000009434 installation Methods 0.000 claims description 8
- 210000004204 blood vessel Anatomy 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 5
- 238000012937 correction Methods 0.000 claims description 4
- 230000009469 supplementation Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 11
- 238000013473 artificial intelligence Methods 0.000 abstract description 7
- 238000011144 upstream manufacturing Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- 230000001939 inductive effect Effects 0.000 description 3
- 230000008033 biological extinction Effects 0.000 description 2
- 230000004087 circulation Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000153 supplemental effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- 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
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
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)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及人工智能技术,揭露了一种血缘数据读写方法,包括:将第一图数据库标记为非活动状态,将第二图数据库标记为活动状态,将实时血缘数据存储至第一图数据库中,变更第一图数据库及第二图数据库的标记状态,根据血缘数据查询请求从第一图数据库中获取查找到的血缘数据,当再次获取到新的实时血缘数据时,将新的实时血缘数据存储至第二图数据库中,并重新变更第一图数据库及第二图数据库的标记状态。此外,本发明还涉及区块链技术,所述实时血缘数据可以从区块链的节点中获取。本发明还提出一种血缘数据读写方法装置、电子设备以及计算机可读存储介质。本发明可以解决血缘数据读写效率较低的问题。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种血缘数据读写方法、装置、电子设备及计算机可读存储介质。
背景技术
元数据系统中存在的业务场景是展示表之间的血缘关系,通过在前端以树的组织形式展示当前表的上游或者下游,有着非常重要的应用场景。比如,通过查询血缘关系确定实际作业的实时执行信息,可以对作业做实时监控和预警;能够帮助相关人员快速定位到那些作业可能出现问题,防止业务数据出现延迟,影响到各业务方系统的使用。
现有技术中血缘关系读写是直接将表之间血缘关系的血缘表存储在关系数据库表中,其中,血缘表中的每一条记录存储了当前的库表,以及上游库表的关系。在查询一个表多级的上游关系或一个表多级的下游关系时,采用的是递归查询,查询每一个节点的上游或者下游,这样节点数比较多的时候,针对每个节点都做了查询,花费时间过长,性能低下,还需要处理成环的问题,有环会导致前端在构建树状结构的时候出现死循环,导致内存溢出,这种处理方式,最主要的缺点就是节点的上游或者下游比较多的时候,查询效率较低。
发明内容
本发明提供一种血缘数据读写方法、装置、设备及存储介质,其主要目的在于解决血缘数据查询效率较低的问题。
为实现上述目的,本发明提供的一种血缘数据读写方法,包括:
构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态;
当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,并变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态;
当接收到血缘数据查询请求时,确定所述图数据库集合中图数据库的标记状态,根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,以及当获取到新的实时血缘数据时,将所述新的实时血缘数据存储至所述标记为非活动状态的第二图数据库中,并再次变更所述第一图数据库的标记为非活动状态,及变更所述第二图数据库的标记为活动状态。
可选地,所述当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,包括:
获取预设周期内更新的包含实时血缘数据的血缘表;
判断所述图数据库集合中数据库的标记状态;
确定标记为非活动状态的所述第一图数据库为备图数据库;
清空所述备图数据库中的数据,将所述血缘表中的实时血缘数据存储至所述备图数据库中。
可选地,
所述将所述血缘表中的实时血缘数据存储至所述备图数据库中,包括:
提取所述血缘表中的表格字段及所述表格字段间的引用关系;
将所述表格字段作为节点,所述引用关系作为节点的关系边;
汇总所述节点及所述节点对应的关系边,得到血缘关系图,存储所有血缘关系图至所述备图数据库中。
可选地,所述根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,包括:
解析所述血缘数据查询请求中的查询字段,根据所述查询字段查询所述标记为活动状态的第一图数据库中的血缘关系图,计算查询到的血缘关系图中所述节点的聚集系数,并根据所述聚集系数生成所述血缘数据查询请求的查询文档;
计算所述查询文档中任意两个查询节点的平均路径长度,并通过随机增加的方式对所述查询文档进行节点补充,生成补充文档;
对所述补充文档进行节点修正,生成修正文档,解析所述修正文档得到所述血缘数据。
可选地,所述将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态,包括:
根据预设的状态字段判断所述图数据库集合中至少两个图数据库的使用状态,其中,所述使用状态包括未使用和正在使用;
确定所述状态字段为第一字段的图数据库为第一图数据库,所述第一图数据库的使用状态为未使用,并将所述第一图数据库标记为非活动状态;
确定所述状态字段为第二字段的图数据库为第二图数据库,所述第二图数据库的使用状态为正在使用,将所述第二图数据库标记为活动状态。
可选地,所述构建包含至少两个图数据库的图数据库集合,包括:
获取至少两个图数据库安装包并解压,得到至少两个图数据库解压文件;
获取图数据库的访问方式配置及切换方式配置,并基于所述访问方式配置及所述切换方式配置生成配置文件;
添加所述配置文件至所述解压文件中,并启动添加后的配置文件得到所述图数据库集合。
可选地,
所述计算查询到的血缘关系图中所述节点的聚集系数,包括:
利用下述聚集系数计算公式计算查询到的血缘关系图中所述节点的聚集系数:
其中,Ci表示节点vi的聚集系数,ki表示节点vi相邻的节点数量,ei表示相邻的节点之间实际存在的关系边数目,ki(ki-1)表示相邻的节点之间存在关系边的数目上限。
为了解决上述问题,本发明还提供一种血缘数据读写装置,所述装置包括:
图数据库集合构建模块,用于构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态;
血缘数据存储模块,用于当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,并变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态;
血缘数据查询模块,用于当接收到血缘数据查询请求时,确定所述图数据库集合中图数据库的标记状态,根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,以及当获取到新的实时血缘数据时,将所述新的实时血缘数据存储至所述标记为非活动状态的第二图数据库中,并再次变更所述第一图数据库的标记为非活动状态,及变更所述第二图数据库的标记为活动状态。
为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
存储器,存储至少一个计算机程序;及
处理器,执行所述存储器中存储的计算机程序以实现上述所述的血缘数据读写方法。
为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个计算机程序,所述至少一个计算机程序被电子设备中的处理器执行以实现上述所述的血缘数据读写方法。
本发明通过构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态,根据图数据库集合中数据库的标记状态对实时血缘数据进行存储,重新调整第一图数据库及第二图数据库的标记状态,根据调整标记状态后的图数据库进行数据查询,在每次数据存储及查询时,通过不断调整图数据库的标记状态来实现图数据库中数据存储及查询的无感知平稳切换,使得每次查询时都从活动标记的图数据库进行数据读取,而写入时都可以写入非活动标记状态的图数据库,使得数据的读取及写入不会冲突,因此可以防止业务查询中断,提高查询效率。并且,相较于使用关系数据库查询血缘数据时需要将每个节点都进行查询,再将查询结果合并,查询次数多,效率低下,采用图数据库,无需针对每个节点做一次查询,可以一次性将需要的图数据库中所有节点的节点数据都查询出来,大大提高查询效率。因此本发明提出的血缘数据读写方法、装置、电子设备及计算机可读存储介质,可以解决血缘数据查询效率较低的问题。
附图说明
图1为本发明一实施例提供的血缘数据读写方法的流程示意图;
图2为本发明一实施例提供的血缘数据读写装置的功能模块图;
图3为本发明一实施例提供的实现所述血缘数据读写方法的电子设备的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本申请实施例提供一种血缘数据读写方法。所述血缘数据读写方法的执行主体包括但不限于服务端、终端等能够被配置为执行本申请实施例提供的该方法的电子设备中的至少一种。换言之,所述血缘数据读写方法可以由安装在终端设备或服务端设备的软件或硬件来执行,所述软件可以是区块链平台。所述服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。所述服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(ContentDelivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
参照图1所示,为本发明一实施例提供的血缘数据读写方法的流程示意图。在本实施例中,所述血缘数据读写方法包括:
S1、构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态。
本发明实施例中,所述图数据库是一种非关系型数据库(NoSQL数据库),它应用图形理论存储实体之间的关系信息,相较于关系型数据库存储“关系型”数据(例如血缘数据)时,常常需要创建一个关联表来记录不同实体的多对多关系,而且这些关联表常常不用来记录信息,如果两个实体之间拥有多种关系,那么就需要在它们之间创建多个关联表,使得查询复杂、缓慢、超出预期,而图形数据库的独特设计恰恰弥补了这个缺陷。所述图数据库集合中的图数据库可以为:Neo4j图数据库、FlockDB图数据库、AllegroGrap图数据库等。
具体地,所述构建包含至少两个图数据库的图数据库集合,包括:
获取至少两个图数据库安装包并解压,得到至少两个图数据库解压文件;
获取图数据库的访问方式配置及切换方式配置,并基于所述访问方式配置及所述切换方式配置生成配置文件;
添加所述配置文件至所述解压文件中,并启动添加后的配置文件得到所述图数据库集合。
本发明实施例中,所述图数据库安装包可以为Neo4j图数据库安装包。所述配置文件中包括访问方式配置及切换方式配置,其中,访问方式配置包括:1、客户端链接访问;2、程序api接口访问;3、http方式访问;切换方式配置是指根据两个图数据库的标记状态,对两个图数据库进行优先级设置,例如,将活动标记的数据库设为主图数据库(即优先查询使用),将非活动标记的数据库设为备图数据库(即优先存储使用)。
详细地,所述将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态,包括:
根据预设的状态字段判断所述图数据库集合中至少两个图数据库的使用状态,其中,所述使用状态包括未使用和正在使用;
确定所述状态字段为第一字段的图数据库为第一图数据库,所述第一图数据库的使用状态为未使用,并将所述第一图数据库标记为非活动状态;
确定所述状态字段为第二字段的图数据库为第二图数据库,所述第二图数据库的使用状态为正在使用,将所述第二图数据库标记为活动状态。
本发明实施例中,例如,可以通过预设的状态字段state_desc字段进行使用状态判断,其中,第一字段offline代表未使用,第二字段online代表正在使用。所述非活动状态可以为标记为0,用来表示本次哪个图数据库优先进行数据存储,所述活动状态可以标记为1,用来表示本次哪个图数据库优先进行数据查询。
S2、当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,并变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态。
本发明实施例中,所述实时血缘数据是指用来表示数据在产生、融合、流转,消亡过程中形成的一种逻辑关系,例如,所述实时血缘数据包括业务系统、业务系统所使用的数据库、数据库中当前库表和上下游库表等之间的逻辑关系。
具体地,所述当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,包括:
获取预设周期内更新的包含实时血缘数据的血缘表;
判断所述图数据库集合中数据库的标记状态;
确定标记为非活动状态的所述第一图数据库为备图数据库;
清空所述备图数据库中的数据,将所述血缘表中的实时血缘数据存储至所述备图数据库中。
本发明实施例中,所述血缘表中每一条记录存储了当前的库表多级的上游关系,以及下游库表多级的下游关系。所述预设周期可以为一天。
详细地,所述将所述血缘表中的实时血缘数据存储至所述备图数据库中,包括:
提取所述血缘表中的表格字段及所述表格字段间的引用关系;
将所述表格字段作为节点,所述引用关系作为节点的关系边;
汇总所述节点及所述节点对应的关系边,得到血缘关系图,存储所有血缘关系图至所述备图数据库中。
本发明实施例中,所述图数据库以图结构进行存储,主要存储节点、关系等。其中,节点代表实体,关系边代表实体间的关系,边可以是有向的或者无向的,图的存储是经过特别优化的,节点和关系边是分开存储的,有助于提高图数据库的查询效率。
具体地,所述变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态,包括:
将所述第一图数据库的标记状态设置为活动状态,使得所述第一图数据库作为主图数据库,以及将所述第二图数据库的标记状态设置为非活动状态,使得所述第二图数据库作为备图数据库。
可选地,此时使得所述第一图数据库作为主图数据库,用于下一次的数据查询,以及使得所述第二图数据库作为备图数据库,用于下一次的数据存储。
S3、当接收到血缘数据查询请求时,确定所述图数据库集合中图数据库的标记状态,根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,以及当获取到新的实时血缘数据时,将所述新的实时血缘数据存储至所述标记为非活动状态的第二图数据库中,并再次变更所述第一图数据库的标记为非活动状态,及变更所述第二图数据库的标记为活动状态。
本发明实施例中,由于调整标记状态的第一图数据库为主图数据库,即为查询数据库,因此血缘数据查询请求优先从第一图数据库中查询数据。
具体地,所述根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,包括:
解析所述血缘数据查询请求中的查询字段,根据所述查询字段查询所述标记为活动状态的第一图数据库中的血缘关系图,计算查询到的血缘关系图中所述节点的聚集系数,并根据所述聚集系数生成所述血缘数据查询请求的查询文档;
计算所述查询文档中任意两个查询节点的平均路径长度,并通过随机增加的方式对所述查询文档进行节点补充,生成补充文档;
对所述补充文档进行节点修正,生成修正文档,解析所述修正文档得到所述血缘数据。
本发明实施例中,所述计算查询到的血缘关系图中所述节点的聚集系数,包括:
利用下述聚集系数计算公式计算查询到的血缘关系图中所述节点的聚集系数:
其中,Ci表示节点vi的聚集系数,ki表示节点vi相邻的节点数量,ei表示相邻的节点之间实际存在的关系边数目,ki(ki-1)表示相邻的节点之间存在关系边的数目上限。
当所述聚集系数Ci大于预设的第一阈值时,说明所述节点vi与相邻节点之间的紧密程度高,则保留所述节点vi作为查询节点,当所述聚集系数小于预设的第一阈值时,则说明所述节点vi与相邻节点之间的紧密程度低,则删除所述节点vi,通过删除相应的节点后,生成所述查询文档,本发明预设的第一阈值可以为0.5。
本发明一可选实施例中,所述计算所述查询文档中任意两个查询节点的平均路径长度,包括:
通过下述路径计算公式计算所述平均路径:
其中,lij表示查询文档中任意两个查询节点vi′和vj′的平均路径,N表示所述查询文档的总节点数,dij表示查询节点vi′和vj′之间的最短路径长度。
本发明通过采用随机增加的方式进行路径搜索并生成补充文档,例如,在所述查询节点vi′和vj′随机增加|(2-lij)×2|个节点,所述随机增加的方式指:在所述查询节点vi′和vj′已有的路径上增加|(2-lij)×2|个节点,或者在所述查询节点vi′和vj′之间另外增加|(2-lij)×2|个节点,与在所述查询节点vi′和vj′连接成一条新的路径,根据所述随机增加的方式得到所述查询文档的补充节点,生成所述补充文档。
进一步地,通过遍历所述补充文档中的节点数,并计算出所述补充文档中任意两个节点vi″和vj″间关于节点k的介数CB(k)。所述CB(k)的计算公式如下所示:
其中,V表示所述补充文档中所有节点的集合;δij表示所述节点vi″和vj″之间最短路径的条数;δij(k)表示所述节点vi″和vj″之间经过节点k的最短路径的条数,当所述CB(k)小于预设的第二阈值时,通过连接命令将所述节点k和节点vi″或vj″进行合并,完成所述节点k的修正操作,在对所述补充文档中所有的节点进行修正操作后,生成所述修正文档,所述预设的第二阈值可以为0.25。
本发明实施例中,相较于使用关系数据库查询血缘数据时需要将每个节点都进行查询,再将查询结果合并,查询次数多,效率低下,采用图数据库,无需针对每个节点做一次查询,可以一次性将需要的所有节点数据都查询出来,大大提高查询效率。
本发明一可选实施例中,由于生产环境中,各个系统、数据库、数据库表格间的血缘关系经常会发生变动。如果每次都将全量更新的血缘数据更新在一个图数据库中,会导致数据库查询效率的低下,且有可能会使得业务访问、数据查询的中断。在获取到下一周期的新的实时血缘数据时,将新的实时血缘数据存储在非活动标记的图数据库中,并在每次实时血缘数据存储完成后,重新调整两个图数据库的标记状态,方便之后周期的实时血缘数据的存储。同时通过使用两个图数据库不断进行主(查询)、备(存储)图数据库的切换使用,能够实现无感知的图数据库平稳切换,提高了数据查询效率,以及能够防止业务查询的访问中断。
本发明通过构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态,根据图数据库集合中数据库的标记状态对实时血缘数据进行存储,重新调整第一图数据库及第二图数据库的标记状态,根据调整标记状态后的图数据库进行数据查询,在每次数据存储及查询时,通过不断调整图数据库的标记状态来实现图数据库中数据存储及查询的无感知平稳切换,使得每次查询时都从活动标记的图数据库进行数据读取,而写入时都可以写入非活动标记状态的图数据库,使得数据的读取及写入不会冲突,因此可以防止业务查询中断,提高查询效率。并且,相较于使用关系数据库查询血缘数据时需要将每个节点都进行查询,再将查询结果合并,查询次数多,效率低下,采用图数据库,无需针对每个节点做一次查询,可以一次性将需要的图数据库中所有节点的节点数据都查询出来,大大提高查询效率。因此本发明提出的血缘数据读写方法,可以解决血缘数据查询效率较低的问题。
如图2所示,是本发明一实施例提供的血缘数据读写装置的功能模块图。
本发明所述血缘数据读写装置100可以安装于电子设备中。根据实现的功能,所述血缘数据读写装置100可以包括图数据库集合构建模块101、血缘数据存储模块102及血缘数据查询模块103。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
所述图数据库集合构建模块101,用于构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态;
所述血缘数据存储模块102,用于当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,并变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态;
所述血缘数据查询模块103,用于当接收到血缘数据查询请求时,确定所述图数据库集合中图数据库的标记状态,根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,以及当获取到新的实时血缘数据时,将所述新的实时血缘数据存储至所述标记为非活动状态的第二图数据库中,并再次变更所述第一图数据库的标记为非活动状态,及变更所述第二图数据库的标记为活动状态。
详细地,所述血缘数据读写装置100各模块的具体实施方式如下:
步骤一、构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态。
本发明实施例中,所述图数据库是一种非关系型数据库(NoSQL数据库),它应用图形理论存储实体之间的关系信息,相较于关系型数据库存储“关系型”数据(例如血缘数据)时,常常需要创建一个关联表来记录不同实体的多对多关系,而且这些关联表常常不用来记录信息,如果两个实体之间拥有多种关系,那么就需要在它们之间创建多个关联表,使得查询复杂、缓慢、超出预期,而图形数据库的独特设计恰恰弥补了这个缺陷。所述图数据库集合中的图数据库可以为:Neo4j图数据库、FlockDB图数据库、AllegroGrap图数据库等。
具体地,所述构建包含至少两个图数据库的图数据库集合,包括:
获取至少两个图数据库安装包并解压,得到至少两个图数据库解压文件;
获取图数据库的访问方式配置及切换方式配置,并基于所述访问方式配置及所述切换方式配置生成配置文件;
添加所述配置文件至所述解压文件中,并启动添加后的配置文件得到所述图数据库集合。
本发明实施例中,所述图数据库安装包可以为Neo4j图数据库安装包。所述配置文件中包括访问方式配置及切换方式配置,其中,访问方式配置包括:1、客户端链接访问;2、程序api接口访问;3、http方式访问;切换方式配置是指根据两个图数据库的标记状态,对两个图数据库进行优先级设置,例如,将活动标记的数据库设为主图数据库(即优先查询使用),将非活动标记的数据库设为备图数据库(即优先存储使用)。
详细地,所述将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态,包括:
根据预设的状态字段判断所述图数据库集合中至少两个图数据库的使用状态,其中,所述使用状态包括未使用和正在使用;
确定所述状态字段为第一字段的图数据库为第一图数据库,所述第一图数据库的使用状态为未使用,并将所述第一图数据库标记为非活动状态;
确定所述状态字段为第二字段的图数据库为第二图数据库,所述第二图数据库的使用状态为正在使用,将所述第二图数据库标记为活动状态。
本发明实施例中,例如,可以通过预设的状态字段state_desc字段进行使用状态判断,其中,第一字段offline代表未使用,第二字段online代表正在使用。所述非活动状态可以为标记为0,用来表示本次哪个图数据库优先进行数据存储,所述活动状态可以标记为1,用来表示本次哪个图数据库优先进行数据查询。
步骤二、当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,并变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态。
本发明实施例中,所述实时血缘数据是指用来表示数据在产生、融合、流转,消亡过程中形成的一种逻辑关系,例如,所述实时血缘数据包括业务系统、业务系统所使用的数据库、数据库中当前库表和上下游库表等之间的逻辑关系。
具体地,所述当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,包括:
获取预设周期内更新的包含实时血缘数据的血缘表;
判断所述图数据库集合中数据库的标记状态;
确定标记为非活动状态的所述第一图数据库为备图数据库;
清空所述备图数据库中的数据,将所述血缘表中的实时血缘数据存储至所述备图数据库中。
本发明实施例中,所述血缘表中每一条记录存储了当前的库表多级的上游关系,以及下游库表多级的下游关系。所述预设周期可以为一天。
详细地,所述将所述血缘表中的实时血缘数据存储至所述备图数据库中,包括:
提取所述血缘表中的表格字段及所述表格字段间的引用关系;
将所述表格字段作为节点,所述引用关系作为节点的关系边;
汇总所述节点及所述节点对应的关系边,得到血缘关系图,存储所有血缘关系图至所述备图数据库中。
本发明实施例中,所述图数据库以图结构进行存储,主要存储节点、关系等。其中,节点代表实体,关系边代表实体间的关系,边可以是有向的或者无向的,图的存储是经过特别优化的,节点和关系边是分开存储的,有助于提高图数据库的查询效率。
具体地,所述变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态,包括:
将所述第一图数据库的标记状态设置为活动状态,使得所述第一图数据库作为主图数据库,以及将所述第二图数据库的标记状态设置为非活动状态,使得所述第二图数据库作为备图数据库。
可选地,此时使得所述第一图数据库作为主图数据库,用于下一次的数据查询,以及使得所述第二图数据库作为备图数据库,用于下一次的数据存储。
步骤三、当接收到血缘数据查询请求时,确定所述图数据库集合中图数据库的标记状态,根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,以及当获取到新的实时血缘数据时,将所述新的实时血缘数据存储至所述标记为非活动状态的第二图数据库中,并再次变更所述第一图数据库的标记为非活动状态,及变更所述第二图数据库的标记为活动状态。
本发明实施例中,由于调整标记状态的第一图数据库为主图数据库,即为查询数据库,因此血缘数据查询请求优先从第一图数据库中查询数据。
具体地,所述根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,包括:
解析所述血缘数据查询请求中的查询字段,根据所述查询字段查询所述标记为活动状态的第一图数据库中的血缘关系图,计算查询到的血缘关系图中所述节点的聚集系数,并根据所述聚集系数生成所述血缘数据查询请求的查询文档;
计算所述查询文档中任意两个查询节点的平均路径长度,并通过随机增加的方式对所述查询文档进行节点补充,生成补充文档;
对所述补充文档进行节点修正,生成修正文档,解析所述修正文档得到所述血缘数据。
本发明实施例中,
所述计算查询到的血缘关系图中所述节点的聚集系数,包括:
利用下述聚集系数计算公式计算查询到的血缘关系图中所述节点的聚集系数:
其中,Ci表示节点vi的聚集系数,ki表示节点vi相邻的节点数量,ei表示相邻的节点之间实际存在的关系边数目,ki(ki-1)表示相邻的节点之间存在关系边的数目上限。
当所述聚集系数Ci大于预设的第一阈值时,说明所述节点vi与相邻节点之间的紧密程度高,则保留所述节点vi作为查询节点,当所述聚集系数小于预设的第一阈值时,则说明所述节点vi与相邻节点之间的紧密程度低,则删除所述节点vi,通过删除相应的节点后,生成所述查询文档,本发明预设的第一阈值可以为0.5。
本发明一可选实施例中,所述计算所述查询文档中任意两个查询节点的平均路径长度,包括:
通过下述路径计算公式计算所述平均路径:
其中,lij表示查询文档中任意两个查询节点vi′和vj′的平均路径,N表示所述查询文档的总节点数,dij表示查询节点vi′和vj′之间的最短路径长度。
本发明通过采用随机增加的方式进行路径搜索并生成补充文档,例如,在所述查询节点vi′和vj′随机增加|(2-lij)×2|个节点,所述随机增加的方式指:在所述查询节点vi′和vj′已有的路径上增加|(2-lij)×2|个节点,或者在所述查询节点vi′和vj′之间另外增加|(2-lij)×2|个节点,与在所述查询节点vi′和vj′连接成一条新的路径,根据所述随机增加的方式得到所述查询文档的补充节点,生成所述补充文档。
进一步地,通过遍历所述补充文档中的节点数,并计算出所述补充文档中任意两个节点vi″和vj″间关于节点k的介数CB(k)。所述CB(k)的计算公式如下所示:
其中,V表示所述补充文档中所有节点的集合;δij表示所述节点vi″和vj″之间最短路径的条数;δij(k)表示所述节点vi″和vj″之间经过节点k的最短路径的条数,当所述CB(k)小于预设的第二阈值时,通过连接命令将所述节点k和节点vi″或vj″进行合并,完成所述节点k的修正操作,在对所述补充文档中所有的节点进行修正操作后,生成所述修正文档,所述预设的第二阈值可以为0.25。
本发明实施例中,相较于使用关系数据库查询血缘数据时需要将每个节点都进行查询,再将查询结果合并,查询次数多,效率低下,采用图数据库,无需针对每个节点做一次查询,可以一次性将需要的所有节点数据都查询出来,大大提高查询效率。
本发明一可选实施例中,由于生产环境中,各个系统、数据库、数据库表格间的血缘关系经常会发生变动。如果每次都将全量更新的血缘数据更新在一个图数据库中,会导致数据库查询效率的低下,且有可能会使得业务访问、数据查询的中断。在获取到下一周期的新的实时血缘数据时,将新的实时血缘数据存储在非活动标记的图数据库中,并在每次实时血缘数据存储完成后,重新调整两个图数据库的标记状态,方便之后周期的实时血缘数据的存储。同时通过使用两个图数据库不断进行主(查询)、备(存储)图数据库的切换使用,能够实现无感知的图数据库平稳切换,提高了数据查询效率,以及能够防止业务查询的访问中断。
本发明通过构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态,根据图数据库集合中数据库的标记状态对实时血缘数据进行存储,重新调整第一图数据库及第二图数据库的标记状态,根据调整标记状态后的图数据库进行数据查询,在每次数据存储及查询时,通过不断调整图数据库的标记状态来实现图数据库中数据存储及查询的无感知平稳切换,使得每次查询时都从活动标记的图数据库进行数据读取,而写入时都可以写入非活动标记状态的图数据库,使得数据的读取及写入不会冲突,因此可以防止业务查询中断,提高查询效率。并且,相较于使用关系数据库查询血缘数据时需要将每个节点都进行查询,再将查询结果合并,查询次数多,效率低下,采用图数据库,无需针对每个节点做一次查询,可以一次性将需要的图数据库中所有节点的节点数据都查询出来,大大提高查询效率。因此本发明提出的血缘数据读写装置,可以解决血缘数据查询效率较低的问题。
如图3所示,是本发明一实施例提供的实现血缘数据读写方法的电子设备的结构示意图。
所述电子设备可以包括处理器10、存储器11、通信接口12和总线13,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如血缘数据读写程序。
其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备的内部存储单元,例如该电子设备的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备的外部存储设备,例如电子设备上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(SecureDigital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备的应用软件及各类数据,例如血缘数据读写程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如血缘数据读写程序等),以及调用存储在所述存储器11内的数据,以执行电子设备的各种功能和处理数据。
所述通信接口12用于上述电子设备与其他设备之间的通信,包括网络接口和用户接口。可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。所述用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。
所述总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线13可以分为地址总线、数据总线、控制总线等。所述总线13被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
图3仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图3示出的结构并不构成对所述电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述电子设备还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。
可选地,该电子设备还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备中的所述存储器11存储的血缘数据读写程序是多个指令的组合,在所述处理器10中运行时,可以实现:
构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态;
当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,并变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态;
当接收到血缘数据查询请求时,确定所述图数据库集合中图数据库的标记状态,根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,以及当获取到新的实时血缘数据时,将所述新的实时血缘数据存储至所述标记为非活动状态的第二图数据库中,并再次变更所述第一图数据库的标记为非活动状态,及变更所述第二图数据库的标记为活动状态。
具体地,所述处理器10对上述指令的具体实现方法可参考附图对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述电子设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。所述计算机可读存储介质可以是易失性的,也可以是非易失性的。例如,所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
本发明还提供一种计算机可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序在被电子设备的处理器所执行时,可以实现:
构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态;
当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,并变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态;
当接收到血缘数据查询请求时,确定所述图数据库集合中图数据库的标记状态,根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,以及当获取到新的实时血缘数据时,将所述新的实时血缘数据存储至所述标记为非活动状态的第二图数据库中,并再次变更所述第一图数据库的标记为非活动状态,及变更所述第二图数据库的标记为活动状态。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种血缘数据读写方法,其特征在于,所述方法包括:
构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态;
当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,并变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态;
当接收到血缘数据查询请求时,确定所述图数据库集合中图数据库的标记状态,根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,以及当获取到新的实时血缘数据时,将所述新的实时血缘数据存储至所述标记为非活动状态的第二图数据库中,并再次变更所述第一图数据库的标记为非活动状态,及变更所述第二图数据库的标记为活动状态。
2.如权利要求1所述的血缘数据读写方法,其特征在于,所述当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,包括:
获取预设周期内更新的包含实时血缘数据的血缘表;
判断所述图数据库集合中数据库的标记状态;
确定标记为非活动状态的所述第一图数据库为备图数据库;
清空所述备图数据库中的数据,将所述血缘表中的实时血缘数据存储至所述备图数据库中。
3.如权利要求2所述的血缘数据读写方法,其特征在于,所述将所述血缘表中的实时血缘数据存储至所述备图数据库中,包括:
提取所述血缘表中的表格字段及所述表格字段间的引用关系;
将所述表格字段作为节点,所述引用关系作为节点的关系边;
汇总所述节点及所述节点对应的关系边,得到血缘关系图,存储所有血缘关系图至所述备图数据库中。
4.如权利要求3所述的血缘数据读写方法,其特征在于,所述根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,包括:
解析所述血缘数据查询请求中的查询字段,根据所述查询字段查询所述标记为活动状态的第一图数据库中的血缘关系图,计算查询到的血缘关系图中所述节点的聚集系数,并根据所述聚集系数生成所述血缘数据查询请求的查询文档;
计算所述查询文档中任意两个查询节点的平均路径长度,并通过随机增加的方式对所述查询文档进行节点补充,生成补充文档;
对所述补充文档进行节点修正,生成修正文档,解析所述修正文档得到所述血缘数据。
5.如权利要求1中所述的血缘数据读写方法,其特征在于,所述将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态,包括:
根据预设的状态字段判断所述图数据库集合中至少两个图数据库的使用状态,其中,所述使用状态包括未使用和正在使用;
确定所述状态字段为第一字段的图数据库为第一图数据库,所述第一图数据库的使用状态为未使用,并将所述第一图数据库标记为非活动状态;
确定所述状态字段为第二字段的图数据库为第二图数据库,所述第二图数据库的使用状态为正在使用,将所述第二图数据库标记为活动状态。
6.如权利要求1至5中任一项所述的血缘数据读写方法,其特征在于,所述构建包含至少两个图数据库的图数据库集合,包括:
获取至少两个图数据库安装包并解压,得到至少两个图数据库解压文件;
获取图数据库的访问方式配置及切换方式配置,并基于所述访问方式配置及所述切换方式配置生成配置文件;
添加所述配置文件至所述解压文件中,并启动添加后的配置文件得到所述图数据库集合。
8.一种血缘数据读写装置,其特征在于,所述装置包括:
图数据库集合构建模块,用于构建包含至少两个图数据库的图数据库集合,将所述图数据库集合中的第一图数据库标记为非活动状态,以及将所述图数据库集合中的第二图数据库标记为活动状态;
血缘数据存储模块,用于当获取到实时血缘数据时,将所述实时血缘数据存储至所述第一图数据库中,并变更所述第一图数据库的标记为活动状态,以及变更所述第二图数据库的标记为非活动状态;
血缘数据查询模块,用于当接收到血缘数据查询请求时,确定所述图数据库集合中图数据库的标记状态,根据所述血缘数据查询请求从所述标记为活动状态的第一图数据库中获取查找到的血缘数据,以及当获取到新的实时血缘数据时,将所述新的实时血缘数据存储至所述标记为非活动状态的第二图数据库中,并再次变更所述第一图数据库的标记为非活动状态,及变更所述第二图数据库的标记为活动状态。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任意一项所述的血缘数据读写方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任意一项所述的血缘数据读写方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111272401.9A CN113918571A (zh) | 2021-10-29 | 2021-10-29 | 血缘数据读写方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111272401.9A CN113918571A (zh) | 2021-10-29 | 2021-10-29 | 血缘数据读写方法、装置、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113918571A true CN113918571A (zh) | 2022-01-11 |
Family
ID=79243672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111272401.9A Pending CN113918571A (zh) | 2021-10-29 | 2021-10-29 | 血缘数据读写方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113918571A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170364582A1 (en) * | 2016-06-17 | 2017-12-21 | Alibaba Group Holding Limited | Method, apparatus, and system for identifying data tables |
US10025878B1 (en) * | 2014-11-11 | 2018-07-17 | Google Llc | Data lineage analysis |
CN109446279A (zh) * | 2018-10-15 | 2019-03-08 | 顺丰科技有限公司 | 基于neo4j大数据血缘关系管理方法、系统、设备及存储介质 |
CN109582660A (zh) * | 2018-12-06 | 2019-04-05 | 深圳前海微众银行股份有限公司 | 数据血缘分析方法、装置、设备、系统及可读存储介质 |
US20200226156A1 (en) * | 2019-01-14 | 2020-07-16 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for executing a graph query against a graph representing a plurality of data stores |
CN111694858A (zh) * | 2020-04-28 | 2020-09-22 | 平安科技(深圳)有限公司 | 数据血缘分析方法、装置、设备及计算机可读存储介质 |
CN112559493A (zh) * | 2020-12-23 | 2021-03-26 | 北京北明数科信息技术有限公司 | 数据血缘关系解析方法、计算机装置和存储介质 |
CN113486008A (zh) * | 2021-06-30 | 2021-10-08 | 平安信托有限责任公司 | 数据血缘分析方法、装置、设备及存储介质 |
-
2021
- 2021-10-29 CN CN202111272401.9A patent/CN113918571A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10025878B1 (en) * | 2014-11-11 | 2018-07-17 | Google Llc | Data lineage analysis |
US20170364582A1 (en) * | 2016-06-17 | 2017-12-21 | Alibaba Group Holding Limited | Method, apparatus, and system for identifying data tables |
CN109446279A (zh) * | 2018-10-15 | 2019-03-08 | 顺丰科技有限公司 | 基于neo4j大数据血缘关系管理方法、系统、设备及存储介质 |
CN109582660A (zh) * | 2018-12-06 | 2019-04-05 | 深圳前海微众银行股份有限公司 | 数据血缘分析方法、装置、设备、系统及可读存储介质 |
US20200226156A1 (en) * | 2019-01-14 | 2020-07-16 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for executing a graph query against a graph representing a plurality of data stores |
CN111694858A (zh) * | 2020-04-28 | 2020-09-22 | 平安科技(深圳)有限公司 | 数据血缘分析方法、装置、设备及计算机可读存储介质 |
CN112559493A (zh) * | 2020-12-23 | 2021-03-26 | 北京北明数科信息技术有限公司 | 数据血缘关系解析方法、计算机装置和存储介质 |
CN113486008A (zh) * | 2021-06-30 | 2021-10-08 | 平安信托有限责任公司 | 数据血缘分析方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112052242A (zh) | 数据查询方法、装置、电子设备及存储介质 | |
CN111767268B (zh) | 数据库表分区方法、装置、电子设备及存储介质 | |
CN113961584A (zh) | 字段血缘分析方法、装置、电子设备及存储介质 | |
CN111651453A (zh) | 用户历史行为查询方法、装置、电子设备及存储介质 | |
CN112699142A (zh) | 冷热数据处理方法、装置、电子设备及存储介质 | |
CN115408399A (zh) | 基于sql脚本的血缘关系分析方法、装置、设备及存储介质 | |
WO2022048362A1 (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN114185895A (zh) | 数据导入导出方法、装置、电子设备及存储介质 | |
CN112949278A (zh) | 数据核对方法、装置、电子设备及可读存储介质 | |
CN114979120A (zh) | 数据上传方法、装置、设备及存储介质 | |
CN112506486A (zh) | 搜索系统建立方法、装置、电子设备及可读存储介质 | |
CN114386509A (zh) | 数据融合方法、装置、电子设备及存储介质 | |
CN115543198A (zh) | 非结构化数据入湖方法、装置、电子设备及存储介质 | |
CN111352955A (zh) | 指标数据查询方法、装置、电子设备及存储介质 | |
CN108108392B (zh) | 商品数据管理方法、装置、计算机设备及存储介质 | |
CN113434542A (zh) | 数据关系识别方法、装置、电子设备及存储介质 | |
CN114398346A (zh) | 数据迁移方法、装置、设备及存储介质 | |
CN112948380A (zh) | 基于大数据的数据存储方法、装置、电子设备及存储介质 | |
CN114756564B (zh) | 用于流式计算的数据处理方法、装置、设备及介质 | |
CN113918571A (zh) | 血缘数据读写方法、装置、电子设备及可读存储介质 | |
CN115114297A (zh) | 数据轻量存储及查找方法、装置、电子设备及存储介质 | |
CN114840388A (zh) | 数据监控方法、装置、电子设备及存储介质 | |
CN112925753A (zh) | 文件追加写入方法、装置、电子设备及存储介质 | |
CN113419718A (zh) | 数据报送方法、装置、设备及介质 | |
CN113076069A (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 |