hive集群部署 傷城~ 2021-06-24 14:37 469阅读 0赞 Hive是基于Hadoop构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据。其在Hadoop的架构体系中承担了一个SQL解析的过程,它提供了对外的入口来获取用户的指令然后对指令进行分析,解析出一个MapReduce程序组成可执行计划,并按照该计划生成对应的MapReduce任务提交给Hadoop集群处理,获取最终的结果。元数据——如表模式——存储在名为metastore的数据库中。 hive的安装建立在hadoop集群之上,它可以安装在hadoop集群的任一个节点上(master或slave)。当然,也可以安装在集群之外,但需要能访问hadoop集群。 在实际部署中,一般用远程mysql存储metastore信息(mysql采用ha),然后在hadoop集群的一个节点上启动hive的metastore服务(例如master上),然后使用客户端访问hive。 1、hive服务端: 1) 配置: \[hadoop@hadoop-master conf\]$ vi hive-site.xml <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://hadoop-master:3306/hive?createDatabaseIfNotExist=true</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>hive<value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>hive</value> </property> </configuration> 2)然后启动metastore服务:hive --service metastore &,发现多了一个runJar进程。 2、服务端访问: 在hadoop-master上直接通过命令访问hive: \[hadoop@hadoop-master ~\]$ hive Logging initialized using configuration in jar:file:/home/hadoop/apache-hive-1.2.1-bin/lib/hive-common-1.2.1.jar!/hive-log4j.properties hive> show databases; OK default src Time taken: 1.332 seconds, Fetched: 2 row(s) 3、客户端访问:(需要有hadoop环境) 1)配置好hadoop环境; 2)配置hive环境, 修改hive配置文件: [hadoop@hadoop-slave conf]$ vi hive-site.xml <configuration> <property> <name>hive.metastore.uris</name> <value>thrift://hadoop-master:9083</value> </property> </configuration> 3)在hadoop-slave上通过hive命令访问hive。
还没有评论,来说两句吧...