一种构建可扩展和可重建的元数据管理的方法及装置制造方法及图纸

技术编号:37266439 阅读:36 留言:0更新日期:2023-04-20 23:37
本发明专利技术公开一种构建可扩展和可重建的元数据管理的方法及装置,方法包括:进行元数据的操作,包括:元数据发现、元数据管理、元数据推送;微服务的API将数据写入主存储;微服务的API生成元数据变更的记录,写入Kafka;基于Kafka的元数据接收;按场景构建元数据模型;主存储数据及元数据异常重建;构建元数据事件的实时响应。本发明专利技术针对元数据存储的数据出现问题,易于重建和修复;元数据处理的性能通过Flink/SparkStreaing程序,性能可以任意横向扩展;可构建完整的元数据事件的实时响应系统;可灵活地按场景构建元数据模型。可灵活地按场景构建元数据模型。可灵活地按场景构建元数据模型。

【技术实现步骤摘要】
一种构建可扩展和可重建的元数据管理的方法及装置


[0001]本专利技术涉及元数据管理领域,尤其是一种构建可扩展和可重建的元数据管理的方法及装置。

技术介绍

[0002]常规的元数据处理架构,以开源的Apache Altas项目为例,元数据的获取主要有Rest API和Kafka两种方式,两种方式并存,分别适配不同的场景。
[0003]Apache Altas是大数据的元数据管理和数据治理平台,是Hadoop社区为解决Hadoop生态系统的元数据治理问题而产生的开源项目。
[0004]Rest API:通过Rest构建的API,通过HTTP请求的方式访问应用程序的接口。
[0005]Rest API接口直接操作元数据存储的数据库,包括查询元数据以及通过管理页面对元数据执行增删改操作。
[0006]Kafka则是将获取的元数据发送至Kafka专用的Topic,然后,数据解析程序消费Kafka的数据,生成相应的元数据,写入元数据存储。
[0007]存在的问题如下:
[0008](1)、元数据存储的数据出现问题,很难进行重建和修复
[0009]当元数据的存储出现问题,有三种思路实现元数据的重建和修复:通过元数据的操作记录恢复、从Kafka的历史存储记录重新消费构建元数据、从数据的源头重新生成元数据。
[0010]第一种方式,通过元数据的操作记录恢复。
[0011]基于Rest API接口的元数据操作,例如,增加、修改、删除等没有记录操作的记录,出现问题很难进行重建和修复,也无法对元数据的操作进行拦截和审计。
[0012]或者通过Rest API操作元数据时,记录操作的记录,但是无法区分Rest API操作和基于Kafka的对元数据的操作的顺序。例如,Rest API记录的元数据变更的记录和Kafka存储的元数据记录,都包含了对表字段改名等元数据操作,难以区分先后顺序,这给元数据的重构和修复带来很大的困难。
[0013]第二种方式:从Kafka的历史存储记录重新消费构建元数据
[0014]从Kafka的历史存储记录重新消费构建元数据的思路是合理的,但是,在元数据管理系统中,不仅仅只有一种元数据的接收方式。还有通过Rest API的方式接收数据,这部分的元数据变更是没有体现在Kafka的数据中。因此,Kafka存储的数据不是全量的数据,无法从Kafka的历史存储记录重新消费构建完整的元数据。
[0015]第三种方式:从数据的源头重新生成元数据
[0016]从数据的源头生成元数据,需要连接数据源抽取元数据或者重新执行建表、修改表结构等动作,不仅影响数据源头的行,而重新建表、修改表等实际操作的难度非常大。
[0017](2)、无法构建元数据事件的实时响应系统
[0018]元数据的任何变更,在元数据系统能够实时或准实时地捕捉变更的事件,基于对
事件的分析,自动化响应处置的操作,处置的逻辑根据业务需要可以自由定义。例如,修改了核心数据表的字段,自动触发向所有相关的团队成员发送告知邮件。破坏性的Schema变更、未经授权的操作,触发告警流程等等。
[0019]schema是数据库对象集合,它包含了表,视图等多种对象,schema的变更包括增加表字段、修改表字段的数据类型,删除表、新建表等。
[0020]当前常规的元数据流程,数据是通过Kafka进行接收,可以监听Kafka相关的topic,可实现对元数据事件的实时响应。但是,如果是通过Rest API接口,则构建对元数据事件的实时响应难度大,需要对Rest API接口进行定制化的改造,扩展性和易用性极差。
[0021]Rest API接口在元数据管理系统是必不可少的,如果只通过Kafka接收元数据也是不可行的,因为,元数据系统必须要支持通过页面直接操作元数据的存储库,对元数据进行增、删、改和查的操作,并且这些操作实时性要求极高,是无法直接对接Kafka的。
[0022](3)、按场景重构元数据模型缺乏灵活性
[0023]元数据存储在KV存储(例如,Hbase)或者关系型数据库(例如,MySQL)等数据库中。
[0024]当需要构建面向场景的元数据,比如,构建用于搜索场景的索引数据、用于图查询的数据以及用于构建进一步进行大数据分析的数据等等,则需要读取元数据的数据存储库,对数据的性能压力比较大。特别是面向场景的数据损坏或者丢失,可能需要读取大量的元数据的数据存储库,不仅影响性能,效率也低下。
[0025]HBase是一个分布式的、面向列的开源数据库。

技术实现思路

[0026]为解决现有技术存在的问题,本专利技术提供一种构建可扩展和可重建的元数据管理的方法及装置,可灵活地按场景构建元数据模型,当元数据存储的数据出现问题,可快速进行重建和修复,元数据处理的性能可横向扩展,可构建完整的元数据事件的实时响应系统。
[0027]为实现上述目的,本专利技术采用下述技术方案:
[0028]在本专利技术一实施例中,提出了一种构建可扩展和可重建的元数据管理的方法,该方法包括:
[0029]S01、进行元数据的操作,包括:元数据发现、元数据管理、元数据推送;
[0030]S02、微服务的API将数据写入主存储;微服务的API生成元数据变更的记录,写入Kafka;
[0031]S03、基于Kafka的元数据接收;
[0032]S04、按场景构建元数据模型;
[0033]S05、主存储数据及元数据异常重建;
[0034]S06、构建元数据事件的实时响应。
[0035]进一步地,所述S01包括:
[0036]S011、元数据发现,远程连接至源端,探查、发现元数据,执行元数据的拉取;
[0037]源端可以是MySQL数据库或者Superset等。
[0038]示例1:配置MySQL的数据源连接,获取MySQL的数据库、表、表字段、数据类型、视图等元数据信息。
[0039]示例2:配置可视化的BI工具Superset的地址和用户名/密码信息。获取superset
的图表和仪表盘等元数据信息。
[0040]元数据发现一般是配置调度系统,定期获取源端的元数据。
[0041]S012、元数据管理,通过元数据的管理页面,对元数据进行增删改查的操作,将元数据操作获取的原始的元数据,根据主存储的元数据的模型,执行转换操作,写入主存储;
[0042]例如,给MySQL的某个表添加标签、域信息、增加字段、删除字段等。
[0043]S013、元数据推送,元数据通过Hook,例如Hive Hook、Sqoop Hook、Hbase Hook等方式,监听元数据的变更,获取元数据变更的事件。
[0044]例如,通过Hive Hook,对Hive建表、修改表结构、SQL语句的执行等操作进行拦截,获取操作的信息,生成元数据。
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种构建可扩展和可重建的元数据管理的方法,其特征在于,该方法包括:S01、进行元数据的操作,包括:元数据发现、元数据管理、元数据推送;S02、微服务的API将数据写入主存储;微服务的API生成元数据变更的记录,写入Kafka;S03、基于Kafka的元数据接收;S04、按场景构建元数据模型;S05、主存储数据及元数据异常重建;S06、构建元数据事件的实时响应。2.根据权利要求1所述的构建可扩展和可重建的元数据管理的方法,其特征在于,所述S01包括:S011、元数据发现,远程连接至源端,探查、发现元数据,执行元数据的拉取;S012、元数据管理,通过元数据的管理页面,对元数据进行增删改查的操作,将元数据操作获取的原始的元数据,根据主存储的元数据的模型,执行转换操作,写入主存储;S013、元数据推送,元数据通过Hook,监听元数据的变更,获取元数据变更的事件。3.根据权利要求2所述的构建可扩展和可重建的元数据管理的方法,其特征在于,所述元数据发现,通过微服务的API或Kafka两种方式接收元数据;所述元数据管理,通过微服务的API直接操纵元数据;所述元数据推送,通过调用微服务的API或发送元数据至Kafka两种方式实现。4.根据权利要求1所述的构建可扩展和可重建的元数据管理的方法,所述S02中元数据变更记录包括:对元数据进行增加、删除、修改操作的全部信息,基于变更记录,可恢复元数据的操作。5.根据权利要求1所述的构建可扩展和可重建的元数据管理的方法,其特征在于,所述S03包括:S031、元数据写入专用的Kafka的topic;S032、启动Flink或SparkStreaming流处理程序,消费Kafka的topic的数据;S033、将数据按照微服务API接口的规范进行转换,然后转入S02步骤。6.根据权利要求1所述的构建可扩展和可重建的元数据管理的方法,其特征在于,所述S04包括:S041、启动Flink或者SparkStreaming等流处理程序,消费Kafka的元数据变更记录;S042、根据元数据的模型,构建全文检索...

【专利技术属性】
技术研发人员:周朝卫
申请(专利权)人:中盈优创资讯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1