CN111881223B - 数据管理方法、设备、系统及存储介质 - Google Patents
数据管理方法、设备、系统及存储介质 Download PDFInfo
- Publication number
- CN111881223B CN111881223B CN202010783570.8A CN202010783570A CN111881223B CN 111881223 B CN111881223 B CN 111881223B CN 202010783570 A CN202010783570 A CN 202010783570A CN 111881223 B CN111881223 B CN 111881223B
- Authority
- CN
- China
- Prior art keywords
- data
- functional module
- management
- layer
- relationship
- 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
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/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
- G06F16/284—Relational databases
-
- 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/2228—Indexing structures
-
- 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/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据管理方法、设备、系统及存储介质,该方案应用在数据地图中,该数据管理系统包括数据存储层,内核处理层,功能模块层,数据访问驱动层,提供一种高效的数据模型和存储结构设计,实现数据元信息以及数据拓扑结构的联合存储和接入,能够提供完整的数据地图拓扑结构查询,并且还能够提供异构数据源的数据使用,变更修改以及查询接口。该数据管理系统不仅能够满足异构数据源的数据元信息,数据关系的管理,还能够满足任一种类型的数据源的接入。
Description
技术领域
本申请涉及数据地图领域,尤其涉及一种数据管理方法、设备、系统及存储介质。
背景技术
近年来,随着大数据的普及、流计算的兴起和数据中台概念的产生,业务发展而产生的数据链路呈现出深层网络状结构发展,数据处理关系变得错中复杂,数据的消费和生成层级越来越深,这导致数据的正确性和有效性难以保证、难以监控,数据问题的定位和溯源难度极高。
数据地图是一种用于描述完整业务链路中数据间依赖关系的概念,用来表现数据从产生、消费、组合到交付给用户使用的完整的元数据信息和数据处理链路拓扑结构。在当前业界,数据地图是新兴概念,处于起步发展阶段,开源方案中以wherehows最广为所知和应用最多,是一种用于大数据发现和管理的工具,集成了所有主要的数据处理系统,可以对单一数据源的数据进行分类收集和元数据操作。
然而,随着流计算、非结构化存储的发展,各类数据存储、处理中间件的兴起,目前还没有一种能够满足任意数据源的接入,混合数据源之间的关联关系的管理的方案。
发明内容
本申请提供一种数据管理方法、设备、系统及存储介质,提供一种能够满足任意数据源的接入,混合数据源之间的关联关系的管理的方案。
本申请第一方面提供一种数据管理系统,包括:
数据存储层,内核处理层,功能模块层,数据访问驱动层;
所述数据存储层包括用于存储关系结构数据的关系结构数据库以及用于存储拓扑结构数据的图数据库;
所述功能模块层包括:第一功能模块,第二功能模块,第三功能模块,第四功能模块,第五功能模块;其中,所述第一功能模块用于定义并处理不同属性的链路拓扑结构查询,所述第二功能模块用于定义并处理数据关系的操作,所述第三功能模块用于定义并封装不同属性的数据的元信息操作,所述第四功能模块用于提供可扩展的不同属性的数据作业发现功能,所述第五功能模块用于提供可扩展的不同属性的数据的访问功能;
所述内核处理层设置在所述数据存储层和所述功能模块层之间,所述内核处理层包括:强一致性操作模型和不同属性的数据的描述模型,所述强一致性模型用于在所述功能模块层对数据进行更新后,维护所述关系结构数据库和所述图数据库中数据的一致性;所述描述模型用于将不同属性的数据使用统一的元信息进行描述;
所述数据访问驱动层用于定义数据操作协议和驱动描述对象协议,并提供不同属性的数据源的使用和接入接口。
在一种具体实现方式中,所述系统还包括:接口层,用于对外提供服务接口;
所述接口层包括:与所述第一功能模块对应的链路拓扑查询API;与所述第二功能模块对应的数据关系管理API;与所述第三功能模块对应的数据源管理API;与所述第四功能模块对应的数据作业管理API;与所述第五功能模块对应的数据集管理API。
在一种具体实现方式中,所述不同属性的数据包括支持异构的数据源,数据集和数据作业。
在一种具体实现方式中,所述图数据库中存储的拓扑结构数据由关系实体,每个实体的所属边,处理边以及处理完成边组成,所述关系结构数据库中存储的数据关系由上游数据集ID,下游数据集ID和数据处理作业ID组成。
在一种具体实现方式中,所述系统还包括:服务对象,所述服务对象通过所述数据访问驱动层进行数据交互;所述服务对象包括数据源和数据作业。
本申请第二方面提供一种数据管理方法,应用于第一方面任一实施方式提供的数据管理系统,所述方法包括:
通过链路拓扑查询API接收链路拓扑结构查询请求,所述链路拓扑结构查询请求中包括待查询的属性字段,所述属性字段包括URI,名字和类型中的至少一个字段;
根据所述待查询的属性字段,从所述图数据库中获取完整的链路拓扑结构图;
将所述链路拓扑结构图通过所述链路拓扑查询接口返回。
在一种具体实现方式中,所述方法还包括:
通过数据关系管理API接收数据关系更新操作,所述数据关系更新操作包括关系绑定,绑定解除,关系修改和关系查询中的任一种;
根据所述数据关系更新操作对所述关系结构数据库中的数据关系进行更新。
在一种具体实现方式中,所述方法还包括:
通过内核处理层中的强一致性操作模型,对所述关系结构数据库和所述图数据库中的数据进行一致性操作。
在一种具体实现方式中,所述方法还包括:
通过数据作业管理API接收数据作业管理操作并执行对应的操作,所述数据作业管理操作用于对指定数据进行增加,删减,修改和查询中的任一种操作。
在一种具体实现方式中,所述方法还包括:
通过数据源管理API接收数据源管理操作,并执行对应的操作,所述数据源管理操作包括以下任一种操作:在所述数据管理系统中增加新的数据源,删除所述数据管理系统中的指定数据源,对所述数据管理系统中的指定数据源进行修改,查询所述数据管理系统中的数据源,获取新的数据集。
在一种具体实现方式中,所述方法还包括:
通过数据集管理API接收访问请求,所述访问请求用户访问数据源或者数据集;
根据所述访问请求对所述关系结构数据库和/或所述图数据库中存储的数据进行访问。
本申请第三方面提供一种数据管理装置,包括:
接收模块,用于通过链路拓扑查询API接收链路拓扑结构查询请求,所述链路拓扑结构查询请求中包括待查询的属性字段,所述属性字段包括URI,名字和类型中的至少一个字段;
处理模块,用于根据所述待查询的属性字段,从所述图数据库中获取完整的链路拓扑结构图;
发送模块,用于将所述链路拓扑结构图通过所述链路拓扑查询接口返回。
本申请第四方面提供一种电子设备,包括:
存储器,处理器,与至少一个与其他设备进行交互的接口;
所述存储器用于存储数据和计算机程序;
所述处理器执行所述计算机程序,使得所述电子设备执行第二方面任一实施方式提供的数据管理方法。
本申请第五方面提供一种存储介质,所述存储介质中存储了计算机程序,所述计算机程序被处理器执行时实现第二方面任一实施方式提供的数据管理方法。
本申请实施例提供的数据管理方法、设备、系统及存储介质,该方案应用在数据地图中,该数据管理系统包括数据存储层,内核处理层,功能模块层,数据访问驱动层,数据存储层通过关系结构数据库和图数据库分别存储关系结构数据以及拓扑结构数据,功能模块层用来定义并处理不同属性的数据的拓扑结构查询,并实现数据关系的操作,还可以提供可扩展数据作业以及不同属性的数据的访问,该数据管理系统整体上提供一种高效的数据模型和存储结构设计,实现数据元信息以及拓扑结构数据的联合存储和接入,能够提供完整的数据地图中的链路拓扑结构查询,并且还能够提供异构数据源的数据使用,变更修改以及查询接口。该数据管理系统不仅能够满足异构数据源的数据元信息,数据关系的管理,还能够满足任一种类型的数据源的接入。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种数据管理系统的结构示意图;
图2为本申请实施例提供的一种数据管理系统的结构示意图;
图3为本申请实施例提供的数据集合-作业链路关系的示意图;
图4为本申请实施例提供的一种数据管理装置的结构示意图;
图5为本申请实施例提供的一种电子设备的硬件结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例提供的数据管理系统是基于数据地图构建的数据管理系统。首先,对数据地图的基本功能和存储架构进行简要介绍。
(1)数据地图的基本功能概述
异构数据源的元信息管理:数据是数据地图(DataMap)的核心服务对象,数据地图要解决的一个关键问题是业务数据以怎样的组织方式存放在哪里,而由于业务数据流的复杂性和不确定性,数据的组织方式将多种多样。数据地图中的数据源包括文件系统、关系型数据库、非结构化数据、流形式队列等。因此数据地图需要提供统一的数据源管理功能,包括数据源的上下线与更新操作,数据源上数据集合的变更发现等。
业务链路中的数据集、数据作业管理:数据集和数据作业是数据业务链路拓扑中核心的节点,一条完整的数据链路表示了数据从哪里来,经过什么方式的处理,最终放在什么地方,因此每条链路必须满足以下的定义:从一个数据集为源头,经过一个数据作业处理,汇入到下一个数据集中,通过多条联通的链路,组织成一张完整的数据业务链路拓扑图。因此,数据地图需要分别对数据集和数据作业实现统一的管理功能,包括数据作业的上下线与更新操作,数据集的发现、注册、解注册等。
业务链路中的数据集数据查询:业务使用数据、上线数据作业或是定位问题的时候,都需要首先查看数据集中有什么数据,数据的格式是怎样的,因此,数据地图的实现方案需要对于管理的异构数据源提供统一的数据集数据查询功能,从而满足上述的使用场景。
业务链路的关系网络维护和查询:数据集和数据作业是数据业务链路拓扑中核心的节点,而节点之间的链路关系则是这个拓扑中的骨架,将不同的节点连接起来,形成关系网络,最终组织成一张完整的数据业务链路拓扑图。因此,数据地图的实现方案需要一种高效的关系网络管理功能,包括节点之间的关联、解关联操作和从任意节点发起的完整拓扑关系的查询等。
(2)数据地图的数据存储架构的特点
支持高效拓扑结构关系存储、修改和检索:在上述的基本功能概述中,数据地图需要保存维护拓扑结构数据,传统关系数据库对拓扑结构的存储和查询支持不足,因此需要借助专门维护拓扑结构关系的图数据库满足高效的存储和检索需求。
支持关系数据、拓扑结构混合存储:在上述的基本功能概述中,数据地图既需要提供传统的关系数据维护功能(元信息管理),也需要提供拓扑数据维护功能(业务链路的关系网络管理),因此是一种特有的混合结构数据存储架构,需要一种统一的存储对象描述结构和操作接口满足两种不同存储需求。
支持异构存储架构间的事务原子更新:基于上述的功能设计,数据地图的数据信息会分别保存于不同的存储架构,为了提供一份强一致的数据视图,需要根据不同存储架构的特点,设计原子更新行为模型,保证在所有的情况下,数据在不同的存储架构中都满足逻辑一致的要求。
综合以上对于数据地图的基本功能和存储架构特点的分析,本申请实施例所提供的数据管理系统至少具备数据地图的以下基本要求:
1)支持异构的数据源、数据集、数据作业的元信息管理;
2)支持网络状拓扑结构关系信息管理;
3)支持交互级的数据关系拓扑图查询;
4)支持异构数据源的数据查询。
在当前业界,针对数据地图的实现方案处于研究发展阶段,开源方案中以wherehows最广为所知,且应用最多。然而,随着业务的发展、技术的变迁,wherehows的应用场景逐渐不适用于当前的新型业务架构,主要体现在:
1)无法满足混合数据源之间的多层关联关系的建立和更改;
2)缺少完整的业务拓扑关系链路查询支持;
3)不支持对数据源、数据集发起直接查询;
4)不支持数据源、数据集的变更修改等。
目前的数据管理平台面临着异构的数据模型场景,除了需要满足上面提到的异构数据源的元数据信息、上下游关系信息的管理要求以外,基于数据地图的实现,满足任意数据模型的接入,提供包括拓扑分析、数据查询、数据校验、智能告警等上层功能成为数据管理平台的大难题。基于此,本申请实施例设计了一种基于数据地图的数据管理系统,用于满足上述的应用需求。
本申请实施例提供一种数据管理系统,提供一个灵活的数据模型设计,满足至少关系数据(MySQL、TIDB)、日志数据(文本文件、Elasticsearch)、数据队列(Kafka)数据源以及数据源上数据集元信息的接入;提供一个高效的数据模型与存储架构设计,满足数据元信息和数据链路拓扑关系的联合存储和接入;提供完整的链路拓扑结构查询、达到低查询延时,满足业务系统的查询要求;提供异构数据源的数据使用接口,满足业务系统的数据集发现、查看要求。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图1为本申请实施例提供的一种数据管理系统的结构示意图,如图1所示,本实施例提供的数据管理系统包括:
数据存储层,内核处理层,功能模块层,数据访问驱动层。
数据存储层包括用于存储关系结构数据的关系结构数据库以及用于存储拓扑结构数据的图数据库。
功能模块层包括:第一功能模块,第二功能模块,第三功能模块,第四功能模块,第五功能模块。其中,第一功能模块用于定义并处理不同属性的链路拓扑结构查询,第二功能模块用于定义并处理数据关系的操作,第三功能模块用于定义并封装不同属性的数据的元信息操作,第四功能模块用于提供可扩展的不同属性的数据作业发现功能,第五功能模块用于提供可扩展的不同属性的数据的访问功能。
内核处理层设置在数据存储层和功能模块层之间,内核处理层包括:强一致性操作模型和不同属性的数据的描述模型,强一致性模型用于在功能模块层对数据进行更新后,维护关系结构数据库和图数据库中数据的一致性;描述模型用于将不同属性的数据使用统一的元信息进行描述。
数据访问驱动层用于定义数据操作协议和驱动描述对象协议,并提供不同属性的数据源的使用和接入接口。
本实施例中,不用属性的数据包括支持异构的数据源(DataSource),数据集(DataSet)和数据作业(DataJob)。
本实施例的数据管理系统通过引入通用的数据元信息描述对象,实现异构数据源、数据集和数据作业的统一管理。
其中,数据源:数据管理系统提供一种抽象且可扩展的数据源元信息描述结构实现统一的管理功能,主要包括了数据源类型、全局资源唯一表示标志URI、数据源绝对访问入口、数据源配置信息等,满足包括MySQL、TIDB、FileSystem、Elasticsearch、Kafka等常用数据源的表示和使用需求。
其中,数据集:对于各种异构数据源上的数据,数据管理系统定义了数据集这一抽象的数据信息描述结构来实现统一的管理功能,主要包括了数据集存储类型storage_type、数据集访问类型visit_type、数据源关系、局部资源唯一表示标志URI、数据集相对访问入口、数据集配置信息等,满足包括关系数据库的table、文件系统的file、日志系统的index、数据队列的topic以及基于上述基础数据集访问方式不同而衍生的view、link、alias等常用的数据集的表示和使用需求。
其中,数据作业:为满足将静态的存储层上下游关系连接成数据业务链路拓扑,数据管理系统将关联不同数据集、处理、转移数据集上数据的行为抽象成作业信息描述结构来实现统一的管理功能,主要包括了作业类型type、运行周期、作业全局表示标志URI、作业运行入口startup_entry、作业存储入口storage_entry、作业运行入口visit_entry、数据作业配置信息等,满足包括Flink、Logstash、Filebeat、Spark等常用数据处理作业的表示和使用需求。
本实施例中,数据存储层(DBs)出于不同使用需求的考虑,根据数据存储和使用特点选择结合传统关系结构数据库和图数据库的混合存储方式保存数据。
其中,关系结构数据库(RelationDB)用于存储传统的关系结构数据,出于高可用和横向扩展的需要,在一些实施例中,可选择MySQL数据库,提供元信息的存储和查询服务,还可选择兼容MySQL协议的分布式事务数据库TIDB提供关系结构数据的存储服务。
其中,图数据库(GraphDB)用于存储拓扑结构数据,出于对查询性能的需要,在一些实施例中,可选择图数据库Neo4j提供拓扑结构数据的存储服务和关系查询服务。灾难恢复方案通常基于关系结构数据库的数据,若出现数据丢失,则全量从关系结构数据库中恢复拓扑结构。
本实施例中,功能模块层(Funcs)提供针对多种上层业务的处理功能模块,可通过调用功能模块对应的应用程序接口API实现不同业务的处理操作。
其中,第一功能模块为数据地图查询功能模块(DataMap Searcher),定义并封装了从数据源、数据集、数据作业不同属性为入口的链路拓扑结构查询功能。
其中,第二功能模块为数据关系注册/查询功能模块(Relation(de)Register),定义并封装了强一致的数据关系操作。
其中,第三功能模块为数据源/数据集/数据作业的注册/查询功能模块(DataSource/Set/Job(de)Register),定义并封装了强一致的不同属性的数据的元信息操作。
其中,第四功能模块为数据作业发现功能模块(DataSet Discover),向上屏蔽数据源的异构性,定义并封装了统一的接口,提供可扩展的数据源数据集发现功能。
其中,第五功能模块为数据集数据访问功能模块(DataSet Reader),向上屏蔽数据源的异构性,定义并封装了统一的接口,提供可扩展的数据源数据集数据访问功能。
本实施例中,内核处理层(Core)为功能模块层的各个功能模块提供功能保障,组装并完成不同业务的功能模块。
内核处理层中的强一致性操作模型(Strict Consistency Operation Model)解决数据在关系结构数据库和图数据库实例间的一致性问题,保证数据更新不会因为服务不可用、网络抖动或业务层的逻辑问题导致数据不一致。
在实际应用过程中,可通过内核处理层中的强一致性操作模型,对关系结构数据库和图数据库中的数据进行一致性操作。
强一致性操作模型保证了在任何情况下,图数据库和关系结构数据库的数据总是在逻辑上一致。强一致性操作模型在对数据集合-作业链路关系中相关对象的变更流程包括如下步骤:
步骤1、开启关系结构数据库的悲观事务。
步骤2、获取待更新对象(若存在则加锁):old1。
步骤3、生成更新对象内容:new1。
步骤4、修改关系结构数据库内容(若失败马上回滚)。
步骤5、获取修改成功后的关系结构数据库内容:new2。
步骤6、使用new2修改图数据库(若失败马上回滚)。
步骤7、提交事务关系结构数据库事务。
若步骤7成功,使用new2同步图数据库,否则使用old1同步图数据库,通过上述流程,保证了跨数据库系统的数据一致性。
内核处理层中的不同属性的数据的描述模型包括数据源、数据集、数据作业的描述模型(DataSource/Set/Job Description Model),异构的数据源在数据地图中使用统一的元信息描述对象表现不同的数据源、数据集和数据作业等。
本实施例中,数据访问驱动层(Driver)定义了统一的数据操作协议和驱动描述对象协议,规范并统一不同属性的数据源的使用和接入。如图1所示,数据访问驱动层包括Kafka数据源驱动,Elasticsearch数据源驱动等。
本申请实施例提供的数据管理系统,包括数据存储层,内核处理层、功能模块层以及数据访问驱动层,其中,内核处理层设置在数据存储层和功能模块层之间,通过调用功能模块层中任意功能模块对应的API,可实现对异构数据源、数据集、数据作业的元信息管理,网络拓扑结构关系信息管理,异构数据源的数据查询以及数据关系拓扑图的查询。
图2为本申请实施例提供的一种数据管理系统的结构示意图,在图1所示实施例的基础上,如图2所示,本实施例的数据管理系统还包括:接口层,用于对外提供服务接口;
接口层包括:
与第一功能模块(即数据地图查询功能模块)对应的链路拓扑查询API(SearchAPI),提供数据拓扑关系查询服务。
在实际应用过程中,可通过如下数据管理方法实现数据拓扑关系查询:通过链路拓扑查询API接收链路拓扑结构查询请求,其中,链路拓扑结构查询请求中包括待查询的属性字段,属性字段包括统一资源标识符(Uniform Resource Identifier,URI),名字和类型中的至少一个字段;根据待查询的属性字段,从图数据库中获取完整的链路拓扑结构图;将链路拓扑结构图通过链路拓扑查询接口返回。
上述链路拓扑结构查询可基于图形查询语言(Graph Query Language,GQL)实现,提供从任意数据集、数据作业的任何属性字段(URI、名字、类型等)进行查询,获取命中节点所在的完整链路拓扑图。
本实施例的数据管理系统引入作业实体链路关系的概念,并通过独有的关系结构数据库和图数据库的强一致性操作模型维护拓扑关系数据,实现元数据信息和链路拓扑关系的统一管理。
数据集合-作业链路关系(DataSet-Job Relation)代表两个数据实体之间通过数据作业关联的一种关系对象。一个完整的数据集合-作业链路关系由图数据库和关系结构数据库组成。其中,图数据库中存储的拓扑结构数据由关系实体,每个实体的所属边,处理边以及处理完成边组成,关系结构数据库中存储的数据关系由上游数据集ID,下游数据集ID和数据处理作业ID组成。
示例性的,图3为本申请实施例提供的数据集合-作业链路关系的示意图,如图3所示,数据集合-作业链路关系由图数据库和关系结构数据库组成,在图数据库中由关系实体(图3中的B1-B4),每个关系实体的所属边(BELONGS_TO边)、处理边(PROCESSING边)以及处理完成边(PROCESSED边)组成,同时关系结构数据库中由上游数据集ID(A1、A2)、中游数据集ID(D1、D2)、下游数据集ID(E1、E2)、数据处理作业ID(C1、C2)组成,从而连接各个数据集与数据处理作业。
示例性的,以日志分析业务为例,通过图3所示的结构可以完整表述以下关系:某台机器文件系统(fs类型数据源)的一类日志文件(file类型数据集,例如图3中的A1)通过日志采集程序(filebeat类型数据作业,例如图3中的C1)持续采集并上传到某数据队列集群(Kafka类型数据源)的某个数据队列(Topic类型数据集,例如图3中的D1),数据队列下游分别通过日志消费程序(flink或logstash类型数据作业,例如图3中的C2)处理,最终推送到数据库(elasticsearch类型数据源)的表(index类型数据集,例如图3中的E1)中持久化存储,形成一条完整的日志业务数据链路拓扑图。
与第二功能模块(即数据关系注册/查询功能模块)对应的数据关系管理API(Relation API),提供数据关系的绑定、解除绑定、修改或查询等管理服务。
在实际应用过程中,可通过数据关系管理API接收数据关系更新操作,数据关系更新操作包括关系绑定,绑定解除,关系修改和关系查询中的任一种;根据数据关系更新操作对关系结构数据库中的数据关系进行更新。
与第三功能模块(即数据源/数据集/数据作业的注册/查询功能模块)对应的数据源管理API(DataSource API),提供数据源的增加、删除、修改、查询等管理服务以及数据集的发现服务。
在实际应用过程中,可通过数据源管理API接收数据源管理操作,并执行对应的操作,数据源管理操作包括以下任一种操作:在数据管理系统中增加新的数据源,删除数据管理系统中的指定数据源,对数据管理系统中的指定数据源进行修改,查询数据管理系统中的数据源,获取新的数据集。
与第四功能模块(即数据作业发现功能模块)对应的数据作业管理API(DataJobAPI),提供数据作业的增加、删除、修改、查询等管理服务。
在实际应用过程中,可通过数据作业管理API接收数据作业管理操作并执行对应的操作,数据作业管理操作用于对指定数据进行增加,删减,修改和查询中的任一种操作。
与第五功能模块(即数据集数据访问功能模块)对应的数据集管理API(DataSetAPI),提供数据集的增加、删除、修改、查询等管理服务以及数据集的数据查询服务。
在实际应用过程中,可通过数据集管理API接收访问请求,访问请求用户访问数据源或者数据集;根据访问请求对关系结构数据库和/或图数据库中存储的数据进行访问。
在上述各实施例基础上,可选的,如图2所示,数据管理系统还包括:
服务对象,服务对象通过数据访问驱动层进行数据交互(read/discover)。服务对象包括系统支持的数据源(DataMap Supported DataSource)和数据作业(DataMapSupported DataJob)。
本实施例的数据管理系统通过引入通用的数据源访问驱动描述对象,实现了异构数据源、数据集的数据访问、数据发现接口驱动式开发和更新,提供了统一的数据集发现和查看接口功能。数据访问驱动描述对象(Data Driver Descr):为满足接入异构数据源的数据地图的功能要求。同时,数据管理系统设计并定义了数据访问驱动描述对象满足异构数据源的统一的查询和数据集发现功能,例如数据源发现API、数据集更新API、数据集查询API等,满足了包括MySQL、TIDB、Kafka等常用数据源中数据集变更和使用的需求。
示例性的,在日志数据业务中,服务对象中的数据源包括三种数据源和数据集:分布在不同机器节点上的日志文件,采集以后缓存在不同Kafka集群中的Topic,从Kafka中消费处理后,持久化在不同的Elasticsearch集群中的Index。
示例性的,在日志数据业务中,系统支持的数据作业包括三种主要的数据作业:分布在不同机器节点上的日志采集程序filebeat,分布在不同的Kubernetes节点上的日志消费程序logstash,分布在yarn集群上的日志消费程序flink。
本申请实施例提供的数据管理系统,融合了元数据信息管理和传统的数据血缘关系管理两大数据链路管理模块,并增加拓扑结构的存储和查询以弥补传统关系型数据库在拓扑数据的存储和分析上的不足和缺陷。具体有以下优势:
1、通过引入通用的数据元信息描述对象,满足了混合多源数据链路中的数据源、数据集、数据作业的统一管理需求。支持任意种类的数据源、数据集和数据作业接入。通过定义统一的元信息模型、关系表示模型等,统一了异构数据源数据集的接入和使用,统一了数据关系的接入和查询,满足多种数据业务的使用,如ELK日志处理、监控告警反查等。
2、通过引入数据访问驱动层,满足了对任意数据源中数据集的访问和扩展需求。支持数据访问驱动层的二次开发和引入,支持任意种类数据源上对数据集的发现、更新处理和查询。定义了统一的数据源驱动协议,可以通过实现异构数据源的数据访问协议,以插件的方式扩展数据驱动,实现不同数据源的接入。
3、通过引入图数据库、数据集合-作业链路模型,并通过实现跨数据库的强一致性操作模型来满足数据链路拓扑结构的存储和查询需求。
1)支持任意类型数据集合之间的链路关系建立和维护。数据管理系统利用图数据库、GQL维护了链路关系,为拓扑结构的高效存储和查询提供了支持,支持以任意节点为起点、基于节点的任意属性纬度发起查询,得到完整的数据链路拓扑结构。
2)支持数据链路拓扑结构与关系数据库元数据信息之间的强一致性更新和灾难恢复。数据管理系统利用强一致性操作模型实现了图数据库和关系结构数据库中的数据一致性,保证了任何情况下数据的正确可用,同时为满足图数据库中数据容灾要求,实现了数据恢复和校验功能,可方便实现图数据库的迁移和恢复,保证服务高可用。
图4为本申请实施例提供的一种数据管理装置的结构示意图。如图4所示,本申请实施例的数据管理装置100,包括:
接收模块101,用于通过链路拓扑查询API接收链路拓扑结构查询请求,所述链路拓扑结构查询请求中包括待查询的属性字段,所述属性字段包括URI,名字和类型中的至少一个字段;
处理模块102,用于根据所述待查询的属性字段,从所述图数据库中获取完整的链路拓扑结构图;
发送模块103,用于将所述链路拓扑结构图通过所述链路拓扑查询接口返回。
在一种具体实现方式中,接收模块101,用于通过数据关系管理API接收数据关系更新操作,所述数据关系更新操作包括关系绑定,绑定解除,关系修改和关系查询中的任一种;
处理模块102,用于根据所述数据关系更新操作对所述关系结构数据库中的数据关系进行更新。
在一种具体实现方式中,处理模块102,还用于:
通过内核处理层中的强一致性操作模型,对所述关系结构数据库和所述图数据库中的数据进行一致性操作。
在一种具体实现方式中,处理模块102,还用于:
通过数据作业管理API接收数据作业管理操作并执行对应的操作,所述数据作业管理操作用于对指定数据进行增加,删减,修改和查询中的任一种操作。
在一种具体实现方式中,处理模块102,还用于:
通过数据源管理API接收数据源管理操作,并执行对应的操作,所述数据源管理操作包括以下任一种操作:在所述数据管理系统中增加新的数据源,删除所述数据管理系统中的指定数据源,对所述数据管理系统中的指定数据源进行修改,查询所述数据管理系统中的数据源,获取新的数据集。
在一种具体实现方式中,接收模块101,用于:
通过数据集管理API接收访问请求,所述访问请求用户访问数据源或者数据集;
处理模块102,用于根据所述访问请求对所述关系结构数据库和/或所述图数据库中存储的数据进行访问。
本申请实施例提供的数据管理装置,用于执行前述实施例中数据管理方法的各个步骤,其实现原理和技术效果类似,在此不再赘述。
图5为本申请实施例提供的一种电子设备的硬件结构示意图。如图5所示,本实施例提供的电子设备200,包括:
存储器202,处理器201,与至少一个与其他设备进行交互的接口203;
所述存储器202用于存储数据和计算机程序;
所述处理器201执行所述计算机程序,使得所述电子设备200执行前述实施例中数据管理方法的各个步骤。
可选的,存储器202既可以是独立的,也可以跟处理器201集成在一起。
当存储器202是独立于处理器201之外的器件时,电子设备200还包括:总线,用于连接存储器202、处理器201、接口203。
本申请实施例还提供一种存储介质,存储介质中存储有计算机程序,当所述计算机程序被处理器执行时用于实现前述实施例中的数据管理方法。
应理解,本申请实施例中提及的处理器可以是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
需要说明的是,当处理器为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)集成在处理器中。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。
Claims (14)
1.一种数据管理系统,其特征在于,包括:
数据存储层,内核处理层,功能模块层,数据访问驱动层;
所述数据存储层包括用于存储关系结构数据的关系结构数据库以及用于存储拓扑结构数据的图数据库;
所述功能模块层包括:第一功能模块,第二功能模块,第三功能模块,第四功能模块,第五功能模块;其中,所述第一功能模块用于定义并处理不同属性的链路拓扑结构查询,所述第二功能模块用于定义并处理数据关系的操作,所述第三功能模块用于定义并封装不同属性的数据的元信息操作,所述第四功能模块用于提供可扩展的不同属性的数据作业发现功能,所述第五功能模块用于提供可扩展的不同属性的数据的访问功能;
所述内核处理层设置在所述数据存储层和所述功能模块层之间,所述内核处理层包括:强一致性操作模型和不同属性的数据的描述模型,所述强一致性操作模型用于在所述功能模块层对数据进行更新后,维护所述关系结构数据库和所述图数据库中数据的一致性;所述描述模型用于将不同属性的数据使用统一的元信息进行描述;
所述数据访问驱动层用于定义数据操作协议和驱动描述对象协议,并提供不同属性的数据源的使用和接入接口。
2.根据权利要求1所述的系统,其特征在于,所述系统还包括:接口层,用于对外提供服务接口;
所述接口层包括:与所述第一功能模块对应的链路拓扑查询API;与所述第二功能模块对应的数据关系管理API;与所述第三功能模块对应的数据源管理API;与所述第四功能模块对应的数据作业管理API;与所述第五功能模块对应的数据集管理API。
3.根据权利要求1或2所述的系统,其特征在于,所述不同属性的数据包括支持异构的数据源,数据集和数据作业。
4.根据权利要求1或2所述的系统,其特征在于,所述图数据库中存储的拓扑结构数据由关系实体,每个实体的所属边,处理边以及处理完成边组成,所述关系结构数据库中存储的数据关系由上游数据集ID,下游数据集ID和数据处理作业ID组成。
5.根据权利要求1或2所述的系统,其特征在于,所述系统还包括:服务对象,所述服务对象通过所述数据访问驱动层进行数据交互;所述服务对象包括数据源和数据作业。
6.一种数据管理方法,其特征在于,应用于权利要求1至5任一项所述的数据管理系统,所述方法包括:
通过链路拓扑查询API接收链路拓扑结构查询请求,所述链路拓扑结构查询请求中包括待查询的属性字段,所述属性字段包括URI,名字和类型中的至少一个字段;
根据所述待查询的属性字段,从所述图数据库中获取完整的链路拓扑结构图;
将所述链路拓扑结构图通过链路拓扑查询接口返回。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
通过数据关系管理API接收数据关系更新操作,所述数据关系更新操作包括关系绑定,绑定解除,关系修改和关系查询中的任一种;
根据所述数据关系更新操作对所述关系结构数据库中的数据关系进行更新。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
通过内核处理层中的强一致性操作模型,对所述关系结构数据库和所述图数据库中的数据进行一致性操作。
9.根据权利要求6所述的方法,其特征在于,所述方法还包括:
通过数据作业管理API接收数据作业管理操作并执行对应的操作,所述数据作业管理操作用于对指定数据进行增加,删减,修改和查询中的任一种操作。
10.根据权利要求6所述的方法,其特征在于,所述方法还包括:
通过数据源管理API接收数据源管理操作,并执行对应的操作,所述数据源管理操作包括以下任一种操作:在所述数据管理系统中增加新的数据源,删除所述数据管理系统中的指定数据源,对所述数据管理系统中的指定数据源进行修改,查询所述数据管理系统中的数据源,获取新的数据集。
11.根据权利要求6所述的方法,其特征在于,所述方法还包括:
通过数据集管理API接收访问请求,所述访问请求用户访问数据源或者数据集;
根据所述访问请求对所述关系结构数据库和/或所述图数据库中存储的数据进行访问。
12.一种数据管理装置,其特征在于,应用于权利要求1至5任一项所述的数据管理系统,包括:
接收模块,用于通过链路拓扑查询API接收链路拓扑结构查询请求,所述链路拓扑结构查询请求中包括待查询的属性字段,所述属性字段包括URI,名字和类型中的至少一个字段;
处理模块,用于根据所述待查询的属性字段,从图数据库中获取完整的链路拓扑结构图;
发送模块,用于将所述链路拓扑结构图通过链路拓扑查询接口返回。
13.一种电子设备,其特征在于,包括:
存储器,处理器,与至少一个与其他设备进行交互的接口;
所述存储器用于存储数据和计算机程序;
所述处理器执行所述计算机程序,使得所述电子设备执行权利要求6至11任一项所述的数据管理方法。
14.一种存储介质,其特征在于,所述存储介质中存储了计算机程序,所述计算机程序被处理器执行时实现权利要求6至11任一项所述的数据管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010783570.8A CN111881223B (zh) | 2020-08-06 | 2020-08-06 | 数据管理方法、设备、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010783570.8A CN111881223B (zh) | 2020-08-06 | 2020-08-06 | 数据管理方法、设备、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111881223A CN111881223A (zh) | 2020-11-03 |
CN111881223B true CN111881223B (zh) | 2023-06-27 |
Family
ID=73210873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010783570.8A Active CN111881223B (zh) | 2020-08-06 | 2020-08-06 | 数据管理方法、设备、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111881223B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112632133B (zh) * | 2020-12-31 | 2023-10-10 | 中国农业银行股份有限公司 | 一种数据链路查询方法及装置 |
CN112328711B (zh) * | 2020-12-31 | 2021-04-27 | 苏州博纳讯动软件有限公司 | 基于图数据结构的网络链路分析方法 |
CN113110826A (zh) * | 2021-03-31 | 2021-07-13 | 北京靠谱云科技有限公司 | 一种云接口聚合层统一管控api的方法 |
CN113961755B (zh) * | 2021-09-08 | 2023-02-10 | 南湖实验室 | 一种基于持久内存的图数据存储架构 |
CN114764326B (zh) * | 2022-03-30 | 2023-09-19 | 中国石油天然气集团有限公司 | 一种一体化软件的数据层扩展方法和系统 |
CN115269561B (zh) * | 2022-09-21 | 2023-01-24 | 国网智能电网研究院有限公司 | 一种混合数据库管理方法、装置、混合数据库及电子设备 |
CN115827701B (zh) * | 2023-01-09 | 2023-04-18 | 中国电子信息产业集团有限公司第六研究所 | 一种多层异构数据的管理系统、方法及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6714979B1 (en) * | 1997-09-26 | 2004-03-30 | Worldcom, Inc. | Data warehousing infrastructure for web based reporting tool |
CN109255055A (zh) * | 2018-08-06 | 2019-01-22 | 四川蜀天梦图数据科技有限公司 | 一种基于分组关联表的图数据存取方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7831693B2 (en) * | 2003-08-18 | 2010-11-09 | Oracle America, Inc. | Structured methodology and design patterns for web services |
-
2020
- 2020-08-06 CN CN202010783570.8A patent/CN111881223B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6714979B1 (en) * | 1997-09-26 | 2004-03-30 | Worldcom, Inc. | Data warehousing infrastructure for web based reporting tool |
CN109255055A (zh) * | 2018-08-06 | 2019-01-22 | 四川蜀天梦图数据科技有限公司 | 一种基于分组关联表的图数据存取方法和装置 |
Non-Patent Citations (5)
Title |
---|
Griddaen数据网格系统的设计与关键技术实现;刘颂;吴产乐;;计算机工程与设计(第04期);154-157+169 * |
基于ETL的工业数据集成方法设计;张伟东;;中国科技信息(第12期);90-92 * |
大数据3.0――后Hadoop时代大数据的核心技术;刘汪根;孙元浩;;数据与计算发展前沿(第05期);98-108 * |
金融网格的数据管理策略研究;胡蓉;;长沙航空职业技术学院学报(第02期);68-71 * |
面向网格环境的Java跨平台GIS系统原型实现的关键技术;高昂;陈荣国;张明波;李飞;赵斯思;;地球信息科学(第06期);69-75 * |
Also Published As
Publication number | Publication date |
---|---|
CN111881223A (zh) | 2020-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111881223B (zh) | 数据管理方法、设备、系统及存储介质 | |
US11816126B2 (en) | Large scale unstructured database systems | |
US11704290B2 (en) | Methods, devices and systems for maintaining consistency of metadata and data across data centers | |
JP6669892B2 (ja) | 分散型データストアのバージョン化された階層型データ構造 | |
CN110291517B (zh) | 图数据库中的查询语言互操作性 | |
EP2932370B1 (en) | System and method for performing a transaction in a massively parallel processing database | |
CN102779185B (zh) | 一种高可用分布式全文索引方法 | |
US11314717B1 (en) | Scalable architecture for propagating updates to replicated data | |
US20120158655A1 (en) | Non-relational function-based data publication for relational data | |
WO2018036324A1 (zh) | 一种智慧城市信息共享的方法和装置 | |
US20040128327A1 (en) | System and method for synchronizing data of wireless devices | |
US8380787B2 (en) | Federation of master data management systems | |
CN111143382A (zh) | 数据处理方法、系统和计算机可读存储介质 | |
CN103345502A (zh) | 分布式数据库的事务处理方法和系统 | |
GB2534374A (en) | Distributed System with accelerator-created containers | |
CN105956041A (zh) | 基于Spring Data for MongoDB集群的数据模型处理方法 | |
EP3994581A1 (en) | Methods and systems for garbage deletion in a document database | |
US8527478B1 (en) | Handling bulk and incremental updates while maintaining consistency | |
Xiong et al. | Data vitalization: a new paradigm for large-scale dataset analysis | |
CN112181950B (zh) | 一种分布式对象数据库的构建方法 | |
US8694559B2 (en) | Using database content for multiple business data systems connected to one database | |
CN102760154A (zh) | 一种在文本信息检索服务中支持分布式事务管理的方法 | |
CN108256019A (zh) | 数据库主键生成方法、装置、设备及其存储介质 | |
US10331627B2 (en) | Method and system for unified technological stack management for relational databases | |
Ibrahim | Mobile transaction processing for a distributed war environment |
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 |