【技术分享】 数据治理工具Apache Atlas初体验
2021/9/24 23:13:54
本文主要是介绍【技术分享】 数据治理工具Apache Atlas初体验,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
企业在数字化转型中会遇到各业务系统多,建设历程长,数据缺乏统一维护,从而导致数据无法贯通,数据字典缺失等问题。数据流转关系往往保留在业务或技术人员的脑海中,难以充分利用和传承。Apache Atlas就是为解决这些问题而产生的数据治理工具,利用Atlas可以自动构建数据字典,自动生成数据血缘,快速检索数据资源,不仅支持Hadoop生态的Hive、HBase、Sqoop等组件,还可以支持传统关系型数据库。
一、框架
上图可以看出,Atlas的框架有两个特点,一是基于Hadoop生态组件搭建,二是架构有些复杂。搭建Atlas需要一定的Hadoop基础知识,和十足的耐心,但使用的话不需要太了解底层的架构,使用界面比较傻瓜。
从架构图左上角开始,Atlas分析的数据来自于各类数据库自身的元数据(描述数据的数据,比如描述数据的建表语句、存储位置、关联关系等等)。再下来,采集元数据是通过Messaging组件实现的,其实就是Kafka。再下面,元数据进入Atlas的Core核心组件,为数据治理提供元数据导入导出、类型系统(也就是对库、表、字段等数据管理对象定义模型)、图形引擎(使用图模型保存元数据对象)。再向下,是通过JanusGraph把图模型转换为K-V数据保存于HBase中,使用Solr进行数据的搜索。接下来向上看,Atlas支持API的交互以控制core组件。再向上,通过Web应用封装API实现常规的使用(如数据元信息获取、血缘分析等)。
二、部署
从架构上看,Atlas的部署是一个很有挑战的活。要部署Hadoop集群(搭建并调试起HDFS、Yarn等基本组件)、Kafka集群(依赖Zookeeper)、HBase集群、Solr集群,由于需要一个数据源提供元数据,还需要搭建Hive(同时配套Mysql)。搭好这一堆后,再部署Atlas的应用。搭建的过程可以参考B站视频教程。
提一些建议,首先是搭建的过程中涉及大量的配置,千万别写错了,否则排查起来很困难。搭建调试好后,可以检查一下进程如下即可:
=============== hadoop102 =============== 2754 JobHistoryServer 5349 Kafka 12841 Atlas 17913 HMaster 2604 NodeManager 18108 HRegionServer 2237 DataNode 2990 QuorumPeerMain 2094 NameNode =============== hadoop103 =============== 3943 Kafka 1899 DataNode 2732 QuorumPeerMain 2077 ResourceManager 2238 NodeManager 9151 HRegionServer =============== hadoop104 =============== 1904 DataNode 2145 NodeManager 8851 HRegionServer 3652 Kafka 1990 SecondaryNameNode 2395 QuorumPeerMain
其次,注意启停各组件的顺序,参考如下:
477 myhadoop.sh start 478 sudo systemctl start mysqld 479 sudo systemctl status mysqld 480 zk.sh start 481 kf.sh start 482 start-hbase.sh 486 sudo -i -u solr /opt/module/solr/bin/solr start (三台都要启动) 487 cd .. 488 cd ./module/atlas/ 490 cd bin/ 491 ./atlas_start.py 492 hive 494 ./atlas_stop.py 495 sudo -i -u solr /opt/module/solr/bin/solr stop (三台都要关停) 496 stop-hbase.sh 497 kf.sh stop 498 zk.sh stop 499 myhadoop.sh stop 500 systemctl stop mysqld
看到这个界面就代表搭建成功了,
三、使用
使用起来比较简单,几乎在界面上点点就能摸索出来,不过英文界面很多人不大适应,可以参考这个说明手册,或者B站尚硅谷相关视频的后面几节。
通过Atlas自带的Hive Hook程序可以自动获取Hive的元数据。在Hive中建立几张表,并做出一张表(或视图)带有几张表的join关联,自动就能捕获到每张表的元数据和关联关系,非常方便地查找数据的来源和相关信息。
有些数据库在Atlas中没有Hook程序,也可以通过调用API导入方式实现元数据管理。例如Atlas通过API方式获取Mysql元数据,参考这里。这个过程相当于手动录入元数据信息,还可以自己写个hook程序实现自动获取数据库的元数据,参考这里。
这篇关于【技术分享】 数据治理工具Apache Atlas初体验的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-12深入理解 ECMAScript 2024 新特性:Map.groupBy() 分组操作
- 2025-01-11国产医疗级心电ECG采集处理模块
- 2025-01-10Rakuten 乐天积分系统从 Cassandra 到 TiDB 的选型与实战
- 2025-01-09CMS内容管理系统是什么?如何选择适合你的平台?
- 2025-01-08CCPM如何缩短项目周期并降低风险?
- 2025-01-08Omnivore 替代品 Readeck 安装与使用教程
- 2025-01-07Cursor 收费太贵?3分钟教你接入超低价 DeepSeek-V3,代码质量逼近 Claude 3.5
- 2025-01-06PingCAP 连续两年入选 Gartner 云数据库管理系统魔力象限“荣誉提及”
- 2025-01-05Easysearch 可搜索快照功能,看这篇就够了
- 2025-01-04BOT+EPC模式在基础设施项目中的应用与优势