Hive 部署

news2024/12/28 18:16:46

1 下载并安装

1.1 Hadoop安装

参考另一篇博客:Hadoop 部署

1.2 安装包下载

可通过下面网站下载:

  • 官网:https://dlcdn.apache.org/hive/。
  • 清华源:https://mirrors.tuna.tsinghua.edu.cn/apache/hive/。

1

比如下载apache-hive-4.0.1-bin.tar.gz,将其上传到服务器上。

1.3 安装

解压安装包:

tar -zxvf apache-hive-4.0.1-bin.tar.gz -C /opt/hive/

1.4 配置文件

在conf目录下需要存在hive-site.xml文件,可以创建或复制hive-default.xml.template

  • 创建
    touch conf/hive-site.xml
    
    并添加内容:
    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    
    <configuration>
        <!-- Hive默认在HDFS的工作目录 -->
        <property>
            <name>hive.metastore.warehouse.dir</name>
            <value>/user/hive/warehouse</value>
        </property>
    </configuration>
    
  • 复制hive-default.xml.template
    cp conf/hive-default.xml.template conf/hive-site.xml
    

2 元数据库

元数据可以存储在Derby(安装包中自带的)或MySQL中,推荐使用MySQL。

2.1 Derby

直接初始化就可以:

bin/schematool -dbType derby -initSchema

在Hive目录下看到生成metastore_db就是成功了。
2

2.2 MySQL

2.2.1 Mysql安装

如果安装了Mariadb,可以先将其卸载,以防止和MySql产生冲突。
可以使用在线安装:

sudo apt-get install mysql-server-8.0

关于MySQL部署与配置这里不做详细说明。

2.2.2 驱动

将驱动jar包复制到Hive根目录下的lib文件夹中。下载驱动jar包,有以下方式:

  • 官网:https://downloads.mysql.com/archives/c-j/。下载后解压缩,只要jar包即可。
    3

  • Maven仓库:https://mvnrepository.com/artifact/com.mysql/mysql-connector-j。
    4

2.2.3 配置

在conf文件夹下的hive-site.xml文件的<configuration>...</configuration>中添加以下内容:

<!-- jdbc连接的URL -->
<property>
	<name>javax.jdo.option.ConnectionURL</name>
	<value>jdbc:mysql://node1:3306/metastore?createDatabaseIfNotExist=true</value>
</property>
<!-- jdbc连接的Driver-->
<property>
	<name>javax.jdo.option.ConnectionDriverName</name>
	<value>com.mysql.jdbc.Driver</value>
</property>
<!-- jdbc连接的username-->
<property>
	<name>javax.jdo.option.ConnectionUserName</name>
	<value>cluster</value>
</property>
<!-- jdbc连接的password -->
<property>
	<name>javax.jdo.option.ConnectionPassword</name>
	<value>123456</value>
</property>
2.2.4 初始化
bin/schematool -dbType mysql -initSchema

3 HiveServer2 配置

HiveServer2是Apache Hive的服务器端组件,提供远程SQL查询和交互式数据分析的支持。它通过Thrift服务和JDBC/ODBC接口,允许用户从多种客户端工具访问Hive数据仓库。

3.1 Hadoop配置

HiveServer2提供用户模拟功能,使得它能够模拟客户端用户的身份去访问Hadoop集群。这一功能依赖于Hadoop的代理用户(proxy user)机制。在配置HiveServer2时,需要将其启动用户设置为Hadoop的代理用户,并在Hadoop的配置文件core-site.xml<configuration>...</configuration>中添加相应的代理用户配置:

<!-- 配置Hadoop代理用户cluster可以代理的主机 -->
<property>
	<name>hadoop.proxyuser.cluster.hosts</name>
	<value>*</value> <!-- * 表示所有主机 -->
</property>
<!-- 配置Hadoop代理用户cluster可以代理的主机 -->
<property>
	<name>hadoop.proxyuser.cluster.hosts</name>
	<value>*</value> <!-- * 表示所有主机 -->
</property>
<!-- 配置Hadoop代理用户cluster可以代理的用户 -->
<property>
	<name>hadoop.proxyuser.cluster.users</name>
	<value>*</value> <!-- * 表示所有用户 -->
</property>

当用户在客户端提交SQL语句时,HiveServer2会模拟该用户的身份去请求HDFS或者提交计算任务到Yarn上,然后将结果返回给客户端。这一功能确保了用户权限的隔离,使得每个用户只能访问自己有权限的数据,从而提高了数据的安全性。

3.2 Hive 配置

在conf文件夹下的hive-site.xml文件的<configuration>...</configuration>中添加以下内容:

<!-- 指定hiveserver2连接的host -->
<property>
	<name>hive.server2.thrift.bind.host</name>
	<value>node1</value>
</property>
<!-- 指定hiveserver2连接的端口号 -->
<property>
	<name>hive.server2.thrift.port</name>
	<value>10000</value>
</property>

3.3 启动

nohup bin/hive --service hiveserver2 >/dev/null 2>&1 &

4 测试

bin/beeline -n cluster -u jdbc:hive2://node1:10000

进入如下界面:
5

然后就可以使用SQL语句操作数据库了。

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

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

相关文章

Linux中QT应用IO状态设置失效问题

问题&#xff1a;在进入freeze休眠前需要设置特定IO关闭电源灯操作&#xff0c;唤醒后需要将特定IO恢复原来正常工作状态&#xff0c;此时出现偶然性&#xff08;概率很低&#xff09;的IO控制失效问题&#xff1b;【平台&#xff1a;君正X1600HN】 一、问题点分析 1、电路 …

empire靶机

打开靶机 我们先查看页面源代码&#xff0c;发现什么也没有 再去用nmap扫描 nmap -sV -p- 192.168.95.144 发现也没什么用 我们在用dirb扫一下 dirb http://192.168.95.144 我们发现了robots.txt并且响应码是200&#xff0c;去访问一下 又得到了一个目录&#xff0c;去访问…

三层交换原理及图示

大概 三层交换原理 需要提前掌握的&#xff08;VLAN基础知识&#xff09; 【Info-Finder 参考链接&#xff1a;什么是VLAN】 三层是IP层&#xff0c;即网络层。为了方便记忆的&#xff1a;“先有网络&#xff0c;才有传输”、“传输是为了验证有网络”、“IP不是Transfer”…

当AI遇见大数据:决策优化的下一个风口

引言 在信息化时代的浪潮中&#xff0c;数据已成为企业决策的重要资产。随着大数据技术的发展&#xff0c;企业积累了海量的用户行为数据、市场动态和内部运营信息&#xff0c;这些数据背后蕴藏着巨大的价值。然而&#xff0c;数据的价值并非天然显现&#xff0c;它需要通过有效…

sizeof和strlen区分,(好多例子)

sizeof算字节大小 带\0 strlen算字符串长度 \0之前

SmartAIChain荣获重要认可

2024年12月21日&#xff0c;洛杉矶尔湾市——在今年的圣诞艺术交流会上&#xff0c;黄荣先生的SmartAIChain项目获得了重要认可。此次活动汇聚了来自各地的艺术家以及社区代表&#xff0c;共同庆祝这一创新性艺术的时刻。 在活动中&#xff0c;核桃市议员伍立伦(Allen Wu)代表D…

【Compose multiplatform教程12】【组件】Box组件

查看全部组件文章浏览阅读493次&#xff0c;点赞17次&#xff0c;收藏11次。alignment。https://blog.csdn.net/b275518834/article/details/144751353 Box 功能说明&#xff1a;简单的布局组件&#xff0c;可容纳其他组件&#xff0c;并依据alignment属性精确指定内部组件的对…

RT-DETR学习笔记(3)

九、损失函数 整理所需参数 decoder的输出结果&#xff1a;6层decoderlayer的类别以及bbox预测 将500个query拆分成300&#xff08;300个query&#xff09;200(denoising query) 1. 最后一层的decoder的输出的300部分&#xff0c;单独存储到out中的"pred_logits"和“…

处理元素卡在视野边界,滚动到视野内

效果图如下&#xff1a; 本示例处理场景&#xff1a;点击底部的折叠面板&#xff0c;展开后移动端滚动条位置不变&#xff0c;导致展开内容在视图外。造成面板展开无内容的错觉。 处理核心API: IntersectionObserver 此API可绑定元素并监听元素是否在视野内。若在视野外​​​…

RAGFlow 基于深度文档理解构建的开源 RAG引擎 - 安装部署

RAGFlow 基于深度文档理解构建的开源 RAG引擎 - 安装部署 flyfish 1. 确保 vm.max_map_count ≥ 262144 这是指要调整Linux内核参数vm.max_map_count&#xff0c;以确保其值至少为262144。这个参数控制着进程可以映射的最大内存区域数量。对于某些应用程序&#xff08;如Ela…

鸿蒙项目云捐助第二十九讲云捐助项目云数据库商品的批量增加功能实现

鸿蒙项目云捐助第二十九讲云捐助项目云数据库商品的批量增加功能实现 关于鸿蒙云捐助项目&#xff0c;前面的内容已使用云函数&#xff0c;云数据库分别实现云捐助项目首页中的项分类导航&#xff0c;底部导航&#xff0c;轮播图功能&#xff0c;这里继续实现云数据库加载捐赠…

Confluent Cloud Kafka 可观测性最佳实践

Confluent Cloud 介绍 Confluent Cloud 是一个完全托管的 Apache Kafka 服务&#xff0c;提供高可用性和可扩展性&#xff0c;旨在简化数据流处理和实时数据集成。用户可以轻松创建和管理 Kafka 集群&#xff0c;而无需担心基础设施的维护和管理。Confluent Cloud 支持多种数据…

SpringCloudAlibaba升级手册-nacos问题记录

目录 一、前言 二、升级过程 1.问题 2.原因 3.出处 4.理论解决 5.测试环境问题 6.Spring Cloud Alibaba版本对比 7. Spring Cloud Alibaba适配组件版本对比 8.降低Spring Cloud版本 9.SpringCloud与SpringBoot兼容对比表 10.naocs-client版本对比 三、最终解决 一…

15、【OS】【Nuttx】OS裁剪,运行指定程序,周期打印当前任务

背景 接之前wiki【Nsh中运行第一个程序】https://blog.csdn.net/nobigdeal00/article/details/144728771 OS还是比较庞大&#xff0c;且上面搭载了Nsh&#xff08;Nuttx Shell&#xff09;&#xff0c;需要接入串口才能正常工作&#xff0c;一般调试的时候用&#xff0c;非调试…

C# 窗体应用程序嵌套web网页,基于谷歌浏览器内核(含源码)

有一个winform项目&#xff0c;需要借助一个web项目来显示&#xff0c;并且对web做一些操作,web页目是需要用谷歌内核&#xff0c;基于谷歌 Chromium项目的开源Web Browser控件来开发写了一个demo。 安装步骤 第一步&#xff1a;右键项目&#xff0c;点击 管理NuGet程序包 , 输…

通过远程控制软件实现企业高效协作

在这个信息技术迅猛发展的时代&#xff0c;远程办公已经成为一种趋势&#xff0c;而远程控制软件则是连接分散团队的重要工具。技术的革新不仅推动了远程控制软件的广泛应用&#xff0c;也为现代办公带来了高效的协作体验。本文将探讨远程控制软件的发展&#xff0c;并以RayLin…

赋能开发者 | 麒麟信安受邀参加2024开放原子开发者大会,以技术为引领,以人才创发展

12月20至21日&#xff0c;以“一切为了开发者”为主题的“2024开放原子开发者大会暨首届开源技术学术大会”在湖北武汉举办。本届大会由开放原子开源基金会、中国通信学会联合主办&#xff0c;旨在贯彻落实国家软件发展战略&#xff0c;加速培育壮大我国开源生态。工业和信息化…

每天40分玩转Django:Django国际化

Django国际化 一、今日学习内容概述 学习模块重要程度主要内容国际化基础⭐⭐⭐⭐⭐基本概念、配置设置字符串翻译⭐⭐⭐⭐⭐翻译标记、消息文件模板国际化⭐⭐⭐⭐模板标签、过滤器动态内容翻译⭐⭐⭐⭐模型字段、表单翻译 二、国际化基础配置 # settings.py# 启用国际化 …

Elasticsearch 国产化替代方案之一 Easysearch 的介绍与部署指南

一、前言 在国内数字化转型浪潮和 信创 大背景下&#xff0c;“替代进口”成为许多企业级应用所需要面对的重要课题&#xff0c;搜索领域也不例外。 Elasticsearch&#xff08;简称 ES&#xff09;作为一款业界领先的全文搜索和分析引擎&#xff0c;虽然功能强大&#xff0c;但…

Ubuntu 24.04.1 LTS 配置静态固定IP地址

查看网络配置信息 ip addr使用该命令查看网卡名字&#xff0c;一般是ens33或者ens32 修改配置文件 打开 /etc/netplan/下面的yaml配置文件 根据自己的需要配置 network:ethernets:ens33: # 配置的网卡的名称addresses: [192.168.23.140/24] # 配置的静态ip地址和掩码d…