Atlas 2.1.0 实践(3)—— Atlas集成HIve
Atlas集成Hive
在安装好Atlas以后,如果想要使用起来,还要让Atlas与其他组件建立联系。
其中最常用的就是Hive。
通过Atlas的架构,只要配置好Hive Hook ,那么每次Hive做任何操作就会写入Kafka从而被atlas接收。
并在Atlas中已图的形式展示出来。
Hive Model
都会记录Hive哪些操作信息呢?Altas对Hive Model进行了定义。
包含以下内容:
1、实体类型:
hive_db
类型: Asset
属性:qualifiedName, name, description, owner, clusterName, location, parameters, ownerName
hive_table
类型:DataSet
属性:qualifiedName, name, description, owner, db, createTime, lastAccessTime, comment, retention, sd, partitionKeys, columns, aliases, parameters, viewOriginalText, viewExpandedText, tableType, temporary
hive_column
类型:DataSet
属性:qualifiedName, name, description, owner, type, comment, table
hive_storagedesc
类型:Referenceable
属性: qualifiedName, table, location, inputFormat, outputFormat, compressed, numBuckets, serdeInfo, bucketCols, sortCols, parameters, storedAsSubDirectories
hive_process
类型:Process
属性:qualifiedName, name, description, owner, inputs, outputs, startTime, endTime, userName, operationType, queryText, queryPlan, queryId, clusterName
hive_column_lineage
类型:Process
属性:qualifiedName, name, description, owner, inputs, outputs, query, depenendencyType, expression
2、枚举类型:
hive_principal_type 值:USER, ROLE, GROUP
3、构造类型
hive_order 属性: col, order
hive_serde 属性: name, serializationLib, parameters
HIve实体的结构:
hive_db.qualifiedName: <dbName>@<clusterName>
hive_table.qualifiedName: <dbName>.<tableName>@<clusterName>
hive_column.qualifiedName: <dbName>.<tableName>.<columnName>@<clusterName>
hive_process.queryString: trimmed query string in lower case
配置Hive hook
hive hook会监听hive的 create/update/delete 操作,下面是配置步骤:
1、修改hive-env.sh(指定包地址)
export HIVE_AUX_JARS_PATH=/opt/apps/apache-atlas-2.1.0/hook/hive
2、修改hive-site.xml(配置完需要重启hive)
<property>
<name>hive.exec.post.hooks</name>
<value>org.apache.atlas.hive.hook.HiveHook</value>
</property>
1234
注意,这里其实是执行后的监控,可以有执行前,执行中的监控。
3、同步配置
拷贝atlas配置文件atlas-application.properties到hive配置目录
添加配置:
atlas.hook.hive.synchronous=false
atlas.hook.hive.numRetries=3
atlas.hook.hive.queueSize=10000
atlas.cluster.name=primary
atlas.rest.address=http://doit33:21000
将Hive元数据导入Atlas
bin/import-hive.sh
Using Hive configuration directory [/opt/module/hive/conf]
Log file for import is /opt/module/atlas/logs/import-hive.log
log4j:WARN No such property [maxFileSize] in org.apache.log4j.PatternLayout.
log4j:WARN No such property [maxBackupIndex] in org.apache.log4j.PatternLayout.
输入用户名:admin;输入密码:admin
Enter username for atlas :- admin
Enter password for atlas :-
Hive Meta Data import was successful!!!
踩坑全记录
一、找不到类 org.apache.atlas.hive.hook.hivehook
hive第三方jar包没加进去
小技巧 使用hive-shell 看一下jar包加进去没有 set这将打印由用户或配置单元覆盖的配置变量列表。
以加入elsaticsearch-hadoop-2.1.2.jar为例,讲述在Hive中加入第三方jar的几种方式。
1,在hive shell中加入
hive> add jar /home/hadoop/elasticsearch-hadoop-hive-2.1.2.jar;
连接方式 | 是否有效 |
---|---|
Hive Shell | 不需要重启Hive服务就有效 |
Hive Server | 无效 |
2,Jar放入${HIVE_HOME}/auxlib目录
在${HIVE_HOME}中创建文件夹auxlib,然后将自定义jar文件放入该文件夹中。
此方法添加不需要重启Hive。而且比较便捷。
连接方式 | 是否有效 |
---|---|
Hive Shell | 不需要重启Hive服务就有效 |
Hive Server | 重启Hive服务才生效 |
3,HIVE.AUX.JARS.PATH和hive.aux.jars.path
hive-env.sh中的HIVE.AUX.JARS.PATH和hive-site.xml的hive.aux.jars.path配置对服务器无效,仅对当前hive shell有效,不同的hive shell相互不影响,每个hive shell都需要配置,可以配置成文件夹形式。
HIVE.AUX.JARS.PATH和hive.aux.jars.path仅支持本地文件。可配置成文件,也可配置为文件夹。
连接方式 | 是否有效 |
---|---|
Hive Shell | 重启Hive服务才生效 |
Hive Server | 重启Hive服务才生效 |
二、HIVE报错 Failing because I am unlikely to write too
HIVE.AUX.JARS.PATH配置不对
hive-env.sh脚本中有一段
# Folder containing extra libraries required for hive compilation/execution can be controlled by:
if [ "${HIVE_AUX_JARS_PATH}" != "" ]; then
export HIVE_AUX_JARS_PATH=${HIVE_AUX_JARS_PATH}
elif [ -d "/usr/hdp/current/hive-webhcat/share/hcatalog" ]; then
export HIVE_AUX_JARS_PATH=/usr/hdp/current/hive-webhcat/share/hcatalog
fi
如果给HIVE_AUX_JARS_PATH设值,则/usr/hdp/current/hive-webhcat/share/hcatalog就会被忽略掉。
hive只能读取一个HIVE_AUX_JARS_PATH
在一个地方集中放置我们的共享jar包,然后在/usr/hdp/current/hive-webhcat/share/hcatalog下面建立一相应的软连接就可以
sudo -u hive ln -s /usr/lib/share-lib/elasticsearch-hadoop-2.1.0.Beta4.jar /usr/hdp/current/hive-webhcat/share/hcatalog/elasticsearch-hadoop-2.1.0.Beta4.jar
了解大数据实时计算 感受数据流动之美 欢迎关注 实时流式计算
Atlas 2.1.0 实践(3)—— Atlas集成HIve的更多相关文章
- Atlas 2.1.0 实践(2)—— 安装Atlas
在完成Atlas编译以后,就可以进行Atlas的安装了.Atlas的安装主要是安装Atlas的Server端,也就Atlas的管理页面,并确保Atlas与Kafka Hbase Solr等组件的集成. ...
- Atlas 2.1.0 实践(1)—— 编译Atlas
为什么要做数据治理? 业务繁多,数据繁多,业务数据不断迭代.人员流动,文档不全,逻辑不清楚,对于数据很难直观理解,后期很难维护. 在大数据研发中,原始数据就有着非常多的数据库,数据表. 而经过数据的聚 ...
- Atlas 2.1.0 实践(4)—— 权限控制
Atlas的权限控制非常的丰富,本文将进行其支持的各种权限控制的介绍. 在atlas-application.properties配置文件中,可以设置不同权限的开关. atlas.authentica ...
- spring-boot-2.0.3之quartz集成,最佳实践
前言 开心一刻 快过年了,大街上,爷爷在给孙子示范摔炮怎么放,嘴里还不停念叨:要像这样,用劲甩才能响.示范了一个,两个,三个... 孙子终于忍不住了,抱着爷爷的腿哭起来:爷呀,你给我剩个吧! 新的一年 ...
- Atlas+Keepalived系列二:管理Atlas
1:登录代理端口1234 [root@localhost bin]# mysql -uroot -p -P1234 -h127.0.0.1 proxy-address项配置,例如proxy-addre ...
- 《Vue2.0 实践揭秘》终于出版啦!
不知不觉间在园子开博都两年多了,最近一些园友问最近去哪了为何都没有新的文章了.最近确实发生了很多的事,一是忙工作二就是忙着写书.这还得多些园子的小编,自两年前发表的"架构师修炼"系 ...
- spring-boot-2.0.3之quartz集成,数据源问题,源码探究
前言 开心一刻 着火了,他报警说:119吗,我家发生火灾了. 119问:在哪里? 他说:在我家. 119问:具体点. 他说:在我家的厨房里. 119问:我说你现在的位置. 他说:我趴在桌子底下. 11 ...
- Kafka应用实践与生态集成
1.前言 Apache Kafka发展至今,已经是一个很成熟的消息队列组件了,也是大数据生态圈中不可或缺的一员.Apache Kafka社区非常的活跃,通过社区成员不断的贡献代码和迭代项目,使得Apa ...
- MyEclipse_6.0.1GA_E3.3.1集成版下载地址
因在开发中经常使用到myeclipse 对比相关版本,还是觉得6.0 –6.5 比较适合开发,其他的开发起来比较卡,下面是下载地址 MyEclipse_6.0.1GA_E3.3.1集成版下载地址: ...
随机推荐
- svn 忘记了用户名和密码
[SVN]如果windows用户忘记了svn的用户名和密码怎么办? 如果windows用户忘记了svn的用户名和密码怎么办? 1>你得进入默认地址 C:\Users\Administrato ...
- 在matlab 画箭头
[转载]在matlab 画箭头 原文地址:在matlab 画箭头作者:纯情小郎君 完整见链接http://www.mathworks.com/matlabcentral/fx_files/14056/ ...
- C#中搜索xsd文件中的某个数据源
步骤 1.打开***.xsd文件. 2.数据源之间的空白处,右键->属性. 3.在VS右侧会跳出一个属性窗口. 4.有个名称为DataSet的下拉框,所有的数据源名称都在其中,单击即可定位到所选 ...
- Autofac的基本使用---目录
目录 Autofac的基本使用---1.前言 Autofac的基本使用---2.普通类型 Autofac的基本使用---3.泛型类型 Autofac的基本使用---4.使用Config配置 Autof ...
- 如何使用阿里云云解析API实现动态域名解析,搭建私有服务器
原文地址:http://www.yxxrui.cn/article/116.shtml 未经许可请勿转载,如有疑问,请联系作者:yxxrui@163.com 公司的网络没有固定的公网IP地址,但是能够 ...
- 开发规范(二)如何写单元测试 By 阿里
- Error running 'DemoApplication': No jdk for module 'demo' 没有jdk
方案1----- 按理说jdk都是在File->Project Structure里面设置就可以了,而且现在检查了也是没有问题 后来几经折腾,通过直接搜索Settings里面的jdk,发现还有这 ...
- PP主数据-物料主数据
一.PP物料主数据:PP的物料主数据,是对应到系统的组织架构的,不同的组织层次,都有各自的主数据需要创建. (1),一般数据:一般数据是在集团层面的主数据,主要包括:物料编码.物料描述.辅助计量单位以 ...
- Kafka 消费组消费者分配策略
body { margin: 0 auto; font: 13px / 1 Helvetica, Arial, sans-serif; color: rgba(68, 68, 68, 1); padd ...
- POLARDB与其他关系型数据库对比
https://baijiahao.baidu.com/s?id=1610828839695075926&wfr=spider&for=pc 前言 在数据库的选择上,MySQL成为中国 ...