Hive内部自带了许多的服务,我们可以在运行时用--service选项来明确指定使用什么服务,如果你不知道Hive内部有多少服务,可以用下面的--service help来查看帮助,如下:
[wyp@master ~]$ hive --service help Usage ./hive <parameters> --service serviceName <service parameters> Service List: beeline cli help hiveserver2 hiveserver hwi \ jar lineage metastore metatool orcfiledump rcfilecat Parameters parsed: --auxpath : Auxillary jars --config : Hive configuration directory --service : Starts specific service/component. cli is default Parameters used: HADOOP_HOME or HADOOP_PREFIX : Hadoop install directory HIVE_OPT : Hive options For help on a particular service: ./hive --service serviceName --help Debug help: ./hive --debug --help
大家可以看到上面 的输出项Service List,里面显示出Hive支持的服务列表:beeline cli help hiveserver2 hiveserver hwi jar lineage metastore metatool orcfiledump rcfilecat,下面介绍最有用的一些服务。
(1)、cli:这个就是Command Line Interface的简写,是Hive的命令行界面,用的比较多。这是默认的服务,直接可以在命令行里面使用。
(2)、hiveserver:这个可以让Hive以提供Trift服务的服务器形式来运行,可以允许许多不同语言编写的客户端进行通信。使用需要启动HiveServer服务以和客户端联系,我们可以通过设置HIVE_PORT环境变量来设置服务器所监听的端口号,在默认的情况下,端口为10000。可以通过下面方式来启动hiveserver:
[wyp@master ~]$ bin/hive --service hiveserver -p 10002 Starting Hive Thrift Server
其中-p参数也是用来指定监听端口的。
(3)、hwi:其实就是hive web interface的缩写,它是Hive的Web接口,是hive cli的一个web替换方案。
(4)、jar:与Hadoop jar等价的Hive的接口,这是运行类路径中同时包含Hadoop和Hive类的Java应用程序的简便方式。
(5)、metastore:在默认情况下,metastore和Hive服务运行在同一个进程中(如下图介绍)。使用这个服务,可以让metastore作为一个单独的进程运行,我们可以通过METASTORE_PORT来指定监听的端口号。
原创文章版权归过往记忆大数据(过往记忆)所有,未经许可不得转载。
本文链接: 【Hive的几种内置服务】(https://www.iteblog.com/archives/957.html)
验证最后Remote metastore 模式图中不正确;
metastore server jvm 在client是不会启动的,而且启动多个hive client连接也不会有多个metastore server进程,理解错的话请交流 281366762