内嵌模式
将metastore服务和hive服务内嵌在一起, 无需单独启动metastore服务项,随着客户端的启动而启动,同时在内嵌模式下, 采用元数据库为derby数据库
- 好处: 安装简单, 解压即可用
- 弊端: 在不同路径下启动hive, 都会单独形成一个derby数据库, 导致元数据无法共享, 会出现脑裂问题
- 说明: 此种模式在实际生产中, 基本不会见到
本地模式
将metastore服务和hive的服务内嵌在一起, 无需单独启动metastore服务项,随着客户端的启动而启动,但是可以*选择元数据库, 一般会选择第三方mysql数据库作为元数据存储
- 好处: 部署相对简单, 而且避免脑裂问题
- 弊端: 每一次启动hive, 都会同时启动一个metastore的服务项, 导致数据库连接增多, 占用资源, 对mysql影响不好
- 说明: 此种模式一般在测试环境中使用
远程模式
将metastore服务和hive服务都独立出来, 形成两个单独独立的服务项, 分别为 metastore 和 hiveserver2服务, 这两个服务是可以单独部署启动 长期挂载在后台, 后续客户端就可以通过hive服务进行连接操作, 而且客户端可以在任意的节点上, 以及后续一些其他的软件需要依赖于hive, 主要依赖的也是metastore服务项
- 好处: 支持远程连接, 只需要启动一次即可 , 方便和其他软件进行集成
- 弊端: 安装较为繁琐一些
- 说明: 此种模式是后续以及生产环境中主要采用模式