数仓元数据管理之Atlas web UI以及自定义开发(2.1.0)

it2026-09-03  5

数仓元数据管理之Atlas web UI以及自定义开发(2.1.0)

1. 背景

数仓开发中,当数据库,表比较多,又需要进行这些表,数据库的元数据管理和梳理时,就需要使用到元数据管理工具。atlas就是一款数仓中元数据管理框架,但由于是开源框架,本身并没有将所有企业开发中需要涉及到功能都提供,剩余部分需要自行根据需求开发,所以提供了基本的web页面和功能(个人认为就是演示使用),以及API,可以让企业按照自身需求做开发。

2. web ui

ApacheAtlasUI功能包括4部分 create entity:创建实体(创建数据资产的元数据–人工录入元数据) (在atlas中,有大量的对各类数据资产适配的描述定义:实体类型! hive_table; hive_db;hive_column;hive_process;hdfs_path,…,如果我们有一个数据资产,没有对应的内置实体类型,可以自己去定义一个你的实体类型,来描述你的这个数据资产)search:搜索查看classfication:分类管理glossary:对数据资产标记“术语”(标签) Create Entity

atlas跟HDFS之间没有开发好的元数据钩子,atlas是无法自动感知到hdfs中数据资产的属性、操作记录等信息的;这时,我们可以手动去为atlas创建这些信息 用到的功能就是 create new entity

如hdfs中有一个目录/aaa/bbb 我们手动去创建一个数据资产的描述(元数据)时,有很多信息,在页面的表单中没有提供填写的输入框 注意,手动录入对于企业开发来说是比较低效的,一般是联合web端开发,开发自己的自定义web页面,但需要跟web开发解说接口使用的出入参数含义 http://atlas.apache.org/api/v2/index.html

数据分类 atlas中有两套分类体系: classification / glossary

classification 演示,为一张hive的表分配类别 创建完类别定义后,就可以在类别名称列表中看到 在类别体系创建好之后,就可以为我们的数据资产分配类别了 一个数据资产,可以被分配到多个classification类别; 有了类别体系后,就可以方便地通过类别,查找该类别下的所有数据资产 可以视为,这些类别和分类,就是对数据库和数据表打标签,方便做数据查询和筛选,管理

glossary 可以在glossary列表中看到创建的结果 在创建好的glossay(词汇)中添加term(词) 创建后查看结果 glossay创建后,就可以为数据资产打上glossay标记 数据资产被分配了glossary和term之后,就可以按照term来搜索了

数据搜索 查询条件有 Type、Classification、Term、Text。还可以保存常用的查询条件组合。 basic search示例:

高级搜索 高级搜索,就是用DSL语法,来自己创建灵活的搜索条件 注意,官方这里有文档告诉如何使用高级搜索,照着使用即可 更多关于atlas DSL搜索语法,请参考官方手册 http://atlas.apache.org/#/SearchAdvance

血统

Atlas WebUI 搜索到某个表后,可以看到这个表的Lineage

其实血统的概念和spark中的血统概念一样,其实就是数据之间的关系。 如hive中,数据是来资源表和表之间的怎样处理的结果,表和表数据之间的关系。

如hive中: insert into table t_c select id,name,age from t_a where id>2;

3. 自定义API

手册介绍 atlas的restapi,官方提供了一个在线试用工具 shell调用案例(curl) 查看Atlas Metadata Server节点状态 curl -s -u admin:admin "http://doit33:21000/api/atlas/admin/status"

ACTIVE:此实例处于活跃状态,可以响应用户请求。 PASSIVE:此实例处于被动状态。它会将收到的任何用户请求重定向到当前ACTIVE实例。 BECOMING_ACTIVE:此实例正在转换为ACTIVE实例,在此状态下无法为用户提供请求服务。 BECOMING_PASSIVE:此实例正在转换为PASSIVE实例,在此状态下无法为用户提供请求服务。

查看Atlas版本和描述 GET /admin/version url -s -u admin:admin "http://doit33:21000/api/atlas/admin/version" 基本搜索 GET /v2/search/basic curl -s -u admin:admin "http://doit33:21000/api/atlas/v2/search/basic?typeName=hive_table" postman 整体和curl类似,不过有了ui图形化界面 注意,如果对接口有疑问,可以使用现有网页调用接口,观察一下必须要的参数和返回数据结构
最新回复(0)