HIVE体系架构是怎么样的
这篇文章主要介绍了HIVE体系架构是怎么样的,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
我们一直强调成都做网站、网站设计、外贸营销网站建设对于企业的重要性,如果您也觉得重要,那么就需要我们慎重对待,选择一个安全靠谱的网站建设公司,企业网站我们建议是要么不做,要么就做好,让网站能真正成为企业发展过程中的有力推手。专业网站设计公司不一定是大公司,成都创新互联公司作为专业的网络公司选择我们就是放心。
*注:本文基于hive-0.8.1写的
架构图:
一、 service
1、 hive有三种service,分别是cli,hiveserver和hwi。
2、 cli是命令行工具,为默认服务,启动方式$HIVE_HOME/bin/hive 或 $HIVE_HOME/bin/hive --service cli。
3、 hiverserver通过thrift对外提供服务,默认端口10000,启动方式为$HIVE_HOME/bin/hive--service hiveserver。
4、 hwi为web接口,可以通过浏览器访问hive,默认端口9999,启动方式为$HIVE_HOME/bin/hive--service hwi。
5、 每个服务间互相独立,有各自的配置文件(配置metasotre/namenode/jobtracker等),如果metasotre的配置一样则物理上对应同一hive库。
6、 Driver用于解释、编译、优化、执行HQL,每个service的Driver相互独立。
7、 CLI为用户提供命令行接口,每个CLI独享配置,即在一个CLI里修改配置不影响别的CLI。
8、 多个JDBC可同时连到同一HiveServer上,所有会话共享一份配置。(注:从0.9.0起hiveserver配置已经从global降为session,即每个session的配置相互独立,见 [HIVE-2503])
9、 多个浏览器可同时连到同一HWI上,所有会话共享一份配置。
二、MetaStore
MetaStore位置通过参数javax.jdo.option.ConnectionURL来指定,可在会话中自由修改。相关的参数包括:
javax.jdo.option.ConnectionDriverName#数据库驱动
javax.jdo.option.ConnectionURL #数据库ip端口库名等
javax.jdo.option.ConnectionUserName #用户名
javax.jdo.option.ConnectionPassword #密码
通过修改这些参数可以在多个MetaStore间热切换,可用于HA。
三、NameNode与JobTracker
NameNode由fs.default.name指定,JobTracker由mapred.job.tracker指定,这两个参数都可以在会话中自由修改来指向不同的NameNode和JobTracker。
配合MetaStore可以有多种组合出现,例如在同一个MetaStore里让table1的数据存在HDFS1,用JobTracker1计算,table2的数据存在HDFS2,用JobTracker2计算,或者让两个表都在JobTracker3上计算。
四、注意事项
1、 NameNode和JobTracker最好指向同一个集群,否则计算的时候需要跨集群复制数据。
2、 在MetaStore存储的是表数据文件的绝对路径,当心其与NameNode/JobTracker不再同一个集群里导致夸集群复制。
3、 对hiveserver与hwi配置的修改会作用到同一service上的所有会话。 (注:从0.9.0起hiveserver配置已经从global降为session,即每个session的配置相互独立
感谢你能够认真阅读完这篇文章,希望小编分享的“HIVE体系架构是怎么样的”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!
当前文章:HIVE体系架构是怎么样的
网页URL:http://azwzsj.com/article/iipedh.html