当前位置:网站首页>Data Governance (5): Metadata Management
Data Governance (5): Metadata Management
2022-08-10 03:04:00 【InfoQ】
元数据管理
一、大数据中为什么要元数据管理
元数据(Metadata),通常的定义为"描述数据的数据".元数据打通了源数据、数据仓库、数据应用,记录了数据从产生到消费的全过程.元数据管理是数据治理的核心.
数据的真正价值在于数据驱动决策,通过数据指导运营.通过数据驱动的方法判断趋势,帮住我们发现问题,继而推动创新或产生新的解决方案.随着企业数据爆发式增长,数据体量越来越难以估量,我们很难说清楚我们到底拥有哪些数据,这些数据从哪里来,到哪里去,发生了什么变化,应该如何使用它们.因此数据治理中的元数据管理成为企业级不可或缺的重要组成部分.元数据治理可以提供数据源管理、分析数据血缘关系、分析数据影响等,实现对复杂的数据环境监控管理,为企业提供安全可信的数据,为数据仓库的运行与维护提供有效支撑.
简单来说,数据是公司中非常有价值的资产,这些数据包含各种数据源,各种业务,各种处理层次,对于这些资产需要有序、高效、统一的管理,这就需要一个元数据管理系统,元数据管理是数据治理中非常重要的一个核心,元数据的一致性、可追溯性是实现数据治理非常重要的一个环节.
二、元数据管理工具-Atlas
在大数据时代,目前最成熟的与Hadoop体系兼容比较好的元数据治理平台就是Apache Atlas.为寻求数据治理的开源解决方案,2015年,Hortonworks公司联合其他厂商与用户于发起数据治理倡议,然后,包含数据分类(资产目录及数据字典)、集中策略引擎、数据血缘、安全和生命周期管理功能的Atlas应运而生.
Apache Atlas是一个可伸缩和可扩展的核心基础治理服务集合,使企业能够有效地和高效地满足 Hadoop 中的合规性要求,并允许与整个企业数据生态系统的集成.为组织提供开放式元数据管理和治理功能,用以构建其数据资产目录,对这些资产进行分类和管理,并为数据科学家,数据分析师和数据治理团队提供围绕这些数据资产的协作功能.
Atlas官网地址:
Apache Atlas – Data Governance and Metadata framework for Hadoop
三、Atlas架构原理
关于Atlas的架构原理,我们只需要了解由哪些部分组成即可,Atlas的架构核心组件如下:

- Metadata Sources:
- Atlas支持与许多元数据源的集成,将来还会添加更多集成.目前,Atlas 支持从Hive、Sqoop、Storm、HBase获取和管理元数据.
- Integration:
- 用户可以使用两种方法管理 Atlas 中的元数据:
- API:Atlas 的所有功能都可以通过 REST API 提供给最终用户,允许创建,更新和删除类型和实体.它也是查询和发现通过 Atlas 管理的类型和实体的主要方法.
- Messaging:除了 API 之外,用户还可以选择使用基于 Kafka 的消息接口与 Atlas 集成.这对于将元数据对象传输到 Atlas 以及从 Atlas 使用可以构建应用程序的元数据更改事件都非常有用.如果希望使用与 Atlas 更松散耦合的集成,这可以允许更好的可扩展性,可靠性等,消息传递接口是特别有用的.
- Apps:
- Ranger Tag Based Policies: Apache Ranger 是针对 Hadoop 生态系统的高级安全管理解决方案,与各种 Hadoop 组件具有广泛的集成.通过与 Atlas 集成,Ranger 允许安全管理员定义元数据驱动的安全策略,以实现有效的治理.
- Atlas Admin UI: 该组件是一个基于 Web 的应用程序,允许我们发现和注释元数据.Admin UI提供了搜索界面和 类SQL的查询语言,可以用来查询由 Atlas 管理的元数据类型和对象.Admin UI 使用 Atlas 的 REST API 来构建其功能.
- Business Taxonomy:从元数据源获取到 Atlas 的元数据对象主要是一种技术形式的元数据.为了增强可发现性和治理能力,Atlas 提供了一个业务分类界面,允许用户首先定义一组代表其业务域的业务术语,并将其与 Atlas 管理的元数据实体相关联.业务分类法是一种 Web 应用程序,目前是 Atlas Admin UI 的一部分,并且使用 REST API 与 Atlas 集成.
- Core:
- Atlas Core包含以下几个部分:
- Ingest/Export:Ingest 组件允许将元数据添加到 Atlas.类似地,Export 组件暴露由Atlas检测到的元数据更改,以作为事件引发,消费者可以使用这些更改事件来实时响应元数据更改.
- Type System: Atlas 允许用户为他们想要管理的元数据对象定义一个模型.该模型由称为 "Type" 的定义组成."类型" 的 实例被称为 "实体" 表示被管理的实际元数据对象.类型系统是一个组件,允许用户定义和管理类型和实体.由 Atlas 管理的所有元数据对象(例如Hive表)都使用类型进行建模,并表示为实体.
- Graph Engine:在内部,Atlas通过使用图模型管理元数据对象.以实现元数据对象之间的巨大灵活性和丰富的关系.图引擎是负责在类型系统的类型和实体之间进行转换的组件,以及基础图形模型.除了管理图对象之外,图引擎还为元数据对象创建适当的索引,以便有效地搜索它们.
- JanusGraph:目前,Atlas 使用 JanusGraph图数据库来存储元数据对象. JanusGraph使用两个存储:默认情况下元数据存储配置为 HBase ,索引存储配置为 Solr
四、Atlas特性
1、元数据类型 & 实例
- 各种Hadoop和非Hadoop元数据的预定义类型.
- 能够为要管理的元数据定义新类型.
- 类型可以具有原始属性,复杂属性,对象引用;可以继承其他类型.
- 类型(type)实例(称为实体entities)捕获元数据对象详细信息及其关系.
- 可以更轻松地进行集成用于处理类型和实例的REST API.
2、分类
- 能够动态创建分类 - 如PII,EXPIRES_ON,DATA_QUALITY,SENSITIVE.
- 分类可以包含属性 - 例如EXPIRES_ON分类中的expiry_date属性.
- 实体(entities)可以与多个分类(classifications)相关联,从而实现更轻松的发现和安全实施.
- 通过血缘传播分类 - 自动确保分类在进行各种处理时遵循数据.
3、血缘
- 直观的UI,用于在数据流转时,通过各种流程时查看数据.
- 用于访问和更新血缘的REST API.
4、搜索/发现
- 直观的UI,按类型(type),分类(classification),属性值(attribute)或自由文本搜索实体.
- 丰富的REST API,可按复杂条件进行搜索.
- SQL搜索实体的查询语言 - 域特定语言(DSL).
5、安全和数据屏蔽
- 用于元数据访问的细粒度安全性,实现对实体实例的访问控制以及添加/更新/删除分类等操作.
- 与Apache Ranger集成可根据与Apache Atlas中的实体相关的分类对数据访问进行授权/数据屏蔽.例如:
- 谁可以访问分类为PII,SENSITIVE的数据.
- 客户服务用户只能看到分类为NATIONAL_ID的列的最后4位数字.
边栏推荐
猜你喜欢
随机推荐
Initial attempt at UI traversal
[QNX Hypervisor 2.2用户手册]10.14 smmu
OpenCV图像处理学习二,图像掩膜处理
Initial attempt at UI traversal
Premint工具,作为普通人我们需要了解哪些内容?
首次在我们的centos登录我们的Mysql
基于C51的中断控制
中文NER的SOTA:RICON
【论文粗读】(NeurIPS 2020) SwAV:对比聚类结果的无监督视觉特征学习
《GB39732-2020》PDF download
.Net interview experience summary
FusionCompute产品介绍
数据库治理利器:动态读写分离
宝塔服务器PHP+mysql网页URL跳转问题
UXDB现在支持函数索引吗?
数据治理(五):元数据管理
[LeetCode] Find the sum of the numbers from the root node to the leaf node
Research on Ethernet PHY Chip LAN8720A Chip
Problems and solutions related to Chinese character set in file operations in ABAP
SonarQube升级记录:7.8->7.9->8.9