写点什么

数据治理(五):元数据管理

作者:Lansonli
  • 2022 年 8 月 10 日
    广东
  • 本文字数:2521 字

    阅读完需:约 8 分钟

数据治理(五):元数据管理

​元数据管理

一、大数据中为什么要元数据管理

元数据(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 位数字。

发布于: 2022 年 08 月 10 日阅读数: 69
用户头像

Lansonli

关注

微信公众号:三帮大数据 2022.07.12 加入

CSDN大数据领域博客专家,华为云享专家、阿里云专家博主、腾云先锋(TDP)核心成员、51CTO专家博主,全网六万多粉丝,知名互联网公司大数据高级开发工程师

评论

发布
暂无评论
数据治理(五):元数据管理_大数据_Lansonli_InfoQ写作社区