技术标签: hive zookeeper hadoop 大数据
Apache Atlas为组织提供开放式元数据管理和治理功能,用以构建其数据资产目录,对这些资产进行分类和管理,并为数据分析师和数据治理团队,提供围绕这些数据资产的协作功能,它为Hadoop集群提供了包括 数据分类、集中策略引擎、数据血缘、安全和生命周期管理在内的元数据治理核心能力。
Atlas核心包含以下组件:
2.1.1 类型系统(Type System): 用户为他们想要管理的元数据对象定义模型。Type System称为“实体”的“类型”实例,表示受管理的实际元数据对象。
2.1.2 图形引擎(Graph Engine): Atlas在内部使用Graph模型持久保存它管理的元数据对象。
2.1.3 采集/导出(Ingest/Export):采集组件允许将元数据添加到Atlas。同样,“导出”组件将Atlas检测到的元数据更改公开为事件。
在Atlas中,用户可以使用以下的两种方式管理元数据:
2.2.1 API: Atlas的所有功能都通过REST API向最终用户暴露,该API允许创建,更新和删除类型和实体。它也是查询和发现Atlas管理的类型和实体的主要机制。
2.2.2 Messaging: 除了API之外,用户还可以选择使用基于Kafka的消息传递接口与Atlas集成。
使用HDFS进行存储,使用MapReduce进行计算。
目前,Atlas支持从以下来源提取和管理元数据:HBase 、Hive、Sqoop、Storm、Kafka
Atlas管理的元数据被各种应用程序使用,以满足许多治理需求。
2.4.1 Atlas Admin UI: 该组件是一个基于Web的应用程序,允许数据管理员和科学家发现和注释元数据。这里最重要的是搜索界面和类似SQL的查询语言,可用于查询Atlas管理的元数据类型和对象。
2.4.2 Ranger Tag Based Policies:权限管理模块
https://atlas.apache.org/
https://www.apache.org/dyn/closer.cgi/atlas/0.8.4/apache-atlas-0.8.4-sources.tar.gz
Solr下载: http://archive.apache.org/dist/lucene/solr/5.2.1/solr-5.2.1.tgz
(1)解压apache-maven-3.6.1-bin.tar.gz
[[email protected] soft]$ tar -zxvf apache-maven-3.6.1-bin.tar.gz -C /opt/
(2)修改apache-maven-3.6.1的名称为maven
[[email protected] opt]$ mv apache-maven-3.6.1/ maven
(3)配置Maven环境变量
[[email protected] opt]$ vim /etc/profile
#MAVEN_HOME
export MAVEN_HOME=/opt/module/maven
export PATH= P A T H : PATH: PATH:MAVEN_HOME/bin
(4)测试安装结果
[[email protected] opt]$ source /etc/profile
[[email protected] opt]$ mvn -v
(5)修改setting.xml,指定为阿里云
[[email protected] maven]$ cd conf
[[email protected] maven]$ vim settings.xml
提示:UI界面出现Cloud菜单栏时,solr的Cloud模式才算部署成功。
JDK8、稳定运行的Hadoop集群、Zookeeper集群、Hbase集群(要求1.x)Hive数据仓库、Kafka集群、Solr集群(5.2.1)
Atlas对Hadoop、Solr、Kafka、Hbase等的版本都有要求,hdp集群的版本都较低,故折中选择Atlas0.84
2.1 编译Atlas源码包
(1)解压apache-atlas-0.8.4-sources.tar.gz
[[email protected] soft]$ tar -zxvf apache-atlas-0.8.4-sources.tar.gz -C /opt/module/
(2)修改apache-atlas-sources-0.8.4的名称为atlas
[[email protected] opt]$ mv apache-atlas-sources-0.8.4/ atlas
(3)构建Atlas
[[email protected] atlas]$ export MAVEN_OPTS="-Xms2g -Xmx2g"
[[email protected] atlas]$ mvn clean -DskipTests install#一定要在 a t l a s h o m e 执 行 提 示 : 需 翻 墙 , 网 络 要 求 很 高 , 尝 试 多 次 未 果 , 下 载 网 上 开 源 编 译 好 的 b i n 包 2.2 安 装 A t l a s 编 译 包 ( 1 ) 解 压 a p a c h e − a t l a s − 0.8.4 − b i n . t a r . g z [ r o o t @ b i g d a t a 3 s o f t ] {atlas_home}执行 提示:需翻墙,网络要求很高,尝试多次未果,下载网上开源编译好的bin包 2.2 安装Atlas 编译包 (1)解压apache-atlas-0.8.4-bin.tar.gz [[email protected] soft] atlashome执行提示:需翻墙,网络要求很高,尝试多次未果,下载网上开源编译好的bin包2.2安装Atlas编译包(1)解压apache−atlas−0.8.4−bin.tar.gz[root@bigdata3soft] tar -zxvf apache-atlas-0.8.4-bin.tar.gz -C /opt/
(2)修改apache-atlas-0.8.4的名称为atlas
[[email protected] opt]$ mv apache-atlas-0.8.4/ atlas
(1)进入/opt/atlas/conf/目录,修改配置文件
[[email protected] conf]$ vim atlas-application.properties
#修改atlas存储数据主机(hbase对应zk的主机名)
atlas.graph.storage.hostname=bigdata3.jms.com,bigdata2.jms.com,bigdata1.jms.com
(2)进入/opt/atlas/conf/hbase路径,添加Hbase集群的配置文件到 A t l a s H o m e [ r o o t @ b i g d a t a 3 h b a s e ] {Atlas_Home} [[email protected] hbase] AtlasHome[root@bigdata3hbase] ln -s /usr/hdp/2.6.5.0-292/hbase/conf/ /opt/atlas/conf/hbase/
(3)在/opt/atlas/conf/atlas-env.sh中添加HBASE_CONF_DIR
[[email protected] conf]$ vim atlas-env.sh
#添加HBase配置文件路径
export HBASE_CONF_DIR=/opt/atlas/conf/hbase/conf
(1)进入/opt/module/atlas/conf目录,修改配置文件
[[email protected] conf]$ vim atlas-application.properties
修改如下配置
atlas.graph.index.search.solr.zookeeper-url=bigdata3.jms.com:2181,bigdata2.jms.com:2181,bigdata1.jms.com:2181
(2)将Atlas自带的Solr文件夹拷贝到外部Solr集群的节点上。
[[email protected] conf]$ cp -r /opt/atlas/conf/solr /opt/solr/
(3)进入到/opt/module/solr路径,修改拷贝过来的配置文件名称为atlas_conf
[[email protected] solr]$ mv solr atlas_conf
(4)在Cloud模式下,启动Solr(需要提前启动Zookeeper集群),并创建collection
[[email protected] solr]$ bin/solr create -c vertex_index -d /opt/solr/atlas_conf -shards 3 -replicationFactor 2
[[email protected] solr]$ bin/solr create -c edge_index -d /opt/solr/atlas_conf -shards 3 -replicationFactor 2
[[email protected] solr]$ bin/solr create -c fulltext_index -d /opt/solr/atlas_conf -shards 3 -replicationFactor 2
-shards 3:表示该集合分片数为3
-replicationFactor 2:表示每个分片数都有2个备份
vertex_index、edge_index、fulltext_index:表示集合名称
注意:如果需要删除vertex_index、edge_index、fulltext_index等collection可以执行如下命令。
[[email protected] solr]$ bin/solr delete -c ${collection_name}
(5)验证创建collection成功
登录solr web控制台:http://bigdata3.jms.com:8983/solr/#/~cloud 看到如下图显示:
[[email protected] conf]$ vim atlas-application.properties
######### Hive Hook Configs #######
atlas.hook.hive.synchronous=false
atlas.hook.hive.numRetries=3
atlas.hook.hive.queueSize=10000
atlas.cluster.name=yl_bigdata
[[email protected] hive]$ zip -u /opt/atlas/hook/hive/atlas-plugin-classloader-0.8.4.jar /opt/atlas/conf/atlas-application.properties
[[email protected] hive]$ cp /opt/atlas/conf/atlas-application.properties /usr/hdp/2.6.5.0-292/hive/conf/
hive.exec.post.hooks: org.apache.atlas.hive.hook.HiveHook (提示:该属性已有一个变量,在后面添加即可)
[[email protected] conf]$ vim atlas-application.properties
######### Notification Configs #########
atlas.notification.embedded=false
atlas.kafka.zookeeper.connect=bigdata3.jms.com:2181,bigdata2.jms.com:2181,bigdata1.jms.com:2181
atlas.kafka.bootstrap.servers=bigdata5.jms.com:6667,bigdata6.jms.com:6667,bigdata4.jms.com:6667(提示:hdp集群kafka默认端口是6667)
atlas.kafka.zookeeper.session.timeout.ms=4000
atlas.kafka.zookeeper.connection.timeout.ms=2000
atlas.kafka.enable.auto.commit=true
atlas.notification.create.topics=true
atlas.notification.topics=ATLAS_HOOK,ATLAS_ENTITIES
[[email protected] kafka]$ bin/kafka-topics.sh --zookeeper bigdata3.jms.com:2181,bigdata2.jms.com:2181,bigdata1.jms.com:2181
–create --replication-factor 3 --partitions 3 --topic ATLAS_HOOK
[[email protected] kafka]$ bin/kafka-topics.sh --zookeeper bigdata3.jms.com:2181,bigdata2.jms.com:2181,bigdata1.jms.com:2181
–create --replication-factor 3 --partitions 3 --topic ATLAS_ENTITIES
atlas-application.properties 其他配置
######### Server port configuration #########
atlas.client.readTimeoutMSecs=60000
atlas.client.connectTimeoutMSecs=60000
######### Security Properties #########
SSL config
atlas.enableTLS=false
######### Server Properties #########
atlas.rest.address=http://bigdata3.jms.com: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=bigdata3.jms.com:2181,bigdata2.jms.com:2181,bigdata1.jms.com:2181
[[email protected] atlas]$ bin/atlas_start.py
提示:错误信息查看路径:/opt/module/atlas/logs/*.out和application.log
访问地址:http://bigdata3.jms.com:21000
注意:等待时间大概2分钟。
账户:admin
密码:admin
(1)在/opt/atlas/路径,将Hive元数据导入到Atlas
[[email protected] atlas]$ bin/import-hive.sh
输入用户名:admin;输入密码:admin
(2)导入不成功可参考/opt/atlas/logs/import-hive.log
(3)导入后hive需要执行insert (select)等操作,并且有数据改变才能显示表之间的血缘关系,否则在安装Atlas之前建的库表只有建表的血缘显示。
1.界面查看
1.1 访问http://jms.com:21000端口号,进行登录账号密码默认都为admin,登录成功页面如下:
1.2 查询Hive库
1.2.1 选择hive_db,Search
1.2.2 点击dwb库,查看库信息
1.2.3 点击Tables,查看表信息
1.2.4 进入任意表,Properties可看基本信息,Lineage可看表间的血缘关系,Tags可看标签,也可添加标签,Audits可看表修改更新详情,Schema可看字段详情
1.2如果不是solr的问题,查看/opt/module/atlas/logs/*.out和log日志,发现是Hbase的问题
1.2.1首先检查Hbase是否正常运行,然后检查Hbase是否有Atlas的信息表,可在Hbase的节点上执行hbase shell,然后list查看
1.2.2因Atlas和Hbase的节点不同,查看atlas-env.sh的HBASE_CONF_DIR指向目录下的文件是否跟Hbase与zk对应的节点相同,最好拷贝一份到Atlas相同节点上
2.1找不到TaskAttemptContext类
2.1.1缺少hadoop-mapreduce-client-core-2.7.3 jar包,去maven仓库下载对应hadoop版本的jar包放到/opt/atlas/hook/hive/atlas-hive-plugin-impl目录下
2.2导入表失败,读取时间超时(org.apache.atlas.hook.AtlasHookException: HiveMetaStoreBridge.registerTable() failed.)
2.2.1Kafka的问题,hdp的默认端口是6667,在atlas-application.properties修改,首先删除kafka的对应的Topic(ATLAS_HOOK,ATLAS_ENTITIES),修改后重启Atlas服务。
想要solr重建索引,删除collection后,重建不成功,报找不到索引错误
Could not find configName for collection vertex_index found:[]
3.1 Zookeeper内索引不存在, 在另一个zookeeper集群(测试)安装solr,atlas后确认zookeeper内新增的索引文件,删掉新增的索引文件,重装solr,新建collection。
Windows cmd命令行在使用pip install scrapy安装scrapy时,报错Command python setup.py egg_info failed with error code 1需要我们更新pip和setuptools ,分别运行下面命令,在安装就行了python -m pip install --upgrade --force pip pip insta...
https://basicmi.github.io/Deep-Learning-Processor-List/获取更多深度学习最新资讯快速通道:获取最新消息快速通道 - lqfarmer的博客 - 程序员秘密Nvidia公司GPU· Nvidia的最新版GPU可以使用其最新的Tensor核心架构,即16位TF或120 TFlops,这是
internationalization (国际化)简称 i18n,因为在i和n之间还有18个字符,localization(本地化 ),简称L10n。 一般说明一个地区的语言时,用 语言_地区的形式,如 zh_CN, zh_TW.android 对i18n和L10n提供了非常好的支持。android没有专门的API来提供国际化,而是通过对不同resource的命名来达到国际化,同时这种命名方法...
Java File和IO流(下)
近两天对Android漏洞检测的基础知识进行了初步了解,现总结如下:程序正确性证明对于程序的正确性证明,有公理证明、静态分析、动态分析、符号执行等方法。从公理角度证明程序的正确性就是想通过某种公理系统对程序进行描述,判断程序能否转移到正确状态或满足某种安全性质。而对于静态分析或动态分析方法则是从检测程序的执行路径角度对程序的正确性进行检验。静态分析方法由于执行方便,覆盖面广,可以广泛地检验...
osgconv使用指南 osgconv是一种用来读取3D数据库以及对它们实施一些简单的操作的实用应用程序,同时也被称作一种专用3D数据库工具。用osgconv把其他格式的文件转换为OSG所支持的格式 osgconv是一种非常有用的的工具来读取标准的3D格式,如Open
ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。ifconfig eth0表示第一块网卡,其中HWaddr表示网卡的物理地址,可以看到目前这个网卡的物理地址(MAC地址)是00:16:3E:00:1E:51。inet addr用来表示
在项目中,当访问其他人的接口较慢或者做耗时任务时,不想程序一直卡在耗时任务上,想程序能够并行执行,我们可以使用多线程来并行的处理任务,这里介绍下 SpringBoot 下的 @Async 注解,还有 ApplicationEventPublisher 可以了解下代码地址Github: https://github.com/dolyw/ProjectStudy/tree/master/SpringBoot/AsyncDemoGitee(码云): https://gitee.com/dolyw/Proj
我Angular项目的angular.json文件里有这么一行:“aot”: true,意思是使用Ivy编译, 即Angular 下一代编译和渲染管道的代号。 从 Angular 的版本 9 开始,这个新的编译器和运行时指令集就代替了老的编译器和运行时(即视图引擎 View Engine)成为了默认值。可以使用通过 View Engine 编译器创建的库来构建 Ivy 应用程序。此兼容性由称为 Angular 兼容性编译器( ngcc )的工具提供。CLI 命令在执行 Angular 构建时会根据需
文章目录一:环境准备二:flag1三:flag2四:flag3五:flag4六:flag5一:环境准备下载:点我下载之后完成安装,过程详情请参考,063 渗透测试实战,靶机 DC-1打开DC-2打开Kalinmap 扫描局域网主机nmap -sP 192.168.100.0/24 -oN nmap.sP确定主机之后,对主机进行端口扫描:nmap -A 192.168.100.8 -p 1-65535 -oN nmap.A发现开放了80和7744端口号。开放了80端口号,所以这时候
学习学生信息管理,对于数据库的建立,两种基础方法的总结。
textread基本语法是: [A,B,C,…] = textread(filename,format) [A,B,C,…] = textread(filename,format,N)其中filename就是文件名, format就是要读取的格式,A,B,C就是从文件中读取到的数据。必须严格遵守用法不可出现data=textread(filename,f