当前位置: 首页 > news >正文

hive数据仓库工具

1、hive是一套操作数据仓库的应用工具,通过这个工具可实现mapreduce的功能
2、hive的语言是hql[hive query language]
3、官网hive.apache.org 下载hive软件包地址 Welcome! - The Apache Software Foundationicon-default.png?t=N7T8https://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&amp;characterEncoding=utf8&amp;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是一套操作数据仓库的应用工具&#xff0c;通过这个工具可实现mapreduce的功能 2、hive的语言是hql[hive query language] 3、官网hive.apache.org 下载hive软件包地址 Welcome! - The Apache Software Foundationhttps://archive.apache.org/ 4、hive在管理数据时分为元…...

C语言 联合体验证 主机字节序 +枚举

联合体应用&#xff1a;验证当前主机的大小端&#xff08;字节序&#xff09; //验证当前主机的大小端 #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实现烟花特效 新年来临之际&#xff0c;来一个欢庆新年烟花祝贺&#xff0c;需要安装使用第三方库pygame&#xff0c;关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520 效果图及源码 先看效果图&#xff1a…...

gRPC-Gateway:高效转换 RESTful 接口 | 开源日报 No.105

grpc-ecosystem/grpc-gateway Stars: 16.4k License: BSD-3-Clause gRPC-Gateway 是一个遵循 gRPC HTTP 规范的 gRPC 到 JSON 代理生成器。它是 Google 协议缓冲编译器 protoc 的插件&#xff0c;可以读取 protobuf 服务定义并生成反向代理服务器&#xff0c;将 RESTful HTTP…...

非专业的建模人员如何给模型设置材质纹理贴图?

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 1、材质和纹理的区别于关联 材质&#xff08;Material&#xff09;是…...

自动化测试、压力测试、持续集成

因为项目的原因&#xff0c;前段时间研究并使用了 SoapUI 测试工具进行自测开发的 api。下面将研究的成果展示给大家&#xff0c;希望对需要的人有所帮助。 SoapUI 是什么&#xff1f; SoapUI 是一个开源测试工具&#xff0c;通过 soap/http 来检查、调用、实现 Web Service …...

FFmpeg之HWContextType

HWContextType算是ffmpeg中为硬解码第三方接口的一个辅助类&#xff0c;它自己有两个辅助子类 AVHWDeviceContext和AVHWFramesContext。 AVHWDeviceContext主要表示硬件上下文 AVHWFramesContext主要表示硬件Frame的一些参数&#xff0c;比如你解码后的YUV数据还在硬件上&#…...

Python面向对象之类和对象(Python系列16)

前言&#xff1a;面向对象是什么&#xff0c;为什么要学面向对象&#xff1f;面向对象是一种思想&#xff0c;让我们的程序变得更加的贴切我们的生活&#xff0c;更加的形象&#xff0c;让代码的可读性和扩展性变得更高。 面向对象&#xff1a;可以使用类将变量和函数组成新的…...

电商对传统零售业的影响:销售渠道、价格竞争与服务质量挑战

随着互联网的普及和电商行业的飞速发展&#xff0c;传统零售业面临着前所未有的挑战。电商不仅改变了消费者的购物方式和消费习惯&#xff0c;还对传统零售业的销售渠道、价格竞争和服务质量等方面产生了深远的影响。本文将详细分析电商对传统零售业的影响&#xff0c;以期为传…...

DENet:用于可见水印去除的Disentangled Embedding网络笔记

1 Title DENet: Disentangled Embedding Network for Visible Watermark Removal&#xff08;Ruizhou Sun、Yukun Su、Qingyao Wu&#xff09;[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#面试题

基本概念 装箱和拆箱 装箱的过程&#xff0c;是将 值类型 转换为 引用类型 的过程&#xff1b; 拆箱则是将引用类型转换为值类型。 int val 100; object obj val; //装箱 int num (int) obj; //拆箱 委托(delegate) 委托&#xff08;Delegate&#xff09; 是存有对某个…...

python源码,在线读取传奇列表,并解析为需要的JSON格式

python源码&#xff0c;在线读取传奇列表&#xff0c;并解析为需要的JSON格式 [Server] ; 使用“/”字符分开颜色&#xff0c;也可以不使用颜色&#xff0c;支持以前的旧格式&#xff0c;只有标题和服务器标题支持颜色 ; 标题/颜色代码(0-255)|服务器标题/颜色代码(0-255)|服务…...

二叉排序树的判断(二叉树的顺序存储):2022年408算法题

对于采用顺序存储方式保存的二叉树&#xff0c;根结点保存在SqBiTNode[0]中&#xff1b;当某结点保存SqBiTNode[i]中时&#xff0c;若有左孩子&#xff0c;则其值保存在SqBiTNode [2i1]中&#xff1b;若有右孩子&#xff0c;则其值保存在SqBiTNode[2i2]中&#xff1b;若有双亲结…...

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 将更改从功能分支合并到主分支&#xff0c;但还有其他方法。我们是否曾经遇到过 git rebase 这个术语并想知道它是什么&#xff1f;或者我们可能听说过 rebase 和 merge &#xff0c;但不确定何时使用哪个&#xff1f;不用担心&am…...

程序员的养生之道:延寿健康的十大秘诀(下)

程序员的养生之道&#xff1a;延寿健康的十大秘诀&#xff08;上&#xff09;-CSDN博客 目录 6. 心理调节&#xff0c;减轻压力 6.1 程序员常见的心理问题 6.2 压力管理的重要性 6.3 放松技巧与应对策略 6.4 积极心态与心理健康 7. 正确坐姿&#xff0c;保护颈椎腰椎 …...

【java】保留前N月数据文件,定期删除数据

数据越积越多&#xff0c;过于冗余&#xff1b;数据库定期删除指定时间前的数据&#xff1b;文件生成的删除指定时间前端文件 SFTP文件定期删除 java sftp 定时清理指定文件中固定时间 依赖 <!-- ftp文件上传/下载Jar包 --> <dependency><groupId>com.jc…...

12.9_黑马数据结构与算法笔记Java

目录 057 多路递归 e03 杨辉三角2 thinking&#xff1a;二维数组的动态初始化&#xff1f; 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. 添加用…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎&#xff08;Physics Engine&#xff09; 物理引擎 是一种通过计算机模拟物理规律&#xff08;如力学、碰撞、重力、流体动力学等&#xff09;的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互&#xff0c;广泛应用于 游戏开发、动画制作、虚…...

【Oracle APEX开发小技巧12】

有如下需求&#xff1a; 有一个问题反馈页面&#xff0c;要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据&#xff0c;方便管理员及时处理反馈。 我的方法&#xff1a;直接将逻辑写在SQL中&#xff0c;这样可以直接在页面展示 完整代码&#xff1a; SELECTSF.FE…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 &#xff08;结构体大小计算及位段 详解请看&#xff1a;自定义类型&#xff1a;结构体进阶-CSDN博客&#xff09; 1.在32位系统环境&#xff0c;编译选项为4字节对齐&#xff0c;那么sizeof(A)和sizeof(B)是多少&#xff1f; #pragma pack(4)st…...

postgresql|数据库|只读用户的创建和删除(备忘)

CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

3-11单元格区域边界定位(End属性)学习笔记

返回一个Range 对象&#xff0c;只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意&#xff1a;它移动的位置必须是相连的有内容的单元格…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...

解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist

现象&#xff1a; android studio报错&#xff1a; [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决&#xff1a; 不要动CMakeLists.…...