Apache Atlas是Hadoop社区为解决Hadoop生态系统的元数据治理问题而产生的开源项目,它为Hadoop集群提供了包括 数据分类、集中策略引擎、数据血缘、安全和生命周期管理在内的元数据治理核心能力。
概述
面对海量且持续增加的各式各样的数据对象,你是否有信心知道哪些数据从哪里来以及它如何随时间而变化?采用Hadoop必须考虑数据管理的实际情况,元数据与数据治理成为企业级数据湖的重要部分。该项目用于管理共享元数据、数据分级、审计、安全性以及数据保护等方面,努力与Apache Ranger整合,用于数据权限控制策略。Apache Atlas是hadoop的数据治理和元数据框架,它提供了一个可伸缩和可扩展的核心基础数据治理服务集,使得 企业可以有效的和高效的满足Hadoop中的合规性要求,并允许与整个企业的数据生态系统集成:
核心特性
Apache Atlas为Hadoop的元数据治理提供了以下特性:
数据分类
为元数据导入或定义业务导向的分类注释
定义,注释,以及自动捕获数据集和底层元素之间的关系
导出元数据到第三方系统
集中审计
捕获与所有应用,过程以及与数据交互的安全访问信息
捕获执行,步骤,活动等操作的信息
搜索与血缘
预定义的导航路径用来探索数据分类以及审计信息
基于文本的搜索特性来快速和准确的定位相关联的数据和审计事件
对数据集血缘关系的可视化浏览使用户可以下钻到操作,安全以及数据起源相关的信息
安全与策略引擎
基于数据分类模式,属性以及角色的运行时合理合规策略
基于分类-预测的高级策略定义以防止数据推导
基于cell的属性和值的行/列级别的masking
Apache Atlas的架构如下图所示:
Atlas的组件可以分为以下几个部分:
Core 此类别包含实现 Atlas 功能核心的组件,包括:
Type System: Atlas 允许用户为他们想要管理的元数据对象定义一个模型。该模型由称为 "类型" 的定义组成。"类型" 的 实例被称为 "实体" 表示被管理的实际元数据对象。类型系统是一个组件,允许用户定义和管理类型和实体。由 Atlas 管理的所有元数据对象(例如Hive表)都使用类型进行建模,并表示为实体。要在 Atlas 中存储新类型的元数据,需要了解类型系统组件的概念。
Ingest/Export:Ingest 组件允许将元数据添加到 Atlas。类似地,Export 组件暴露由 Atlas 检测到的元数据更改,以作为事件引发,消费者可以使用这些更改事件来实时响应元数据更改。
** Graph Engine**:在内部,Atlas 通过使用图形模型管理元数据对象。以实现元数据对象之间的巨大灵活性和丰富的关系。图形引擎是负责在类型系统的类型和实体之间进行转换的组件,以及基础图形模型。除了管理图形对象之外,图形引擎还为元数据对象创建适当的索引