使用DBeaver连接Hive数据仓库

Hive的数据库客户端界面工具DBeaver进行操作hive。

前提:
1.hadoop分布式或者伪分布已经安装好

2.hive已经安装好

3.hive元数据存放在MySQL中

4.DBeaver客户端工具

准备:
1.启动Hadoop:

sbin/start-dfs.sh
2.启动MySQL,本身就是开机自启动 

service mysql start
3.启动Hive Metastore服务 

hive --service metastore 或者 nohup hive --service metastore &   
4.启动hiveserver2服务

hive --service hiveserver2 或者 nohup hive --service hiveserver2 --hiveconf hive.server2.thrift.port 10001 &
DBeaver进行连接:
打开DBeaver工具,点击  数据库 -- 新建连接 -- 选择Apache Hive 后,出现一下界面配置连接信息:

点击 编辑驱动设置 ,将事先下载好的hadoop-common-3.0.0.jar 和hive-jdbc-3.0.0-standalone.jar添加进去,点击一下 找到类 。

说明:
 
hadoop-common-3.0.0.jar是从$HAOOP_HOME/share/hadoop/common/中下载的
 
hive-jdbc-3.0.0-standalone.jar是从/opt/app/hive/jdbc中下载的
 
实际使用的时候要注意对应版本进行下载jar包
然后点击 测试链接。

 这里我指定10001端口启动server2,同时hive2的启动是root启动的所以用户密码是root的

连接成功

客户端执行MapRedus报错(客户端执行查询select * 报错 执行select count(*)报如下错误)

HIVE报错:Error: Error while processing statement: FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask (state=08S01,code=2) 

 原因:从机上运行的Container试图使用过多的内存,而被NodeManager kill掉了。

解决:加内存

在hadoop的配置文件mapred-site.xml中设置map和reduce任务的内存配置如下:(value中实际配置的内存需要根据自己机器内存大小及应用情况进行修改)

<property>
  <name>mapreduce.map.memory.mb</name>
  <value>1536</value>
</property>
<property>
  <name>mapreduce.map.java.opts</name>
  <value>-Xmx1024M</value>
</property>
<property>
  <name>mapreduce.reduce.memory.mb</name>
  <value>3072</value>
</property>
<property>
  <name>mapreduce.reduce.java.opts</name>
  <value>-Xmx2560M</value>
</property>

关掉集群,分发配置,启动集群

再次运行,🆗

总结:没啥好总结的

简单验证一下:执行成功

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值