部署好Atlas服务后,重点是对Atlas的使用,这里对Atlas管理Hive元数据做简单总结。
Hive元数据导入
全量导入
bash /usr/hdp/2.6.4.0-91/atlas/hook-bin/import-hive.sh
通过WebUI可以搜索到如下Hive数据库:
通过WebUI可以搜索到如下Hive表:
注意:dim_channel(维度表-渠道维)
,dim_date(维度表-日期维)
,dim_product(维度表-产品维)
,fact_sales(事实表-销售事实表)
数据来自于微软公开的Contoso数据。
实时同步
创建聚合视图agg_monthBrandSalesAmount
,统计每个月每种品牌的销售额。
create view agg_monthBrandSalesAmount
as
select brandname,calendarmonth,sum(SalesAmount) salesAmount from (
select fact_sales.DateKey,fact_sales.ProductKey,fact_sales.SalesAmount,dim_date.calendarmonth,dim_product.brandname from
(select * from fact_sales) as fact_sales
left join dim_date on fact_sales.DateKey=dim_date.datekey
left join dim_product on fact_sales.ProductKey=dim_product.productkey
) as aa group by brandname,calendarmonth;
WebUI可以实时搜索到如下Hive表agg_monthBrandSalesAmount
:
同理,增删改表结构等,均能实时同步到Atlas中。
Hive元数据搜索
基本搜索(Basic Search)
基本搜索可以根据表的类型Type、分类Tag、关键词Text搜索。
也可直接根据Tags搜索。
高级搜索
高级搜索可以根据表的类型Type、Atlas DSL Query语法搜索。
Hive元数据分类(打标签)
Atlas WebUI Tags添加自定义分类标签,这里添加了fact_table 事实表Tag
、dim_table 维度表Tag
、agg_table 聚合表Tag
。
然后给各Hive表添加对应Tags标签即可,添加完的结果的维度表Tag如下。
Hive元数据Lineage查看
Atlas WebUI 搜索到某个表后,可以看到这个表的Lineage,如上边创建的agg_monthbrandsalesamount表。
至此,Apache Atlas管理Hive元数据可以简单用起来了,Rest API、权限控制等,后续再探究。