Atlas Hook 导入 Hive 元数据

Atlas 部署之后就可以导入 Hive 元数据,这部分工作由 Atlas 组件 Hook 来完成。初次导入 Hive 元数据需要通过执行 shell 脚本来完成,然后,Atlas 就可以自动同步增量元数据信息了。下面我介绍一下如何完成这些工作。

初次导入 Hive 元数据

看了很多教程,按图索翼进行操作时,遇到了各种错误,还好,最后我成功了,成功的感觉真的很棒。

第一步:修改 hive-site.xml

首先,在 hive-site.xml 文件中添加如下配置:

复制代码
<property>
    <name>hive.exec.post.hooks</name>
    <value>org.apache.atlas.hive.hook.HiveHook</value>
</property>

hive-site.xml 文件路径为 $HIVE_HOME/conf

第二步:解压 apache-atlas-2.2.0-hive-hook.tar.gz

解压 apache-atlas-2.2.0-hive-hook.tar.gz,并复制到 Atlas 主目录

复制代码
cd /opt/module/apache-atlas-sources-2.2.0/distro/target
tar -zxvf apache-atlas-2.2.0-hive-hook.tar.gz
cp -r apache-atlas-hive-hook-2.2.0/* /opt/module/apache-atlas-2.2.0

第三步:修改 hive-env.sh

修改 hive-env.sh 文件,添加如下命令:

export HIVE_AUX_JARS_PATH=$ATLAS_HOME/hook/hive

修改之后需要重启 Hive。不过,我重启之后依然没有效果,没有找到原因,我直接将 $ATLAS_HOME/hook/hive 目录下文件全部移动至 $HIVE_HOME/lib/auxlib 目录下(需要先创建该目录)

复制代码
mkdir /opt/module/hive/lib/auxlib
cp -r /opt/module/apache-atlas-2.2.0/hook/hive/* /opt/module/hive/lib/auxlib

总之,如果你发现执行 $ATLAS_HOME/hook-bin/import-hive.sh 时报错找不到类,而该类所属的 jar 包在其他目录(比如 hadoop),你可以先尝试修改 hive-env.sh 文件的 HIVE_AUX_JARS_PATH 配置,多个路径以英文逗号分隔,如果还是不行,那么你可以直接将该 jar 包复制到 $HIVE_HOME/lib/auxlib 一份,如果连续发现 hadoo 相关 jar 包报错,可以将 $HADOOP_HOME/share/hadoop 目录下的 jar 包复制到 /opt/module/hive/lib/auxlib

第四步:搞定几个关键 jar 包

没有如下几个 jar 包,你大概率很遇到报错

jackson-module-jaxb-annotations-2.10.5.jar

jackson-jaxrs-base-2.10.5.jar

jackson-jaxrs-json-provider-2.10.5.jar

hadoop-hdfs-client-3.1.3.jar

前三个 jar 在 ATLAS_HOME/server/webapp/atlas/WEB-INF/lib/ 目录下可以找到,复制到 $HIVE_HOME/lib/auxlib 目录一份,hadoop-hdfs-client-3.1.3.jar 需要自己下载,上传至目录 $HIVE_HOME/lib/auxlib 即可。

到这里,准备工作就做完了,依次启动 hadoop、zookeeper、hbase、hive、atlas 之后,即可执行 import-hive.sh 脚本,尝试导入 Hive 元数据,如果还有报错,对症分析或者联系我。

自动同步增量元数据

Atlas Hook 可以实现自动同步增量元数据,只需要你启动 Kafka 集群即可。

Atlas 2.2.0 版本支持自动捕获如下几种 Hive 元数据变更操作:

  • create database
  • create table/view, create table as select
  • load, import, export
  • DMLs (insert)
  • alter database
  • alter table (skewed table information, stored as, protection is not supported)
  • alter view

如上就是今天分享的内容,希望能帮助到你。

相关推荐
Lalolander10 分钟前
设备工程项目如何高效管理项目进度与成本?
大数据·运维·设备工程项目管理·设备工程项目成本管理·工程项目进度管理
许彰午18 分钟前
零跑腿服务的三条核心流程
大数据
多年小白23 分钟前
英伟达VR200机柜PCB价值量同比+233%:AI硬件主线如何被引爆?
大数据·人工智能·科技·深度学习·ai
Daorigin_com27 分钟前
从“被动领罚”到“主动合规”:强监管时代下,道本科技用数字化为企业筑牢“合规生命线”
大数据·数据仓库·科技·流程图·软件构建·数据库开发·数据库架构
一个数据大开发1 小时前
大模型驱动下的数据中台架构演进:从服务化到智能化
大数据·数据仓库·vscode·pycharm
金融小师妹1 小时前
基于AI联储治理模型的政策重构分析:沃什试图重塑美联储,但现实复杂度远超预期
大数据·深度学习·逻辑回归·线性回归
Zldaisy3d1 小时前
为增材制造“驱动器”中国,注入规模化应用更强动力 | TCT亚洲展专访西门子全球增材制造副总裁
大数据·人工智能·制造
AllData公司负责人1 小时前
亲测丝滑,体验跃迁|AllData通过集成开源项目StreamPark,实时流任务调度更省心!
java·大数据·数据库·人工智能·算法·实时计算·实时开发平台
想ai抽1 小时前
StarRocks 数据模型深度调研笔记
大数据·olap·starrock
可涵不会debug1 小时前
工业大数据时序数据库选型方法论:核心指标与技术适配分析
大数据·数据库·时序数据库