数据仓库元数据管理

数据仓库元数据管理,第1张

数据仓库元数据管理

数据仓库元数据管理
    • 一、元数据简介
    • 二、Atlas简介
    • 三、安装配置
      • 1.安装依赖
      • 2.安装步骤
    • 四、Hive血缘关系导入


一、元数据简介

元数据(metaData)狭义的解释是用来描述数据的数据。广义的来看,除了业务
辑直接读写处理的那些业务数据,所有其它用来维持整个系统运转所需的信息/数据
都可以叫作元数据。如数据库中表的Schema信息,任务的血缘关系,用户和脚本/
任务的权限映射关系信息等。

管理元数据的目的,是为了让用户能够更高效的使用数据,也是为了让平台管理人员
能更加有效的做好数据的维护管理工作。

但通常这些元数据信息是散落在平台的各个系统,各种流程之中的,它们的管理也可
能或多或少可以通过各种子系统自身的工具,方案或流程逻辑来实现。

元数据管理平台很重要的一个功能就是信息的收集,至于收集哪些信息,取决于业务
的需求和需要解决的目标问题。

元数据管理平台还需要考虑如何以恰当的形式对这些元数据信息进行展示;进一步
的,如何将这些元数据信息通过服务的形式提供给周边上下游系统使用,真正帮助大
数据平台完成质量管理的闭环工作。

应该收集那些信息,没有绝对的标准,但是对大数据开发平台来说,常见的元数据信
息包括:

  • 表结构信息
  • 数据的空间存储,读写记录,权限归属和其它各类统计信息
  • 数据的血缘关系信息
  • 数据的业务属性信息

数据血缘关系。血缘信息或者叫做Lineage的血统信息是什么,简单的说就是数据之
间的上下游来源去向关系,数据从哪里来到哪里去。如果一个数据有问题,可以根据
血缘关系往上游排查,看看到底在哪个环节出了问题。此外也可以通过数据的血缘关
系,建立起生产这些数据的任务之间的依赖关系,进而辅助调度系统的工作调度,或
者用来判断一个失败或错误的任务可能对哪些下游数据造成影响等等。

分析数据的血缘关系看起来简单,但真的要做起来,并不容易,因为数据的来源多种
多样,加工数据的手段,所使用的计算框架可能也各不相同,此外也不是所有的系统
天生都具备获取相关信息的能力。而针对不同的系统,血缘关系具体能够分析到的粒
度可能也不一样,有些能做到表级别,有些甚至可以做到字段级别。

以Hive表为例,通过分析Hive脚本的执行计划,是可以做到相对精确的定位出字段
级别的数据血缘关系的。而如果是一个MapReduce任务生成的数据,从外部来看,
可能就只能通过分析MR任务输出的Log日志信息来粗略判断目录级别的读写关系,
从而间接推导数据的血缘依赖关系了。

数据的业务属性信息。业务属性信息都有哪些呢?如一张数据表的统计口径信息,这
张表干什么用的,各个字段的具体统计方式,业务描述,业务标签,脚本逻辑的历史
变迁记录,变迁原因等,此外还包括对应的数据表格是由谁负责开发的,具体数据的
业务部门归属等。数据的业务属性信息,首先是为业务服务的,它的采集和展示也就
需要尽可能的和业务环境相融合,只有这样才能真正发挥这部分元数据信息的作用。

很长一段时间内,市面都没有成熟的大数据元数据管理解决方案。直到2015年,
Hortonworks终于坐不住了,约了一众小伙伴公司倡议:咱们开始整个数据治理方
案吧。然后,包含数据分类、集中策略引擎、数据血缘、安全和生命周期管理功能的
Atlas应运而生。(类似的产品还有linkedin 在2016年新开源的项目 WhereHows )


二、Atlas简介

Atlas是Hadoop平台元数据框架;

Atlas是一组可扩展的核心基础治理服务,使企业能够有效,高效地满足Hadoop中的
合规性要求,并能与整个企业数据生态系统集成;

Apache Atlas为组织提供了开放的元数据管理和治理功能,以建立数据资产的目录,
对这些资产进行分类和治理,并为IT团队、数据分析团队提供围绕这些数据资产的协
作功能。

Atlas由元数据的收集,存储和查询展示三部分核心组件组成。此外,还会有一个管
理后台对整体元数据的采集流程以及元数据格式定义和服务的部署等各项内容进行配
置管理。
Atlas包括以下组件:

  • Core。Atlas功能核心组件,提供元数据的获取与导出(Ingets/Export)、类型系
    统(Type System)、元数据存储索引查询等核心功能
  • Integration。Atlas对外集成模块。外部组件的元数据通过该模块将元数据交给
    Atlas管理
  • metadata source。Atlas支持的元数据数据源,以插件形式提供。当前支持从以
    下来源提取和管理元数据:
    • Hive
    • Hbase
    • Sqoop
    • Kafka
    • Storm
  • Applications。Atlas的上层应用,可以用来查询由Atlas管理的元数据类型和对
  • Graph Engine(图计算引擎)。Altas使用图模型管理元数据对象。图数据库提
    供了极大的灵活性,并能有效处理元数据对象之间的关系。除了管理图对象之
    外,图计算引擎还为元数据对象创建适当的索引,以便进行高效的访问。在
    Atlas 1.0 之前采用Titan作为图存储引擎,从1.0开始采用 JanusGraph 作为图存
    储引擎。JanusGraph 底层又分为两块:
  • metadata Store。采用 Hbase 存储 Atlas 管理的元数据;
  • Index Store。采用Solr存储元数据的索引,便于高效搜索;

三、安装配置 1.安装依赖
  • Maven 3.6.3
  • Hbase 1.1.2(不需要安装,需要软件包)
  • Solr 5.5.1(不需要安装,需要软件包)
  • atlas 1.2.0(需要编译)
2.安装步骤

1、准备软件包
apache-atlas-1.2.0-sources.tar.gz
solr-5.5.1.tgz
hbase-1.1.2.tar.gz

2、解压缩源码,修改配置

tar zxvf apache-atlas-1.2.0-sources.tar.gz
cd apache-atlas-sources-1.2.0/
vi pom.xml

# 修改
645 3.10.8
652 2.9.2

3、将Hbase、Solr的包拷贝到对应的目录中
如果不拷贝这些包,就需要下载,下载 Hbase 和 Solr 时速度很慢。这里提前下载完
所需的这两个组件,拷贝到对应目录中。

cd /opt/lagou/software/apache-atlas-sources-1.2.0
# 创建目录
cd distro/
mkdir solr
mkdir hbase

# 拷贝软件包
cp /opt/lagou/software/solr-5.5.1.tgz ./solr/
cp /opt/lagou/software/hbase-1.1.2.tar.gz ./hbase/

4、maven设置阿里镜像

cd $MAVEN_HOME/conf

# 在配置文件中添加
vi settings.xml
# 加在 158 行后

	alimaven
	aliyun maven
	http://maven.aliyun.com/nexus/content/groups/public/
	central

5、Atlas编译

cd /opt/lagou/software/apache-atlas-sources-1.2.0
export MAVEN_OPTS="-Xms2g -Xmx2g"
mvn clean -DskipTests package -Pdist,embedded-hbase-solr

编译过程中大概要下载600M左右的jar,持续的时间比较长。

编译完的软件位置:/opt/lagou/software/apache-atlas-sources1.2.0/distro/target
编译完的软件:apache-atlas-1.2.0-bin.tar.gz

6、Atlas安装

cd /opt/lagou/software/apache-atlas-sources1.2.0/distro/target

# 解压缩
tar zxvf apache-atlas-1.2.0-bin.tar.gz
mv apache-atlas-1.2.0/ /opt/lagou/servers/atlas-1.2.0

# 修改 /etc/profile,设置环境变量 ATLAS_HOME

# 启动服务(第一次启动服务的时间比较长)
cd $ATLAS_HOME/bin
./atlas_start.py

# 检查后台进程 (1个atlas、2个Hbase、1个solr后台进程)
ps -ef | grep atlas

/opt/lagou/servers/atlas-1.2.0/server/webapp/atlas
hbase-daemon.sh
org.apache.hadoop.hbase.master.HMaster
/opt/lagou/servers/atlas-1.2.0/solr/server
# 停止服务
./atlas_stop.py

检查 solr 的状态:

cd /opt/lagou/servers/atlas-1.2.0/solr/bin
./solr status
Solr process 25038 running on port 9838
{
"solr_home":"/opt/lagou/servers/atlas1.2.0/solr/server/solr",
"version":"5.5.1 c08f17bca0d9cbf516874d13d221ab100e5b7d58 -
anshum - 2016-04-30 13:28:18",
"startTime":"2020-07-31T11:58:45.638Z",
"uptime":"0 days, 14 hours, 55 minutes, 11 seconds",
"memory":"54.8 MB (%11.2) of 490.7 MB",
"cloud":{
"ZooKeeper":"localhost:2181",
"liveNodes":"1",
"collections":"3"}}

检查 zk 状态:

echo stat|nc localhost 2181

Web服务:http://linux122:21000/login.jsp

用户名 / 口令:admin / admin
账号的信息存储在文件 conf/users-credentials.properties 中。其中 Password 通过如
下方式产生sha256sum 摘要信息:

echo -n "admin" | sha256sum

四、Hive血缘关系导入

1、配置HIVE_HOME环境变量;将 $ATLAS_HOME/conf/atlasapplication.properties 拷贝到 $HIVE_HOME/conf 目录下

ln -s $ATLAS_HOME/conf/atlas-application.properties
$HIVE_HOME/conf/atlas-application.properties

2、拷贝jar包

# $ATLAS_HOME/server/webapp/atlas/WEB-INF/lib/ 目录下的3个jar,
拷贝到 $ATLAS_HOME/hook/hive/atlas-hive-plugin-impl/ 目录下

jackson-jaxrs-base-2.9.9.jar

jackson-jaxrs-json-provider-2.9.9.jar

jackson-module-jaxb-annotations-2.9.9.jar

ln -s $ATLAS_HOME/server/webapp/atlas/WEB-INF/lib/jacksonjaxrs-base-2.9.9.jar $ATLAS_HOME/hook/hive/atlas-hive-pluginimpl/jackson-jaxrs-base-2.9.9.jar

ln -s $ATLAS_HOME/server/webapp/atlas/WEB-INF/lib/jacksonjaxrs-json-provider-2.9.9.jar $ATLAS_HOME/hook/hive/atlashive-plugin-impl/jackson-jaxrs-json-provider-2.9.9.jar

ln -s $ATLAS_HOME/server/webapp/atlas/WEB-INF/lib/jacksonmodule-jaxb-annotations-2.9.9.jar $ATLAS_HOME/hook/hive/atlashive-plugin-impl/jackson-module-jaxb-annotations-2.9.9.jar

3、修改Hive的配置

hive-site.xml增加 hook


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

$HIVE_HOME/conf/hive-env.sh中添加HIVE_AUX_JARS_PATH变量

export HIVE_AUX_JARS_PATH=/opt/lagou/servers/atlas1.2.0/hook/hive

4、批量导入hive数据
备注:Hive能正常启动;在执行的过程中需要用户名/口令:admin/admin
import-hive.sh

成功导出可以看见最后的提示信息:Hive meta Data imported successfully!!!
在浏览器中可以看见:Search 中的选项有变化

Hive hook 可捕获以下 *** 作:

  • create database
  • create table/view, create table as select
  • load, import, export
  • DMLs (insert)
  • alter database
  • alter table
  • alter view

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4967156.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-13
下一篇2022-11-13

发表评论

登录后才能评论

评论列表(0条)

    保存