学习笔记1 hive基本操作

熟悉Hive的基本操作 阅读详情

一、数据库操作

  1. 创建数据库
    创建数据库myhive
create database if not exists myhive;

2.创建数据库并指定位置

create database myhive2 location '/myhive2';
  1. 选择操作某数据库
use myhive;
  1. 创建表
create table t_test(id int , name string);

在hive内,数据库与数据库中的表是以目录的形式存在的。

  1. 创建数据库键值对信息
    数据库可以有一些描述性的键值对信息,在创建时添加:
create database foo with dbproperties ('owner'='itcast','date'='20210518');
  1. 查看数据库的键值对信息
describe database extended foo;
  1. 修改数据库的键值对信息
alter database foo set dbproperties ('itcast'='itheima');
  1. 查看数据库更多详细信息
desc database extended myhive2;
  1. 删除数据库
    删除空的数据库
drop database myhive2;

强制删除数据库(包括数据库下的表)

drop database myhive cascade;

二、数据库表操作

1. 创建表的语法:

create [external] table [if not exists] table_name (
col_name data_type [comment '字段描述信息']
col_name data_type [comment '字段描述信息'])
[comment '表的描述信息']
[partitioned by (col_name data_type,...)]
[clustered by (col_name,col_name,...)]
[sorted by (col_name [asc|desc],...) into num_buckets buckets]
[row format row_format]
[storted as ...]
[location '指定表的路径']

2. 内部表的操作

  1. 建表:
use myhive;
create table stu(id int,name string);
insert into stu vaalues(1,"zhangsan");  #插入数据
select * from stu;
  1. 创建表并指定字段之间的分隔符
    hive 表文件字段之间的分隔符
create table if not exists stu2(id int,name string) row format delimited fields terminated by '\t';
  1. 创建表并指定文件的存放路径
create table if not exists stu2(id int,name string) row format dalimited fields terminated by '\t' location '/user/stu2';
  1. 根据查询结果创建表
create table stu3 as select * from stu2;  # 通过复制表结构和标内容创建新表
  1. 根据已经存在的表结构创建表
create table stu4 like stu;
  1. 查询表的详细信息
desc formatted stu2;
  1. 删除表
drop table stu4;

3. 外部表的操作

外部表的数据一般用于共享。删除hive表时,数据仍然存放在hdfs中,不会删掉。

  1. 创建外部表:
create external table teacher (t_id string, t_name string) row format delimited fields terminated by '\t';
  1. 加载数据(本地加载)
  • 方法一(不建议使用)
hive> insert into stu values(1,'zhangzan');
  • 方法二:
    对文件做复制操作
load data local inpath '/export/servers/hivedatas/student.csv' into table student;
  1. 加载数据并覆盖已有数据
load data local inpath '/export/servers/hivedatas/student.csv' overwrite into table student;
  1. 从hdfs文件系统向表中加载数据(需要提前将数据上传到hdfs文件系统)
    hive可以将hdfs文件映射成一张表。(依靠hive的元数据)
hdfs dfs -put teacher.csv /hivedatas/
load data inpath 'hivedatas/teacher.csv' into table teacher;

对文件做剪切操作

  1. 表的修复(建立表与数据文件之间的一个关系映射)
msck repair table score4;

4.分区表的操作

将大的hive表文件分切成一个个小的文件,存放在不同的文件夹中。

  1. 创建分区表语法
create table score(s_id string,c_id string,s_score int) partitioned by (month string) row format delimited field terminated by '\t';
  1. 创建一个表带多个分区(创建多级文件夹)
create table score2(s_id string,c_id string,s_score int) partitioned by (year string,month string,day string) row format delimited field terminated by '\t';
  1. 加载数据到分区表中
load data local inpath '/export/servers/hivedatas/score.csv' into table score partition (month='202105');
  1. 加载数据到多分区表中
load data local inpath '/export/servers/hivedatas/score.csv' into table score2 partition (year='2021'month='05',day='18');
  1. 多分区表联合查询(使用 union all)
select * from score where month = '2021' union all select * from score where month = '202105';
  1. 查看分区
show partitions score;
  1. 添加一个分区
alter table score add partition(month = '202105');
  1. 删除分区
alter table score drop partition(month = '202105');

5. 分桶表操作

分桶:将数据按照指定的字段划分到多个文件当中去(即MapReduce中的分区)。
可避免单个表文件数据过大。
查询时会将所有数据输出。

  1. 开启hive的分桶功能
set hive.enforce.bucketing=true;
  1. 设置reduce个数
set mapreduce.job.reduces=3;
  1. 创建分桶表
create table course (c_id string,c_name string,t_id string) clustered by(c_id) into 3 buckets row format delimited fields terminated by '\t';
  1. 创建普通表(做中间表)
create table course_common (c_id string,c_name string,t_id string) row format delimited fields terminated by '\t';
  1. 普通表中加载数据
load data local inpath '/export/servers/hivedatas/course.csv' into table course_common;
  1. 通过insert overwrite 给通表中加载数据
insert overwrite table course select * from course_common cluster by(c_id);

6.修改表结构

  1. 重命名
alter table old_table_name rename to new_table_name;
  1. 增加/修改列信息
  • 查询表结构
desc score5;
  • 添加列
alter table first add columns (mycol string,mysco int);
  • 更新列
alter table first change column mycol mycolnew string;
  • 删除表(略)
25分钟掌握Hive基本操作 15分钟掌握Hive基本操作   (1)、从本地文件系统中导入数据到Hive表; (2)、从HDFS上导入数据到Hive表; (3)、从别的表中查询出相应的数据并导入到Hive表中; (4)、在创建表的时候通过从别的表中查询出相应的记录并插入到所创建的表中。       一、从本地文件系统中导入数据到Hive表   先在Hive里面创建好表,如下:   1 hive> cr 阅读详情

相关推荐

Hive的基本操作

内容提要 l Hive及beeline的命令行操作 l jdbc操作Hive l Hive函数 3.1 Hive命令操作 3.1.1 Hive的基本操作 我们长久以来习惯于传统的关系型数据库,并且结构化查询语言(SQL)相对来说也比较容易学习,那么能否将类似于关系型数据库的架构应用到Hadoop文件系统,从而可以使用类SQL语言查询和操作数据呢?Hive应运而生。 Hive提供了一...

lvqianqian_csdn的博客 916

Hive基本操作(外部表,分区表,分桶表,修改表,加载导出数据)

文章目录创建数据库与创建数据库表启动服务端启动客户端创建数据库创建数据库并指定hdfs存储位置修改数据库查看数据库基本信息查看数据库更多详细信息删除数据库创建数据库表操作hive建表Hive建表时候的字段类型创建表并指定字段之间的分隔符根据查询结果创建表(包含结果和内容)根据已经存在的表结构创建表外部表外部表说明管理表和外部表的使用场景操作案例创建老师表创建学生表从本地文件系统向表中加载数据,不加...

bitmao888的博客 1461

Hive3.1.2概述与基本操作

面试题:什么是hive?1、hive是数据仓库建模的工具之一。2、可以向hive传入一条交互式的sql,在海量数据中查询分析得到结果的平台。

2403_83630621的博客 1034

Hive基本操作(创建数据库与创建数据库表)

创建数据库操作: 1.创建数据库 create database if not exists myhive; use myhive; 说明:hive的表存放位置模式是由hive-site.xml当中的一个属性指定的 hive.metastore.warehouse.dir /user/hive/warehouse 创建数据库并指定hdfs存储位置 create database myhive2 ...

汉子一枚 3289

Hive搭建与基本操作

1.1  Hive概述 Hive是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 HQL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper

qq_20679613的博客 1401

2024年捡垃圾指南:E5 V3/V4服务器CPU怎么选?从游戏多开到深度学习,附华南X99主板搭配清单

本文详细解析2024年E5 V3/V4服务器CPU的选购策略,涵盖游戏多开、深度学习等多种应用场景。通过对比E5 V3与V4系列的制程、功耗及性能差异,提供高性价比的CPU型号推荐及华南X99主板搭配方案,帮助用户在有限预算下打造高效能工作站。

weixin_42549451的博客 1573

大数据-Hive表创建语法

1. Hive 表操作 1.1. Hive表创建语法 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], ...)] [COMMENT table_comment] [PARTITIONED BY (col_name data_type [COMMENT ...

逍遥云恋 819

什么是无人机巡检?如何实现无人机自动巡检?

复亚智能的无人机自动巡检系统通过高度自动化的技术,实现了无人机的高效巡检作业。无人机自动机场支持无人机的自动起降和电池更换,自动飞行算法确保无人机在复杂环境中的精准飞行和拍摄,而云端识别诊断和AI感知算法平台则实现图像的实时传输和智能分析。复亚智能,作为无人机技术的创新者和推动者,致力于开发先进的无人机自动巡检解决方案,助力各行各业实现智能化、自动化的巡检工作,引领智能巡检的未来。利用人工智能和机器学习算法,无人机可以被训练来识别特定的模式和异常,如结构损坏、热泄漏等,从而提高巡检的准确性和效率。

foiadrone的博客 2842

Hive基本操作

1、开启hive 1.1 进入 hive/bin [root@hadoop0001 bin]#cd /opt/software/apache-hive-1.2.1-bin/bin/ 1.2执行 hive 命令,开启hive [root@hadoop0001 bin]#hive 1.3若开启正常跳过,若报Cannot create directory /tmp/hive/root/533855bd-351b-4146-9227-10c16868ffd3. Name node is in .

weixin_44246850的博客 8759

RuoYi项目适配达梦数据库(二)

RuoYi项目,代码生成模块的达梦数据库适配。

邢慧鹏的博客 1万+

CASS3D实战:高效三维房屋与地形采集绘制技巧

本文详细介绍了CASS3D在三维房屋与地形采集绘制中的高效技巧,包括智能绘房功能、不规则结构处理、特殊构件快速绘制及地形数据采集策略。通过实战案例和进阶操作指南,帮助用户快速掌握CASS3D的核心功能,提升三维采集与绘制效率。

weixin_29216049的博客 866

hive基本操作

目录 库操作 1、创建库 语法结构 创建库的方式 2、查看库 查看库的方式 3、删除库 说明 示例 4、切换库 语法 示例 表操作 1、创建表 语法 示例 2、查看表 (1)查看表列表 (2)查看表的详细信息 查看表的信息 (3)查看表的详细建表语句 3、修改表 (1)修改表名 (2)修改字段定义 (3)修改分区信息 4、删除表 5、清空表 其他辅助命令 Hive SQL之数据类型和存储格式 一、数据类型 1、基本数据类型 2、复杂类型

零零七的博客 1710

芯片缺陷检测全流程:从光学成像到AI自动判别的实战路线

在半导体制造中,良率是衡量产线效率的核心指标,而缺陷检测则是守住良率的关键防线。传统人工显微镜目检已难以应对微米级乃至纳米级缺陷的挑战,工业界正加速转向机器视觉与深度学习相结合的技术方案。其核心原理在于:先通过明场、暗场或DIC等光学成像获取高对比度图像,再借助传统图像处理算法快速提取候选缺陷区域,最后利用CNN等深度学习模型对缺陷进行精准分类与判定。这一技术路线不仅大幅提升检测效率与准确性,还能有效降低漏检和误报,广泛应用于晶圆制造、封装测试等环节。本文从成像选型、算法分工、数据标注到模型部署,系统梳理了

weixin_29053577的博客 264

Hive学习笔记(1)基本操作

hive学习官方网站: General Info ============ For the latest information about Hive, please visit out website at: http://hive.apache.org/ Getting Started =============== - Installation Instructions and a q...

磨刀大神的博客 616

一种基于OpenPose和DNN的跌倒检测软件系统(中文&英文)

学习并实现一种跌倒检测模型,此模型基于OpenPose实现逐帧人体姿态检测,使用DNN识别人体动作。检测方式有在线与离线两种,本文主要测试了离线模式,测试效果较好。

Tongzhou_Li的博客 2643

获取车辆VIN等OBD信息

获取车辆如下OBD信息: VIN:Vehicle Identification Number CALID:Calibration Identifications CVN:Calibration verification number 一、SAE J1939协议 通过请求 CALIBRATION INFORMATION (DM19),获取CVN和CALID。 发送请求:18EA00F9 00 D3 00 应答:18EC0000 10 14 00 03 FF 00 D3 00 数据,BYTE1=0x10,表明

jianxuezixuan的博客 1万+

Hive入门(一):Hive Shell的基本操作

Hive入门(一):Hive Shell的基本操作 总结Hive基本的命令行操作 进入Hive部署包的bin目录,在命令行输入./hive启动hive cli。 $ cd /user/home/apache-hive-2.2.0-bin/bin $ ./hive 变量和属性 命名空间 使用权限 描述 hivevar 读/写 用户自定义变量 ...

m0_37324825的博客 1万+

11-16 Fluent结果查看及后处理功能(做动画、监控点)

监控点、面及动画操作

zheaa的博客 1万+

Hive 的SQL基本操作

Hive 的基本操作Hive 数据库操作Hive 数据库表操作 Hive 数据库操作 切换数据库 -- 切换为 myhive 数据库 use myhive; 查看所有的数据库 -- 切换为 myhive 数据库 show databases; 查看数据库的详细信息 -- 查看数据库 myhive 的详细信息 desc database myhive; 创建数据库 -- 创建一个名称为 myhive 的数据库 create database if not exists myhive; 数据库表

半吊子Kyle的博客 3216

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Hive详解——基本操作归纳

文章目录一、Hive基本概念1. 什么是 Hive1)hive 简介2)Hive 本质:将 HQL 转化成 MapReduce 程序2. Hive 的优缺点1)优点2)缺点3. Hive 架构原理4. Hive 和数据库比较1)查询语言2)数据更新3)执行延迟4)数据规模二、Hive安装1. Hive 安装地址2. 安装MySQL3. Hive 安装部署4. Hive 元数据配置到 MySQL5. 启动并使用 Hive1)启动 Hive2)使用 Hive3)Hadoop中查看文件6. 使用元数据服务的方式访

一名小码农的博客 3568

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Hive Shell 基本操作——深入浅出学Hive

目录: 初始Hive Hive安装与配置 Hive 内建操作符与函数开发 Hive JDBC hive参数 Hive 高级编程 Hive QL Hive Shell 基本操作 hive 优化 Hive体系结构 Hive的原理   配套视频课程   第一部分:Hive bin下脚本介绍 Hive bin下

whaoXYSH的专栏 2237

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Hive 基本操作

Hive 基本操作 环境:VMware® Workstation 16 Pro、Ubuntu18.4、Hadoop伪分布式 HiveQL 是 Hive 的查询请言,和 SQL 比较类似,对 Hive 的操作都是通过编写 HiveQL 语句来实现的。接下来介绍一下 Hive 中常用的几个基本操作。 1、create:创建数据库、表、视图 1.1 创建数据库 (1) 创建数据库 hive: hive> create database hive; (2)创建数据库 hive,因为 hive 已经存在,所

皮埃尔的博客 3338

【Hive】Hive基本操作

Hive定义了一套自己的SQL,简称HQL,它与关系型数据库的SQL略有不同,但支持了绝大多数的语句如DDL、DML以及常见的聚合函数、连接查询、条件查询。 1.创建DataBase create database if not exists DB; 在创建库时,应避免新建的库名与已有库名重复,如果库名重复将会报出以下错误(我在已有DB库的前提下,再次创建了DB库)。 2.查看DataBase相关信息 describe database DB; 3.删除DataBase drop database i

weixin_38220799的博客 3884

hive的基本操作

hive的安装在之前已经写了 地址: 一.语法 创建数据库 语法: CREATE DATABASE|SCHEMA [IF NOT EXISTS] <database name> 如: create database if not exists zzti_hive; hive> create database if not exists zzti_h...

养猪少年日记的博客 8812
上一篇: 数据结构 学习笔记
下一篇: 学习笔记2 hive表查询
Neflibata_mo
博客等级 码龄6年 6粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值