Hive-安装与配置(1)
🥇🥇【大数据学习记录篇】-持续更新中~🥇🥇
个人主页:beixi@
本文章收录于专栏(点击传送):【大数据学习】
💓💓持续更新中,感谢各位前辈朋友们支持学习~💓💓
文章目录
- 1.Hive环境介绍
- 2.搭建环境准备
- 3.建立Hive元数据库
- 4.安装配置Hive
1.Hive环境介绍
Hive在Hadoop生态系统中运行,依赖Hadoop分布式文件系统(HDFS)和YARN资源管理器。它由以下几个主要组件组成:
- 元数据存储:Hive使用关系型数据库(如MySQL、Derby等)来存储元数据,包括表的结构、分区信息、数据位置等。
- Hive服务:Hive提供Hive CLI(命令行界面)和HiveServer2两种服务方式。Hive
- CLI用于交互式查询和脚本执行,而HiveServer2允许通过JDBC或ODBC连接进行远程查询。
- 查询执行引擎:Hive将HiveQL查询语句转换为MapReduce作业或Tez任务,并通过Hadoop集群执行这些作业。此外,Hive还支持LLAP(低延迟分析查询协议)引擎,用于加速查询执行。
- 数据格式:Hive支持多种数据格式,包括文本、CSV、Parquet、ORC等。这些格式可以根据数据特性和查询需求进行选择。
2.搭建环境准备
本次用到的环境有:
1)Oracle Linux 7.4
2)Hadoop2.7.4
3)Hive2.1.1
4)Mysql5.5.57
5)Java1.8.0_144
3.建立Hive元数据库
1.进入MySQL命令窗口
mysql
2.建立Hive元数据需要的MySQL下的数据库“hive”,并赋予相应权限
create database hive;
grant all privileges on *.* to 'root'@'master' identified by 'root';
grant all privileges on *.* to 'root'@'%' identified by 'root';
flush privileges;
3.查看数据库“hive”的权限
SELECT host,user,authentication_string,Grant_priv,Super_priv FROM mysql.user;
4.退出MySQL命令窗口
quit;
4.安装配置Hive
1.解压Hive压缩包至/opt目录下。
tar xf experiment/file/apache-hive-2.1.1-bin.tar.gz -C /opt/
ll /opt/
2.解压后的Hive压缩包apache-hive-2.1.1-bin更名为hive。
mv /opt/apache-hive-2.1.1-bin /opt/hive
ll /opt/
3.拷贝Hive需要的mysql依赖包mysql-connector-java-5.1.42.jar 至hive/lib目录下。
cp ~/experiment/file/mysql-connector-java-5.1.42.jar /opt/hive/lib/
ll /opt/hive/lib/mysql-*
4.打开配置Hive环境变量的文件profile。
vim /etc/profile
5.敲键盘“i”键,使profile处于可插入状态,配置Hive环境变量参数。
export HIVE_HOME=/opt/hive
export HIVE_CONF_DIR=/opt/hive/conf
export PATH=$HIVE_HOME/bin:$PATH
6.按“ESC”键,敲“:wq!”命令,按回车保存并退出profile文件。
:wq!
7.使profile文件配置生效。
source /etc/profile
8.查看hive的环境变量是否生效。
echo $PATH
9.进入Hive配置文件的目录。
cd /opt/hive/conf/
ll
10.生成hive-site.xml文件。
cp /opt/hive/conf/hive-default.xml.template /opt/hive/conf/hive-site.xml
ll
11.打开配置hive-site.xml文件。
vim /opt/hive/conf/hive-site.xml
12.删除hive-site.xml文件中标签与之间的所有内容。根据实际情况而删
22gg
5327dd
13.删除hive-site.xml文件指定内容后的文件全部内容如下。
14.通过键盘敲入”i”,使更改后的hive-site.xml文件处于可编辑状态,即可在文件下方看到“INSERT”或“插入”的字样。
15.将需要配置的参数敲入或者去已经配置好的文件里将配置内容(即Code001的所有内容)全部复制到hive-site.xml文件中与标签之间,粘贴的所有内容如下:
<property><name>hive.metastore.warehouse.dir</name><value>/data/hive/warehouse</value>
</property>
<property><name>hive.metastore.local</name><value>true</value>
</property>
<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://master/hive?createDatabaseIfNotExist=true&useSSL=false</value>
</property>
<property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value>
</property>
<property><name>javax.jdo.option.ConnectionUserName</name><value>root</value>
</property>
<property><name>javax.jdo.option.ConnectionPassword</name><value>root</value>
</property>
<property><name>hive.metastore.schema.verification</name><value>false</value>
</property>
16.注意粘贴(点击文档的空白处,点击鼠标右键,即可看到“粘贴”或“Paste”选项,选中它完成粘贴)的位置位于标签与之间。
17.粘贴后的hive-site.xml文件如下所示,按ESC键,录入“:wq!”退出并保存文件。
:wq!
至此Hive的安装与配置就结束了,如果本篇文章对你有帮助记得点赞收藏+关注~
相关文章:

Hive-安装与配置(1)
🥇🥇【大数据学习记录篇】-持续更新中~🥇🥇 个人主页:beixi 本文章收录于专栏(点击传送):【大数据学习】 💓💓持续更新中,感谢各位前辈朋友们支持…...

链表模拟栈
定义节点 class Node {var num: Int _var next: Node _def this(num: Int) {thisthis.num num}override def toString: String s"num[${this.num}]" }定义方法 class LinkStack {private var head new Node(0)def getHead: Node head//判断是否为空def isEmp…...

MySQL基础篇:数据库概述和部署
SQL 概述 SQL,一般发音为sequel,SQL的全称Structured Query Language),SQL用来和数据库打交道,完成和数据库的通信,SQL是一套标准。但是每一个数据库都有自己的特性别的数据库没有,当使用这个数据库特性相关的功能,这…...

大数据面试题:MapReduce压缩方式
面试题来源: 《大数据面试题 V4.0》 大数据面试题V3.0,523道题,679页,46w字 可回答:1)Hadoop常见的压缩算法有哪些? 问过的一些公司:网易云音乐(2022.11),阿里(2020.…...

【ICer的脚本练习】“精通各种语言的hello world!“
系列的目录说明请见:ICer的脚本练习专栏介绍与全流程目录_尼德兰的喵的博客-CSDN博客 前言 这一节呢主要是检查一下Linux和win环境是不是能正常的支持咱们的脚本学习,所以来答应各种语言的hello world!,毕竟打印了就是学会了٩(๑❛ᴗ❛๑)۶…...

解决npm install报错: No module named gyp
今天运行一个以前vue项目,启动时报错如下: ERROR Failed to compile with 1 error上午10:19:33 error in ./src/App.vue?vue&typestyle&index0&langscss& Syntax Error: Error: Missing binding D:\javacode\Springboot-MiMall-RSA\V…...

Leetcode 面试题 17.01 不用加号的加法
设计一个函数把两个数字相加。不得使用 或者其他算术运算符。 示例: 输入: a 1, b 1 输出: 2 提示: a, b 均可能是负数或 0结果不会溢出 32 位整数 我的答案: 一、信息 1.设计一个函数把两个数相加 2.不得使用或者其他运算符 3.a,b均为负数或…...

一个 MySQL 数据库死锁的案例和解决方案
本文介绍了一个 MySQL 数据库死锁的案例和解决方案。 场景 生产环境出了一个偶现的数据库死锁问题,导致少部分业务处理失败。 分析特征之后,发现是多个线程并发执行同一个方法,更新关联的数据时可能会出现,把场景简化概括一下&…...

AMBEO 双声道空间音频现已迈进直播制作领域
图片来源:Unsplash,作者:Bence Balla-Schottner AMBEO 双声道空间音频现已迈进直播制作领域 为所有观众解锁更加身临其境的听觉体验 森海塞尔将功能强大的 AMBEO 双声道空间音频技术引入了广播电视直播应用领域,对所有体育赛事广…...

在VSCode上画UML的三个插件
2023年9月2日,周六晚上 因为写代理模式的博客时需要画UML,所以就在网上找了半天, 最后觉得VSCode上的这三个插件比较好用 目录 三个画UML的VSCode插件PlantUMLDraw.io IntegrationUMLet我个人推荐使用PlantUML 三个画UML的VSCode插件 Pla…...
Springboot - 1.什么是springboot
👀Spring的核心模块 Spring Framework是一个功能强大的开源框架,用于构建Java企业级应用程序。它提供了多个核心模块,每个模块都提供不同的功能,用于解决应用程序开发中的各种问题。以下是Spring Framework的核心模块的全面解析&…...
学习微信小程序 Westore
最近,接到小程序需求,并且是在以前公司老项目上改造,打开项目,发现却不是我想象中的那样,不是上来就是 Page({}),而是create(store,{}),纳尼???这什么玩意&am…...

CentOS上使用Docker安装和部署kkFileView
🎈1 参考文档 kkFileView官方文档 🚀2 安装kkFileView 拉取Redis镜像。 docker pull keking/kkfileview启动docker容器。 docker run -it -d -p 8012:8012 keking/kkfileview --restart always解释: docker run redis # 从kkfileview镜像运行…...

Level-based Foraging 多智能体游戏仿真环境
游戏场景测试 参考链接: https://kgithub.com/semitable/lb-foraging...

LeetCode-53-最大子数组和-贪心算法
贪心算法理论基础: 局部最优推全局最优 贪心无套路~ 没有什么规律~ 重点:每个阶段的局部最优是什么? 题目描述: 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素&#…...

解决gitee仓库中 .git 文件夹过大的问题
最近,许多项目都迁移到gitee。使用的也越来越频繁,但是今天突然收到一个仓库爆满的提示。让我一脸懵逼。本文将详细为你解答,这种情况如何处理。 1、起因 我收到的报错如下: remote: Powered by GITEE.COM [GNK-6.4] remote: T…...

uniapp 开发小程序,封装一个方法,让图片使用线上地址
1.在main.js文件中,添加以下代码: 复制使用: // 图片使用网络地址 Vue.prototype.localImgSrc function(img){//项目的地址域名,例如百度return "https://baidu.cn/static/index/images/" img; }2.在页面中直接使用&…...
Android 12 源码分析 —— 应用层 三(SystemUIFactory及其Dependency解析)
Android 12 源码分析 —— 应用层 三(SystemUIFactory及其Dependency解析) 在上一篇文章中,介绍了SystemUI的启动流程,并且简单提及了Dagger2用来管理各个SystemUI中要用的依赖。而这部分代码就在:mContextAvailableC…...

考前冲刺上岸浙工商MBA的备考经验分享
2023年对于许多人来说都是不平凡的一年,历经三年的抗争,我们终于成功结束了疫情。而我也很幸运的被浙工商MBA项目录取,即将开始全新的学习生活。身为一名已在职工作6年的人,能够重回校园真是一种特别令人激动的体验。今天…...

XmlDocument.SelectNodes 不起作用
今天采用Xpath读取Xml节点,怎么都读不出。 问题分析: 错误代码如下: XmlDocument xmlD new XmlDocument();xmlD.PreserveWhitespace true;xmlD.LoadXml(xStr);xmlD.SelectNodes("job-scheduling-data/schedule/job");经排查 do…...

大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...

树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
数据链路层的主要功能是什么
数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...
C++.OpenGL (10/64)基础光照(Basic Lighting)
基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...

智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...