C/C++教程

【技术分享】 数据治理工具Apache Atlas初体验

本文主要是介绍【技术分享】 数据治理工具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初体验的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!