支持高效访问的元数据存储方法与流程

文档序号:37425459发布日期:2024-03-25 19:12阅读:13来源:国知局
支持高效访问的元数据存储方法与流程

本发明涉及数据库信息,尤其涉及支持高效访问的元数据存储方法。


背景技术:

1、数据库元数据服务在数据库管理服务中作为基础服务,扮演着重要的角色,需要对接许多的第三方系统,还需要支撑高阶的数据治理,包括资产打标分类、数据血缘分析、存储成本治理等等。所以,如何存储元数据信息非常关键。目前最流行的元数据的集中管理系统以开源系统apache atlas和linkedin datahub为代表,它们的元数据是以非关系型模型存储,导致存储系统的部署成本高,且与其他业务系统集成的复杂度高;还额外引入了搜索引擎以支持元数据的搜索和访问,元数据多份复制使得存储成本和运维复杂度上升,也带来了元数据的延迟和一致性问题。

2、如授权公告号为cn112905564b公开了一种基于atlas管理oracle数据库元数据的方法,基于atlas组件支持自定义扩展type索引的模式,通过扩展自定义的oracle type提供存储和索引服务,但是该方法没有考虑oracle外其他数据库元数据的存储和索引,而且该基础基于atlas组件,atlas是采用kv模型将元数据存储在hbase中,引入hbase会增加学习、部署和运维的成本,在与元数据系统集成时,无法在数据库层通过sql直接访问,而是要通过服务层api进行调用并在应用层做额外处理,增加了整体系统开发的复杂度和工作量。

3、如授权公告号为cn115062084b公开了一种基于数据库元数据构建api接口方法及装置,通过该技术来减少对接时产生的运维管理问题,但是该技术使用的是接口层级的对接方式,不支持数据库层级的对接。

4、以上专利存在本背景技术提出的问题:存储系统的部署成本高,且与其他业务系统集成的复杂度高,元数据多份复制使得存储成本和运维复杂度上升,也带来了元数据的延迟和一致性问题。为解决这一问题,本发明提出支持高效访问的元数据存储方法。


技术实现思路

1、本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。

2、鉴于上述现有支持高效访问的元数据存储方法存在的问题,提出了本发明。

3、因此,本发明目的是提供支持高效访问的元数据存储方法。

4、为解决上述技术问题,本发明提供如下技术方案:通过关系模型描述元数据,将所述元数据存储到关系型数据库中;

5、将所述元数据进行分层存储,先存储上层元数据,再存储下层元数据;

6、使所述分层存储的元数据能兼容异构数据库;

7、在所述异构数据库中为冗余的所有上层表主键建立索引,以支持元数据的高效访问。

8、作为本发明所述支持高效访问的元数据存储方法的一种优选方案,其中:为每一层级的所述元数据设计一张表进行存储,存储到所述关系型数据库中。

9、作为本发明所述支持高效访问的元数据存储方法的一种优选方案,其中:所述表的字段包含该层元数据的所有属性,且必须具备自增的主键和所有上层表的主键。

10、作为本发明所述支持高效访问的元数据存储方法的一种优选方案,其中:所述关系型数据库包括mysql、oracle、sqlserver、db2和postgresql。

11、作为本发明所述支持高效访问的元数据存储方法的一种优选方案,其中:所述分层存储包括分别建立单表存储实例、数据库、模式、表、视图、列和索引对象的元数据。

12、作为本发明所述支持高效访问的元数据存储方法的一种优选方案,其中:在进行采集所述元数据的时候先采集上层的元数据,即按实例-数据库-模式的顺序进行采集,下层对象也按照实例-数据库-模式的顺序进行采集,存储下层表时,冗余所有上层表的主键。

13、作为本发明所述支持高效访问的元数据存储方法的一种优选方案,其中:对所述异构数据库的管理规则包括所述元数据的设计是以多层级的数据库类型为主,少层级的数据库类型则在对应的字段填默认值。

14、作为本发明所述支持高效访问的元数据存储方法的一种优选方案,其中:所述元数据存储查询的流程如下所示:

15、首先采集所述元数据,其次分层存储所述元数据,然后查询所述元数据,在对所述元数据进行验证与访问控制,最后返回查询结果。

16、一种计算机设备,包括,存储器,用于存储指令;处理器,用于执行所述指令,使得所述设备执行实现支持高效访问的元数据存储方法。

17、一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被执行时,实现支持高效访问的元数据存储方法。

18、本发明的有益效果:本发明通过关系模型描述元数据,将元数据存储到关系型数据库中,采用关系型模型描述元数据,可以使用mysql等关系型数据库进行元数据存储,相比使用nosql具有成本优势,同时让开发者可以使用熟悉的技术栈来访问元数据进行外部系统的集成;将元数据进行分层存储,先存储上层元数据,再存储下层元数据,分层存储元数据对象,下层表冗余所有上层表的主键id,并建立索引,方便查询访问,仅保存一份元数据,避免数据复制,同时也避免数据同步通道的运维和数据一致性问题,减少存储成本的同时也减少了运维成本;使分层存储的元数据能兼容异构数据库,通过主键id的存储,元数据表可任意地两两join,从而高效地支持多条件搜索;在异构数据库中为冗余的所有上层表主键建立索引,以支持元数据的高效访问,同时在元数据表可以方便地进行数据库的资产统计。



技术特征:

1.支持高效访问的元数据存储方法,其特征在于:包括,

2.如权利要求1所述的支持高效访问的元数据存储方法,其特征在于:为每一层级的所述元数据设计一张表进行存储,存储到所述关系型数据库中;

3.如权利要求2所述的支持高效访问的元数据存储方法,其特征在于:所述关系型数据库包括mysql、oracle、sqlserver、db2和postgresql。

4.如权利要求3所述的支持高效访问的元数据存储方法,其特征在于:所述分层存储包括分别建立单表存储实例、数据库、模式、表、视图、列和索引对象的元数据;

5.如权利要求4所述的支持高效访问的元数据存储方法,其特征在于:对所述异构数据库的管理规则包括所述元数据的设计是以多层级的数据库类型为主,少层级的数据库类型则在对应的字段填默认值。

6.如权利要求5所述的支持高效访问的元数据存储方法,其特征在于:所述元数据存储查询的流程如下所示:

7.如权利要求6所述的支持高效访问的元数据存储方法,其特征在于:元数据存储包括实例元数据存储、数据库元数据存储、模式元数据存储、表元数据存储、视图元数据存储、字段元数据存储和索引元数据存储。

8.如权利要求7所述的支持高效访问的元数据存储方法,其特征在于:所述实例元数据表作为所述数据库元数据存储的最上层表,核心在于唯一的实例id和其下所有db的公共属性,实例id作为下层对象关联的唯一标识;

9.一种计算机设备,其特征在于:包括,

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:该计算机程序被执行时,实现如权利要求1-8中任一项所述的支持高效访问的元数据存储方法。


技术总结
本发明涉及数据库信息技术领域,公开了一种支持高效访问的元数据存储方法,通过关系模型描述元数据,将元数据存储到关系型数据库中,采用关系型模型描述元数据,让开发者可以使用熟悉的技术栈来访问元数据进行外部系统的集成;将元数据进行分层存储,先存储上层元数据,再存储下层元数据,分层存储元数据对象,下层表冗余所有上层表的主键ID,并建立索引,方便查询访问,仅保存一份元数据,避免数据复制,减少存储成本的同时也减少了运维成本;使分层存储的元数据能兼容异构数据库,通过主键ID的存储,元数据表可任意地两两join,从而高效地支持多条件搜索;在异构数据库中为冗余的所有上层表主键建立索引,以支持元数据的高效访问。

技术研发人员:张扬权,黄景亮,李韬,朱承禹,陈金曈
受保护的技术使用者:天翼云科技有限公司
技术研发日:
技术公布日:2024/3/24
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1