一、Metastore服务
1、什么时候需要开启和使用Metastore服务呢?
首先,Hive获取Mysql元数据的两种方式:
1.1、Hive直连Mysql获取元数据
启动方式:只需直接启动Hive客户端,即可连接
1.2、Hive先连接Metastore服务,再通过Metastore服务连接Mysql获取元数据
2、怎么控制连接Mysql到底要不要启动Metastore服务?
在hive的配置文件中 hive-site.xml 查看有没有如下配置,如果有那么Hive连接Mysql的方式为第二种:
hive.metastore.uris
3、为什么有了第一种方式,还要用Metastore服务?
hive比较特殊,它既是自己的客户端,又是服务端。
Metastore的作用:客户端连接metastore服务,metastore再去连接Mysql数据库来存取元数据。有了Metastore服务,就可以有多个客户端同时连接,而且这些客户端不需要知道Mysql数据库的用户名和密码,只需要连接metastore服务即可。
二、Hiveserver2服务
如果我们想通过jdbc的方式来连接hive,那么我们就需要开启Hiveserver2服务了。
可参考: