Atlas数据治理

基本概念

官网

Apache Atlas – Data Governance and Metadata framework for Hadoop 

文档:

Apache Atlas – Data Governance and Metadata framework for Hadoop

架构

Atlas数据治理_第1张图片

 

安装前提

安装包

链接:https://pan.baidu.com/s/1w4sCAiqE_tJtUUASNSCpSQ 
提取码:yyds 
--来自百度网盘超级会员V4的分享 

安装启动HadoopAtlas数据治理_第2张图片

 Atlas数据治理_第3张图片

 

安装启动mysql

安装启动Hive

Atlas数据治理_第4张图片

测试数据

create table test(id int);
insert into table  test values (90);

desc test; 注意这里要解决注释中文乱码问题 

Atlas数据治理_第5张图片

安装启动Zookeeper

Atlas数据治理_第6张图片

安装启动Kafka

Atlas数据治理_第7张图片

安装启动Hbase 

Atlas数据治理_第8张图片

安装启动Solr

解压安装包 

设置权限 

sudo chown -R bigdata:bigdata solr-7.7.3

 修改对应的配置文件

sudo vi solr.in.sh

修改对应的zk配置

ZK_HOST="master:2181,node1:2181,node2:2181"

分发刚才解压和配置包到集群其他节点

./xsync /home/bigdata/shell/solr/solr-7.7.3

启动

出于安全考虑,不推荐使用 root 用户启动 solr ,此处使用 solr 用户,在所有节点执行以
下命令启动 solr 集群
Atlas数据治理_第9张图片

其他机器也启动

./solr start

 访问8983端口Atlas数据治理_第10张图片

安装Atlas

tar -zxvf apache-atlas-2.1.0-server.tar.gz

解压以后的目录

Atlas数据治理_第11张图片

Atlas集成框架

Atlas 集成 hbase

作用是数据的存储

Atlas数据治理_第12张图片

atlas.graph.storage.hostname=master:2181,node1:2181,node2:2181

 添加Hbase配置文件的位置Atlas数据治理_第13张图片

export HBASE_CONF_DIR=/home/bigdata/hbase/hbase-2.4.9/conf

Atlas 集成 Solr

Atlas数据治理_第14张图片

atlas.graph.index.search.solr.zookeeper-url=master:2181,node1:2181,node2:2181
创建 solr collection
./solr create -c vertex_index -d /home/bigdata/atlas/atlas/conf/solr -shards 3 -replicationFactor 2
./solr create -c edge_index -d /home/bigdata/atlas/atlas/conf/solr -shards 3 -replicationFactor 2
./solr create -c fulltext_index -d /home/bigdata/atlas/atlas/conf/solr -shards 3 -replicationFactor 2

效果如下(作用就是记录元数据的关系)

Atlas数据治理_第15张图片

Atlas 集成 Kafka

导数据缓冲作用

Atlas数据治理_第16张图片

atlas.notification.embedded=false
atlas.kafka.data=/home/bigdata/kafka/kafka_2.11-2.4.1/data
atlas.kafka.zookeeper.connect=master:2181,node1:2181,node2:2181/kafka
atlas.kafka.bootstrap.servers=master:9092,master:9092,master:9092

 Atlas Server 配置

Atlas数据治理_第17张图片

atlas.rest.address=http://master:21000
# If enabled and set to true, this will run setup steps when the server starts
atlas.server.run.setup.on.start=false

#########  Entity Audit Configs  #########
atlas.audit.hbase.tablename=apache_atlas_entity_audit
atlas.audit.zookeeper.session.timeout.ms=1000
atlas.audit.hbase.zookeeper.quorum=master:2181,node1:2181,node2:2181
记录性能指标(选配),进入 atlas/conf/ 路径,修改当前目录下的 atlas-log4j.xml
去掉注解就行

Atlas数据治理_第18张图片 Atlas 集成 Hive

在文件最后添加支持hive的配置
######### Hive Hook Configs #######
atlas.hook.hive.synchronous=false
atlas.hook.hive.numRetries=3
atlas.hook.hive.queueSize=10000
atlas.cluster.name=primary

 修改hive的配置文件


 hive.exec.post.hooks
 org.apache.atlas.hive.hook.HiveHook

Atlas数据治理_第19张图片

修改完配置以后重启下hive

添加Hive的hook

 Atlas数据治理_第20张图片

 Atlas数据治理_第21张图片

拷贝解压的hive的hook到atlas下面

cp -r ./* /home/bigdata/atlas/atlas

 Atlas数据治理_第22张图片

配置hive的环境变量

Atlas 配置文件 /opt/module/atlas/conf/ atlas-application.properties
拷贝到 /opt/module/hive/conf 目录
 cp atlas-application.properties /home/bigdata/hive/hive-3.1.2/conf

Atlas数据治理_第23张图片

使用Atlas

Atlas数据治理_第24张图片

./atlas_start.py

下图表示启动成功

 后面访问还要等几分钟,到日志不在打印位置(我大概等了10多分钟)。

Atlas数据治理_第25张图片

登录

admin
admin

Atlas数据治理_第26张图片 

Hive数据初始导入

 下面输入我的是账号:admin 密码:adminAtlas数据治理_第27张图片

 简单的搜索Atlas数据治理_第28张图片

hive血缘关系测试 

Hive 元数据的增量同步,无需人为干预,只要 Hive 中的元数据发生变化(执行 DDL
句), Hive Hook 就会将元数据的变动通知 Atlas 。除此之外, Atlas 还会根据 DML 语句获取
数据之间的血缘关系。
CREATE TABLE dwd_order_info (
 `id` STRING COMMENT '订单号',
 `final_amount` DECIMAL(16,2) COMMENT '订单最终金额',
 `order_status` STRING COMMENT '订单状态',
 `user_id` STRING COMMENT '用户 id',
 `payment_way` STRING COMMENT '支付方式',
 `delivery_address` STRING COMMENT '送货地址',
 `out_trade_no` STRING COMMENT '支付流水号',
 `create_time` STRING COMMENT '创建时间',
 `operate_time` STRING COMMENT '操作时间',
 `expire_time` STRING COMMENT '过期时间',
 `tracking_no` STRING COMMENT '物流单编号',
 `province_id` STRING COMMENT '省份 ID',
 `activity_reduce_amount` DECIMAL(16,2) COMMENT '活动减免金额',
 `coupon_reduce_amount` DECIMAL(16,2) COMMENT '优惠券减免金额',
 `original_amount` DECIMAL(16,2) COMMENT '订单原价金额',
 `feight_fee` DECIMAL(16,2) COMMENT '运费',
 `feight_fee_reduce` DECIMAL(16,2) COMMENT '运费减免'
) COMMENT '订单表'
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
CREATE TABLE dim_base_province (
 `id` STRING COMMENT '编号',
 `name` STRING COMMENT '省份名称',
 `region_id` STRING COMMENT '地区 ID',
 `area_code` STRING COMMENT '地区编码',
 `iso_code` STRING COMMENT 'ISO-3166 编码,供可视化使用',
 `iso_3166_2` STRING COMMENT 'IOS-3166-2 编码,供可视化使用'
) COMMENT '省份表'
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
提前准备好的数据 order_info.txt base_province.txt 上传到两张 hive 表的
hdfs 路径下。
Atlas数据治理_第29张图片

 Atlas数据治理_第30张图片

查询数据是否成功导入

select * from dwd_order_info;
select * from dwd_order_info;

Atlas数据治理_第31张图片

CREATE TABLE `ads_order_by_province` (
 `dt` STRING COMMENT '统计日期',
 `province_id` STRING COMMENT '省份 id',
 `province_name` STRING COMMENT '省份名称',
 `area_code` STRING COMMENT '地区编码',
 `iso_code` STRING COMMENT '国际标准地区编码',
 `iso_code_3166_2` STRING COMMENT '国际标准地区编码',
 `order_count` BIGINT COMMENT '订单数',
 `order_amount` DECIMAL(16,2) COMMENT '订单金额'
) COMMENT '各省份订单统计'
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
insert into table ads_order_by_province
select
 '2021-08-30' dt,
 bp.id,
 bp.name,
 bp.area_code,
 bp.iso_code,
 bp.iso_3166_2,
 count(*) order_count,
 sum(oi.final_amount) order_amount
from dwd_order_info oi
left join dim_base_province bp
on oi.province_id=bp.id
group by bp.id,bp.name,bp.area_code,bp.iso_code,bp.iso_3166_2;

注意 

出现不可修复的异常的时候删除atlas保存在hbase上面的元数据信息,重新启动就行。

disable 'tablename'
drop  'tablename'

 

你可能感兴趣的:(数据治理,java,开发语言)