功能特性

高层架构

qianmoQqianmoQ· 更新于 2026-09-28· 阅读 5 分钟· 0 次阅读

登录后可跨设备保存划线和私人笔记登录

架构

简介

Atlas 高层架构概览

Atlas 的组件可分为以下几个主要类别:

核心

Atlas 核心包含以下组件:

类型系统:Atlas 允许用户为其希望管理的元数据对象定义一个模型。该模型由称为"类型"的定义组成。类型的实例称为"实体",代表被管理的实际元数据对象。类型系统是一个允许用户定义和管理类型与实体的组件。Atlas 开箱即用所管理的所有元数据对象(例如 Hive 表)都是使用类型建模并以实体形式表示的。要在 Atlas 中存储新型元数据,需要理解类型系统组件的概念。

需要注意的一个关键点是,Atlas 中建模的通用性使得数据管理者和集成人员既能够定义技术元数据,也能够定义业务元数据。还可以利用 Atlas 的功能在两者之间定义丰富的关联关系。

图引擎:在内部,Atlas 使用图模型来持久化其管理的元数据对象。这种方式提供了极大的灵活性,并能够高效处理元数据对象之间的丰富关联。图引擎组件负责在 Atlas 类型系统的类型与实体之间,以及底层图持久化模型之间进行转换。除了管理图对象之外,图引擎还为元数据对象创建相应的索引,以便对其进行高效搜索。Atlas 使用 JanusGraph 来存储元数据对象。

摄取 / 导出:摄取组件用于将元数据添加到 Atlas 中。同样,导出组件将 Atlas 检测到的元数据变更作为事件对外发布。消费者可以消费这些变更事件,从而实时响应元数据的变化。

集成

用户可以通过两种方式在 Atlas 中管理元数据:

API:Atlas 的所有功能都通过 REST API 向最终用户开放,该 API 允许创建、更新和删除类型与实体。它也是查询和发现 Atlas 所管理类型与实体的主要机制。

消息传递:除了 API 之外,用户还可以选择通过基于 Kafka 的消息接口与 Atlas 集成。这种方式既适用于向 Atlas 传输元数据对象,也适用于从 Atlas 消费元数据变更事件,从而在此基础上构建应用。如果希望采用与 Atlas 更松散耦合的集成方式,以获得更好的可扩展性、可靠性等,消息接口尤其有用。Atlas 使用 Apache Kafka 作为通知服务器,用于挂钩(hook)与元数据通知事件的下游消费者之间的通信。事件由挂钩和 Atlas 写入不同的 Kafka 主题。

元数据源

Atlas 开箱即用地支持与众多元数据源集成,未来还将接入更多集成。目前,Atlas 支持从以下数据源采集和管理元数据:

这种集成包含两层含义:其一,Atlas 原生定义了用于表示这些组件中对象的元数据模型;其二,Atlas 提供了相应组件,用于从这些组件中采集元数据对象(实时采集,在某些情况下也支持批量采集)。

应用

Atlas 所管理的元数据被各类应用程序消费,以满足多种治理场景的需求。

Atlas 管理界面(Atlas Admin UI):该组件是一个基于 Web 的应用程序,允许数据管理人员和数据科学家发现并标注元数据。其核心功能包括一个搜索界面以及一种类 SQL 的查询语言,可用于查询 Atlas 所管理的元数据类型与对象。管理界面基于 Atlas 的 REST API 构建其功能。

基于标签的策略(Tag Based Policies):Apache Ranger 是面向 Hadoop 生态系统的高级安全管理解决方案,与众多 Hadoop 组件有着广泛的集成。通过与 Atlas 集成,Ranger 使安全管理员能够定义由元数据驱动的安全策略,从而实现有效治理。Ranger 是 Atlas 所发布的元数据变更事件的消费方。

评论

登录后参与评论

正在加载评论…