Hive服务详解

news2024/10/6 0:28:54

Hive服务

HiveServer2、Hive Metastore 服务服务共同构成了 Hive 生态系统中的核心功能,分别负责管理元数据和提供数据查询服务,为用户提供了一个方便、高效的方式来访问和操作存储在 Hive 中的数据。


1. Hive 查询服务(HiveServer2):

在这里插入图片描述

  • Hive 查询服务是通过 JDBC 或 ODBC 接口提供 SQL 查询功能的服务,为用户提供远程访问Hive数据的功能,例如用户期望在个人电脑中访问远程服务中的Hive数据,就需要用到Hiveserver2。
  • 允许用户通过标准 SQL 查询语言来访问存储在 Hive 中的数据,并将查询结果返回给客户端。
  • HiveServer2 提供了多用户并发访问的能力,并支持身份验证、授权等安全特性
  • 用户可以通过各种客户端工具(如 Beeline、Python、Java 等)连接到 HiveServer2,执行查询操作

Hiveserver2用户说明

  • 在远程访问Hive数据时,客户端并未直接访问Hadoop集群,而是由Hivesever2代理访问。
  • 由于Hadoop集群中的数据具备访问权限控制,所以此时需考虑一个问题:那就是访问Hadoop集群的用户身份是谁?是Hiveserver2的启动用户?还是客户端的登录用户?
  • 答案是都有可能,具体是谁,由Hiveserver2的hive.server2.enable.doAs参数决定,该参数的含义是是否启用Hiveserver2用户模拟的功能。
  • 若启用,则Hiveserver2会模拟成客户端的登录用户去访问Hadoop集群的数据,不启用,则Hivesever2会直接使用启动用户访问Hadoop集群数据。模拟用户的功能,默认是开启的。

1.未开启用户模拟

在这里插入图片描述

在生产环境中未开启用户模拟功能可能会造成以下影响

  1. 权限混淆:
  • 如果未开启用户模拟功能,所有的查询和操作都将以 HiveServer2 进程的身份进行
  • 这样一来,不同用户之间的权限将会混淆,所有用户都将共享相同的权限
  • 这可能导致数据访问和操作的混乱,无法实现对不同用户的精细化权限控制
  1. 安全风险:
  • 缺乏用户模拟功能会增加系统的安全风险。因为所有的查询和操作都以相同的身份进行,一旦有用户的凭据泄露或者被滥用,就可能导致对系统中敏感数据的非法访问和操作
  • 这可能会造成数据泄露、数据损坏或者其他安全问题。
  1. 难以追踪和审计:
  • 缺乏用户模拟功能会使得对用户操作的追踪和审计变得困难。
  • 由于所有的操作都以相同的身份进行,无法准确追踪到是哪个用户执行了具体的查询或操作,也无法对用户的行为进行有效的审计和监控。
  1. 管理复杂性增加:
  • 在没有用户模拟功能的情况下,管理员需要更加谨慎地管理用户的权限,以确保不会发生数据访问和操作的冲突。这增加了管理的复杂性,并可能需要花费更多的时间和精力来维护系统的安全和稳定性。

因此,在生产环境中,强烈建议开启用户模拟功能,以确保不同用户之间的权限隔离和系统安全性。


2.开启用户模拟

在这里插入图片描述

生产环境,推荐开启用户模拟功能,因为开启后才能保证各用户之间的权限隔离,增强了系统的安全性和可管理性。

  1. 权限隔离:
  • 用户模拟功能允许不同用户以其自己的身份进行查询和操作,从而实现了权限的精细化管理和隔离。每个用户只能访问其被授权的数据和执行被授权的操作,有效保护了数据的安全性和完整性。
  1. 安全性增强:
  • 通过用户模拟功能,系统可以对不同用户进行身份验证,并根据其角色和权限进行访问控制。这样可以有效防止未经授权的用户访问敏感数据,降低数据泄露和滥用的风险,提高系统的安全性。
  1. 审计和追踪:
  • 用户模拟功能使得对用户操作的审计和追踪变得更加容易。每个查询和操作都可以被追踪到相应的用户身份,管理员可以准确地了解到是哪个用户执行了什么样的操作,从而更好地监控系统的使用情况和安全状态
  1. 管理灵活性:
  • 用户模拟功能提供了灵活的角色和权限管理机制,管理员可以根据实际需求为不同用户分配适当的角色和权限。这样可以根据实际情况灵活调整用户的权限,满足不同用户的需求,提高系统的管理灵活性和可维护性。

2. Hive Metastore 服务:

  • Hive的metastore服务的作用是为Hive CLI或者Hiveserver2提供元数据访问接口。
  • Hive Metastore 是负责管理 Hive 元数据的服务。
  • 它存储了关于 Hive 数据库、表、分区、列等元数据信息,包括表的结构、存储位置等。
  • Hive Metastore 通常使用关系型数据库(如 MySQL、Derby 等)来存储元数据信息。
  • 这个服务的作用是提供对元数据的持久化存储和管理,以便其他 Hive 组件可以通过它来获取元数据信息。

metastore运行模式

在 Apache Hive 中,Metastore 有两种运行模式——嵌入式模式和独立服务模式。

1. 嵌入式模式(Embedded Mode):

在这里插入图片描述

  • 在嵌入式模式下,Metastore 服务与 HiveServer2 进程运行在同一台机器上,它们共享相同的 JVM 进程

  • 这种模式下,Metastore 直接作为 HiveServer2 的一部分运行,没有单独的 Metastore 服务进程

  • 嵌入式模式下,每个Hive CLI都需要直接连接元数据库,当Hive CLI较多时,数据库压力会比较大。

  • 每个客户端都需要用户元数据库的读写权限,元数据库的安全得不到很好的保证

  • 这种模式通常用于小规模的数据处理任务或者单机环境下的开发和测试

2. 独立服务模式(Standalone Mode):

在这里插入图片描述

  • 在独立服务模式下,Metastore 作为一个独立的服务运行在专用的服务器上,与 HiveServer2 进程分开。
  • HiveServer2 进程通过网络与 Metastore 服务通信,Metastore 负责管理元数据,包括表、分区、列等信息。
  • 这种模式通常用于生产环境,因为它提供了更好的可扩展性和灵活性,可以通过多台服务器构建高可用的 Metastore 集群,以应对大规模数据处理任务的需求。

选择适合的运行模式取决于实际的使用场景和需求。对于小规模或者开发测试环境,嵌入式模式可能更加方便简单;而对于生产环境或者大规模数据处理任务,独立服务模式则更为适合。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1619320.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

恶补《操作系统》2_1——王道学习笔记

2操作系统-进程 2.1_1 进程的定义、组成、组织方式、特征 组成:PCB(进程存在唯一的标志),程序段,数据段 组织方式:链接方式,指针指向不同的队列;索引方式,索引表 特征…

【深度学习】yolo-World,数据标注,zeroshot,目标检测

仓库:https://github.com/AILab-CVC/YOLO-World 下载权重: 仓库下载和环境设置 下载仓库:使用以下命令从 GitHub 上克隆仓库: git clone --recursive https://github.com/AILab-CVC/YOLO-World.git创建并激活环境&#xff1a…

VMmark 4 - 虚拟化平台基准测试

VMmark 4 - 虚拟化平台基准测试 VMmark is a free tool used to measure the performance and scalability of virtualization platforms. 请访问原文链接:VMmark 4 - 虚拟化平台基准测试,查看最新版。原创作品,转载请保留出处。 作者主页…

GPT与GAN结合生成图像——VQGAN原理解析

1、前言 这篇文章,我们讲VQ_GAN,这是一个将特征向量离散化的模型,其效果相当不错,搭配Transformer(GPT)或者CLIP使用,达到的效果在当时可谓是令人拍案叫绝! 原论文:Tam…

栈和队列-介绍与实现(超级!!!详解-C语言)

目录 栈 栈的介绍 栈的概念 栈的结构 栈的实现 初始化栈 StackInit 销毁栈 StackDestroy 入栈 StackPush 出栈 StackPop 获取栈顶元素 StackTop 检查栈是否为空 StackEmpty 获取栈中有效元素个数 StackSize 队列 队列的介绍 队列的概念 队列的结构 队列的应用 队列的实现 …

LabVIEW与Modbus协议的多点温度监控系统

LabVIEW与Modbus协议的多点温度监控系统 随着工业自动化和智能化水平的不断提升,对于现场监控技术的需求日益增长。开发了一种基于LabVIEW与Modbus协议的多点温度监控系统,实现高效、准确的温度数据采集、处理和显示,以及数据存储功能&#…

【IR 论文】Google 对通过 prompt LLM 做 Query Expansion 的工作

论文:Query Expansion by Prompting Large Language Models ⭐⭐⭐ Google Research, arxiv:2305.03653 论文速读 之前我在论文笔记 Query2doc 中介绍了信息检索(IR)以及 Query Expansion 的相关背景知识。 本篇文章是 Google 发表的关于对…

Maven:配置与使用指南1

https://mvnrepository.com Maven 1.maven简介 不同模块的jar包以及同时设计的功能的微小变化版本; 真实的开发环境:我们将我们的源代码在服务器上重新编译重新打包,工程升级维护过程繁琐 1.Maven是一个项目管理工具,将项目开…

SpringBoot xxl-job 任务调度

首先官网下载xxl-job的源代码,然后切换到jdk8,等Maven下载依赖 执行mysql的脚本,修改连接配置,启动admin站点 默认地址 http://localhost:8080/xxl-job-admin/ 先新增一个任务执行器,指向未来任务代码的站点 然后在…

数学建模完整版

模型与适用题型 微分方程传染病预测模型 神经网络 层次分析法 粒子群算法 matlab 优劣解距离法

计算机组成原理—数据的表示和运算

二进制:2进1 八进制里的1位对应二进制里的三位 重点:转换为10进制

git常见命令(成长版)

ps:所谓成长版就是后续可能还会添加命令: 1.删除本地分支: git branch -d 分支名 2.拉取代码后默认master分支,切换到线上其他分支: (1)查看线上所有分支: git branch -a &#…

比特币之路:技术突破、创新思维与领军人物

比特币的兴起是一段充满技术突破、创新思维和领军人物的传奇之路。在这篇文章中,我们将探讨比特币发展的历程,以及那些在这一过程中发挥重要作用的关键人物。 技术突破与前奏 比特币的诞生并非凭空而来,而是建立在先前的技术储备之上。在密码…

贪心算法-活动安排问题和背包问题

实验6贪心算法-活动安排问题和背包问题 实验目的: 理解贪心算法的基本思想运用贪心算法解决实际问题 实验内容: 采用贪心方法编程实现以下问题的算法 1.如何安排下列活动使得使用的活动场所最少,并给出具体的安排方法。 活动 a b c …

全新Storm Core API管理系统源码 免授权版

全新Storm Core API管理系统源码 免授权版 本系统为API系统,实现了api集成等基础功能,以后可能会更新key调用api,或者实现付费功能,敬请期待,前端模板均无加密,用户可自行二开,具体请看图 测试环境:PHP7.2+MySQL5.6 访问:http://你的域名/install 进行安装 伪静态…

AIGC实战——基于Transformer实现音乐生成

AIGC实战——基于Transformer实现音乐生成 0. 前言1. 音乐生成的挑战2. MuseNet3. 音乐数据3.1 巴赫大提琴组曲数据集3.2 解析 MIDI 文件3.3 分词3.4 创建训练数据集 4. MuseNet 模型4.1 正弦位置编码4.2 多输入/输出 5. 音乐生成 Transformer 的分析6. 多声部音乐分词6.1 网格…

含匹配扰动的多智能体领航跟随一致性Matlab仿真

文章目录 [TOC](文章目录) 前言一、问题描述二、基于LQR的观测器和控制器设计1.观测器设计2.控制器设计 三、数值仿真四、参考文献总结 前言 ​本文探讨了带有匹配扰动的多智能体领航跟随一致性控制方法,并提供了相应的Matlab仿真代码。 具体的设计步骤如下&#…

Algorius Net Viewer 2024.2.1 (Windows) - 网络可视化、管理、监控和清点

Algorius Net Viewer 2024.2.1 (Windows) - 网络可视化、管理、监控和清点 Comprehensive software product for visualizing, administering, monitoring, and inventorying computers network of any level 请访问原文链接:Algorius Net Viewer 2024.2.1 (Windo…

【动态规划】C++ 子序列问题(递增子序列、数对链、定差子序列、斐波那契子序列...)

文章目录 1. 前言2. 例题最长递增子序列 3. 算法题3.1_摆动序列3.2_最长递增子序列的个数3.3_最长数对链[3.4_ 最长定差子序列](https://leetcode.cn/problems/longest-arithmetic-subsequence-of-given-difference/description/)3.5_最长的斐波那契子序列的长度3.6_最长等差数…

剪画APP动漫AI工具|短剧轻松变动漫,开辟出海新方向

近期,剪画全新升级“AI动漫”功能,让创作者们打开全新的视频创作方式。 这个功能把我们的短剧作品快速转化为动漫风格,非常精准和细腻 在剪画将AI动漫功能升级后,越来越多的使用者将短剧变身成动漫效果发布到平台后,…