hive数据仓库工具
1、hive是一套操作数据仓库的应用工具,通过这个工具可实现mapreduce的功能
2、hive的语言是hql[hive query language]
3、官网hive.apache.org 下载hive软件包地址 Welcome! - The Apache Software Foundation
https://archive.apache.org/
4、hive在管理数据时分为元数据和真数据,其中元数据要保存在数据库中,比如mysql,真数据保存在hdfs中

5、Hive环境搭建
(01)检测系统是否自带安装 MySQL:rpm -qa | grep mysql
(02)若有安装mysql则卸载:rpm -e mysql 或 rpm -e --nodeps mysql
(03)检测是否已安装自带的 mariadb 数据库:rpm -qa|grep mariadb
(04)若有安装则卸载:rpm -e --nodeps mariadb-libs-5.5.35-3.el7.x86_64
(05)把安装包MySQL-5.5.40-1.linux2.6.x86_64.rpm-bundle.tar.gz复制到/opt/software目录下
(06)创建目录:mkdir /opt/software/mysql
(07)解压到指定目录下:tar -xvf MySQL-5.5.40-1.linux2.6.x86_64.rpm-bundle.tar -C ./mysql
(08)安装服务器:rpm -ivh MySQL-server-5.5.40-1.linux2.6.x86_64.rpm
【注】若安装中提示缺少依赖包则安装:yum -y install libaio 或 yum -y install perl
(09)安装客户端:rpm -ivh MySQL-client-5.5.40-1.linux2.6.x86_64.rpm
(10)启动 mysql 服务:systemctl start mysql
(11)查看 mysql 服务状态:systemctl status mysql
【注】可以通过 systemctl stop mysql 关闭 mysql 服务
(12)登录 mysql 客户端:mysql -uroot -p 未设密码直接回车
(13)设置 mysql root 用户密码:set password=password('123');
(14)退出客户端:exit 然后重新登录测试密码是否生效:mysql -uroot -p123 并查看数据库信息
(15)查看 mysql 数据库的 user 表:select host,user,password from mysql.user;
(16)若让 root 用户可以远程连接的设置:
grant all privileges on *.* to `root`@`%` identified by '123';
grant all privileges on *.* to `root`@`hadoop101` identified by '123';
flush privileges;
exit;
(17)重新启动 mysql 服务:systemctl restart mysql.service
(18)通过windows端测试远程访问:mysql -hhadoop101 -uroot -p123
(19)将软件包 hive-1.1.0-cdh5.14.2.tar.gz 上传到 /opt/software 目录下
(20)解压到指定的目录:tar -zxvf hive-1.1.0-cdh5.14.2.tar.gz -C /opt/install
(21)配置软链接:ln -s /opt/install/hive-1.1.0-cdh5.14.2 /opt/install/hive
(22)配置环境变量:vi /etc/profile
export HIVE_HOME=/opt/install/hive
export PATH=$PATH:$HIVE_HOME/bin
(23)使环境变量生效:source /etc/profile
(24)创建Hive配置文件:vi /opt/install/hive/conf/hive-site.xml
<configuration>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/hadoop/hive/warehouse</value>
</property>
<!-- mysql 数据配置 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://hadoop101:3306/hive?useUnicode=true&characterEncoding=utf8&createDatabaseIfNotExist=true</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>123</value>
</property>
<!-- 配置 Hive 临时文件存储地址 -->
<property>
<name>hive.exec.scratchdir</name>
<value>/hadoop/hive/data/hive-${user.name}</value>
</property>
<property>
<name>hive.exec.local.scratchdir</name>
<value>/hadoop/hive/data/${user.name}</value>
</property>
</configuration>
(25)复制文件:cp hive-env.sh.template hive-env.sh
(26)修改文件:vi hive-env.sh
HADOOP_HOME=/opt/install/hadoop
export HIVE_CONF_DIR=/opt/install/hive/conf
export HIVE_AUX_JARS_PATH=/opt/install/hive/lib
(27)创建目录:mkdir -p /opt/install/hive/logs
(28)复制文件:cp hive-log4j.properties.template hive-log4j.properties
(29)修改文件:vi hive-log4j.properties
hive.log.dir=/opt/install/hive/logs
(30)上传 mysql-connector-java-5.1.47-bin.jar 到 /opt/install/hive/lib/ 目录下
(31)启动 hive :hive 直接回车【注】先启动hdfs、yarn和mysql
(32)查看元数据库信息:show databases;
(33)进入 mysql 中,查看有无 hive 数据库
【注】若需为字段名和表添加中文注释,可修改以下内容
ALTER TABLE DBS MODIFY COLUMN `DESC` VARCHAR(4000) CHARACTER SET utf8;
ALTER TABLE TABLE_PARAMS MODIFY COLUMN PARAM_VALUE TEXT CHARACTER SET utf8;
ALTER TABLE COLUMNS_V2 MODIFY COLUMN COMMENT VARCHAR(256) CHARACTER SET utf8;
ALTER TABLE PARTITION_PARAMS MODIFY COLUMN PARAM_VALUE VARCHAR(4000) CHARACTER SET utf8;
ALTER TABLE PARTITION_KEYS MODIFY PKEY_COMMENT VARCHAR(4000) CHARACTER SET utf8;
#ALTER TABLE INDEX_PARAMS MODIFY COLUMN PARAM_VALUE VARCHAR(4000) CHARACTER SET utf8;
ALTER TABLE TBLS MODIFY COLUMN VIEW_EXPANDED_TEXT MEDIUMTEXT CHARACTER SET utf8;
ALTER TABLE TBLS MODIFY COLUMN VIEW_ORIGINAL_TEXT MEDIUMTEXT CHARACTER SET utf8;
(34)退出 mysql
(35)停止所有服务,包括(hiveserver2,rm,nm,dn,nn)[mysql]
(36)做快照
6、启动客户端:
(1)确定先启动hdfs,yarn,mysql,然后再启动hive
(2)确定先启动hdfs,yarn,mysql,然后启动服务:
hive --service hiveserver2 &
最后启动beeline -u jdbc:hive2://hadoop101:10000/default -n root
(3)退出hive: exit;
(4)退出beeline:!exit
7、常用命令:
进入方式:hive---------------------beeline
连接: N/A----------------------!connect jdbc:hive2://hadoop101:10000
查询所有数据库:show databases;
查询当前数据库:select current_database();
切换当前数据库:use 数据库名;
查询所有数据表:show tables;[!table(s)]
查询表中所有列:desc 表名;[!column 表名]
保存输出: N/A--------------------!record 文件名
执行linux命令:!命令;---------------!sh 命令
执行hdfs命令:dfs -命令;
执行sql脚本:source 文件名;[!run 文件名]
退出:quit; or exit;------------------!quit or !exit [注!close关闭连接]
8、启动hive的步骤:
(1)systemctl start|status mysql
(2)hadoop-daemon.sh start namenode
(3)hadoop-daemon.sh start datanode
(4)yarn-daemon.sh start resourcemanager
(5)yarn-daemon.sh start nodemanager
(6)hiveserver2 &
(7)beeline
9、集群安装hive注意事项:
(1)在102上安装mysql服务
(2)启动集群zk,hdfs,yarn服务
(3)在102上启动metastore服务,
hive --service metastore &
其他机器需配置hive-site.xml
<configuration>
<property>
<name>hive.metastore.uris</name>
<value>thrift://hadoop102:9083</value>
</property>
</configuration>
然后启动客户端hive即可
(4)在102上启动hiveserver2服务,
hive --service hiveserver2 & 或 hiveserver2 &
其他机器无需配置hive-site.xml,可直接通过启动客户端beeline即可
beeline -ujdbc:hive2://hadoop102:10000 -uroot
相关文章:
hive数据仓库工具
1、hive是一套操作数据仓库的应用工具,通过这个工具可实现mapreduce的功能 2、hive的语言是hql[hive query language] 3、官网hive.apache.org 下载hive软件包地址 Welcome! - The Apache Software Foundationhttps://archive.apache.org/ 4、hive在管理数据时分为元…...
C语言 联合体验证 主机字节序 +枚举
联合体应用:验证当前主机的大小端(字节序) //验证当前主机的大小端 #include <stdio.h>union MyData {unsigned int data;struct{unsigned char byte0;unsigned char byte1;unsigned char byte2;unsigned char byte3;}byte; };int main…...
python和pygame实现烟花特效
python和pygame实现烟花特效 新年来临之际,来一个欢庆新年烟花祝贺,需要安装使用第三方库pygame,关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520 效果图及源码 先看效果图:…...
gRPC-Gateway:高效转换 RESTful 接口 | 开源日报 No.105
grpc-ecosystem/grpc-gateway Stars: 16.4k License: BSD-3-Clause gRPC-Gateway 是一个遵循 gRPC HTTP 规范的 gRPC 到 JSON 代理生成器。它是 Google 协议缓冲编译器 protoc 的插件,可以读取 protobuf 服务定义并生成反向代理服务器,将 RESTful HTTP…...
非专业的建模人员如何给模型设置材质纹理贴图?
在线工具推荐: 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 1、材质和纹理的区别于关联 材质(Material)是…...
自动化测试、压力测试、持续集成
因为项目的原因,前段时间研究并使用了 SoapUI 测试工具进行自测开发的 api。下面将研究的成果展示给大家,希望对需要的人有所帮助。 SoapUI 是什么? SoapUI 是一个开源测试工具,通过 soap/http 来检查、调用、实现 Web Service …...
FFmpeg之HWContextType
HWContextType算是ffmpeg中为硬解码第三方接口的一个辅助类,它自己有两个辅助子类 AVHWDeviceContext和AVHWFramesContext。 AVHWDeviceContext主要表示硬件上下文 AVHWFramesContext主要表示硬件Frame的一些参数,比如你解码后的YUV数据还在硬件上&#…...
Python面向对象之类和对象(Python系列16)
前言:面向对象是什么,为什么要学面向对象?面向对象是一种思想,让我们的程序变得更加的贴切我们的生活,更加的形象,让代码的可读性和扩展性变得更高。 面向对象:可以使用类将变量和函数组成新的…...
电商对传统零售业的影响:销售渠道、价格竞争与服务质量挑战
随着互联网的普及和电商行业的飞速发展,传统零售业面临着前所未有的挑战。电商不仅改变了消费者的购物方式和消费习惯,还对传统零售业的销售渠道、价格竞争和服务质量等方面产生了深远的影响。本文将详细分析电商对传统零售业的影响,以期为传…...
DENet:用于可见水印去除的Disentangled Embedding网络笔记
1 Title DENet: Disentangled Embedding Network for Visible Watermark Removal(Ruizhou Sun、Yukun Su、Qingyao Wu)[AAAI2023 Oral] 2 Conclusion This paper propose a novel contrastive learning mechanism to disentangle the high-level embedd…...
C++初阶(十五)Stack和Queue
文章目录 一、Stack的模拟实现二、Queue的模拟实现三、容器适配器1、什么是容器适配器2、STL标准库中stack和queue的底层结构3、 deque的简单介绍(了解)1、deque的原理介绍2、deque的缺陷 4、为什么选择deque作为stack和queue的底层默认容器 一、Stack的模拟实现 #include<…...
C#面试题
基本概念 装箱和拆箱 装箱的过程,是将 值类型 转换为 引用类型 的过程; 拆箱则是将引用类型转换为值类型。 int val 100; object obj val; //装箱 int num (int) obj; //拆箱 委托(delegate) 委托(Delegate) 是存有对某个…...
python源码,在线读取传奇列表,并解析为需要的JSON格式
python源码,在线读取传奇列表,并解析为需要的JSON格式 [Server] ; 使用“/”字符分开颜色,也可以不使用颜色,支持以前的旧格式,只有标题和服务器标题支持颜色 ; 标题/颜色代码(0-255)|服务器标题/颜色代码(0-255)|服务…...
二叉排序树的判断(二叉树的顺序存储):2022年408算法题
对于采用顺序存储方式保存的二叉树,根结点保存在SqBiTNode[0]中;当某结点保存SqBiTNode[i]中时,若有左孩子,则其值保存在SqBiTNode [2i1]中;若有右孩子,则其值保存在SqBiTNode[2i2]中;若有双亲结…...
Kubernetes版本升级到v1.18.0方法
升级k8s版本才能使用kube-prometheus安装监控 1、查看集群状态 [rootk8s-master k8s-script]# kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-master Ready master 5d22h v1.18.0 k8s-slave1 Ready <none> 4d10h v1.18.0 k…...
了解 git rebase
了解 git rebase 大多数人习惯使用 git merge 将更改从功能分支合并到主分支,但还有其他方法。我们是否曾经遇到过 git rebase 这个术语并想知道它是什么?或者我们可能听说过 rebase 和 merge ,但不确定何时使用哪个?不用担心&am…...
程序员的养生之道:延寿健康的十大秘诀(下)
程序员的养生之道:延寿健康的十大秘诀(上)-CSDN博客 目录 6. 心理调节,减轻压力 6.1 程序员常见的心理问题 6.2 压力管理的重要性 6.3 放松技巧与应对策略 6.4 积极心态与心理健康 7. 正确坐姿,保护颈椎腰椎 …...
【java】保留前N月数据文件,定期删除数据
数据越积越多,过于冗余;数据库定期删除指定时间前的数据;文件生成的删除指定时间前端文件 SFTP文件定期删除 java sftp 定时清理指定文件中固定时间 依赖 <!-- ftp文件上传/下载Jar包 --> <dependency><groupId>com.jc…...
12.9_黑马数据结构与算法笔记Java
目录 057 多路递归 e03 杨辉三角2 thinking:二维数组的动态初始化? 057 多路递归 e03 杨辉三角3 058 链表 e01 反转单向链表1 058 链表 e01 反转单向链表2 058 链表 e01 反转单向链表3 递归 058 链表 e01 反转单向链表4 为什么是returnn1呢&…...
K8S学习指南(1)-docker的安装
文章目录 引言1. Windows 系统中安装 Dockera. 确认系统要求b. 下载 Docker Desktopc. 安装 Docker Desktopd. 配置 Docker Desktope. 验证安装 2. Ubuntu 系统中安装 Dockera. 更新包列表b. 安装依赖包c. 添加 Docker GPG 密钥d. 添加 Docker APT 仓库e. 安装 Dockerf. 添加用…...
Cursor Pro免费激活工具:技术探索与实践指南
Cursor Pro免费激活工具:技术探索与实践指南 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your trial reques…...
40希尔排序 - 以递减间距进行插入排序
希尔排序 - 以递减间距进行插入排序 040希尔排序:用长距离跳跃打破速度壁垒📰 5W1H 发明者故事 Who(何人)- 发明者是谁? 发明者:唐纳德希尔(Donald L. Shell) 背景:希尔…...
哔哩下载姬完整指南:三步快速掌握B站视频批量下载技巧
哔哩下载姬完整指南:三步快速掌握B站视频批量下载技巧 【免费下载链接】downkyi 哔哩下载姬downkyi,哔哩哔哩网站视频下载工具,支持批量下载,支持8K、HDR、杜比视界,提供工具箱(音视频提取、去水印等&#…...
蓝桥杯备赛别死磕理论!用DFS实战迷宫、八皇后,5分钟搞懂回溯模板
蓝桥杯算法实战:用DFS破解迷宫与八皇后问题的5个黄金法则 在算法竞赛的战场上,深度优先搜索(DFS)就像一把瑞士军刀——看似简单却能在关键时刻解决各类难题。许多选手在备战蓝桥杯时陷入理论泥潭,反复背诵模板却难以应…...
英特尔马来西亚六厂布局:先进封装如何重塑半导体制造与供应链
1. 项目概述:从一则新闻到半导体制造的全球拼图前几天,行业里不少朋友都在转一条消息,说英特尔在马来西亚的封装产能布局又有新动作,计划要搞到六座工厂的规模。乍一看,这好像就是个普通的海外建厂新闻,但如…...
【NotebookLM学术写作黄金法则】:20年科研老炮亲授5大避坑指南与3步合规提速法
更多请点击: https://intelliparadigm.com 第一章:NotebookLM学术写作规范的底层逻辑与认知革命 NotebookLM 并非传统意义上的文档编辑器,而是一个以“语义锚点”和“引用可追溯性”为基石的学术协作文本引擎。其底层逻辑颠覆了线性写作范式…...
Gemini3.1Pro数据分析报告自动化实战
用 Gemini 3.1 Pro 快速生成数据分析报告并自动可视化:端到端闭环(生成—验证—反思—修正—回归) 门控降级 4周MVP路线图要“快速生成数据分析报告并可视化”,真正难点不是生成文字,而是把报告做成可核验、可复用、可…...
Arch Linux Hyprland自动化安装脚本:高效打造现代化Wayland桌面环境
Arch Linux Hyprland自动化安装脚本:高效打造现代化Wayland桌面环境 【免费下载链接】Arch-Hyprland For automated installation of Hyprland on Arch Linux or any Arch Linux-based distros 项目地址: https://gitcode.com/gh_mirrors/ar/Arch-Hyprland A…...
Playwright自动化进阶:手把手教你用Yaml实现数据驱动,让测试用例管理效率翻倍
Playwright自动化进阶:手把手教你用Yaml实现数据驱动,让测试用例管理效率翻倍 当UI自动化测试用例数量达到三位数时,每次修改测试数据都像在代码海洋中捞针。我曾经历过这样的痛苦:某次产品迭代导致200多个测试用例中的URL全部需要…...
当滑块验证码遇上VMP:浅析某讯前端混淆方案与自写解释器的踩坑记录
前端安全对抗新维度:VMP技术在滑块验证码中的实战解析 滑块验证码早已从简单的图像识别演变为复杂的人机验证系统,而VMP(Virtual Machine Protection)技术的引入,则将这场攻防对抗推向了更高维度。本文将深入探讨VMP如…...
