配置单元服务、hiveserver2和元存储服务?

nimxete2  于 2021-05-31  发布在  Hadoop
关注(0)|答案(2)|浏览(310)

我在努力理解 hive 在架构方面,我指的是TomWhite关于hadoop的书。
关于Hive,我遇到了以下术语: Hive Services , hiveserver2 , metastore 在其他中。
参考书中的以下图表(hadoop:权威指南)。

Hive结构:

元存储配置:

显示“驱动程序”的配置单元体系结构:


我无法理解以下内容:
1) 什么是 Hive Services 在Hive架构图中?我们说的是一样的吗 hiveserver2 ?
2) 什么是 Driver 在Hive架构图中?
3) 什么是 MetaStore (我不是指元存储数据库)。它是运行的某个进程吗?如果是的话,这是 hiveserver2 ? 如图所示 MetaStore 可以是远程的,所以如果这是一个jvm进程,它属于哪个组件?
4) 上面写着 Hive service JVM , MetaStore JVM Server . 但是,这些组件安装在哪里?它们是“Hive”的“服务器”端的一部分吗?
5) 在“Hive架构”图中,它说“Hive服务器”?这是什么?这就是我们说的“Hive服务器1”、“Hive服务器2”吗。
有人能帮助理解吗?

dw1jzc5e

dw1jzc5e1#

我的理解是:
配置单元服务包括:hs2(有时可以调用旧服务器)、驱动程序、编译器、执行引擎。但这四个组件(hs2、驱动程序、编译器、执行引擎)都在hiverserver2进程中。所以在Hive中,有三个过程:
hs2(包括hs2或thrift服务器、编译器、执行引擎)
元存储
网络电话

jgwigjjp

jgwigjjp2#

Hive服务

HiveServer 2
Hive元存储
hcatalog+webhcat
直线和Hivecli
节俭客户
filesystem::hdfs和其他兼容的文件系统,如s3
执行引擎::mapreduce、tez、spark
配置单元web ui(在配置单元2.x中添加)。也许还有tez或者spark ui,但不是真的

司机

jdbc/odbc或thrift接口有驱动程序。
还有一些进程解释查询并将其编译为执行引擎代码。我个人称之为解释器或编译器,而不是驱动程序

元存储服务器

不是hiveserver2的一部分。它实际上是一个运行在rdbms之上的进程(是的,运行hive和hadoop时仍然需要这些)。
支持的远程元存储服务器=oracle、mysql、postgres
嵌入式元存储(不建议用于生产)=derby
查看配置单元wiki
元存储jvm
橙色框显示您可以将这些服务部署为与驱动程序(解释器)或远程服务器相同的jvm的一部分。wiki描述了这些设置。
我相信这是一个将hiveserver2查询Map到metastore查询的side car过程。例如,如何将hiveql转换为从mysql或postgres读取元数据的进程?
它可以在服务器端运行,是的,但出于容错和性能原因,不建议使用这种设置。
hiveserver1已弃用。请随意阅读,但不要使用它。

相关问题