Hive学习之三 《Hive的表的详解和应用案例详解》
一、Hive的表
Hive的表分为内部表、外部表和分区表。
1、内部表,为托管表。
2、外部表,external。
3、分区表。
详解:
内部表,删除表的时候,数据会跟着删除。
外部表,在删除表的时候,数据不会跟着删除。
默认分隔符:列 为 \001 行分隔符为 \n
分区表:
1、解决查询效率,不全表查询,只查对应的分区。
2、避免数据重复的问题,即数据质量方面安全。
create table tablename (
字段1 字段类型 ,
字段2 字段类型 ) PARTITIONED BY (分区1 分区类型1,分区2 分区类型2)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
二、hive的配置文件。
/etc/hive/conf 下:
hive-env.sh 设置环境变量相关
hive-site.xml:属性参数配置。
Hadoop的配置文件路径:
/etc/hadoop/conf
三、hive的核心操作语句。
insert和select。
insert数据的时候必须指定分区,不指定分区就报错。
查询的时候带分区范围,比如:分区1=’’
不懂建表,看步骤一。
1、insert的两种方式:
①append 是一种追加方式,基本不是特别常用。
②overwrite 是一种覆盖方式,操作方式为先删除,后插入。相对企业来说,安全级别高。
Load文件:加载文件到hive表。
①我们先在本地建立一个文件夹,用来存储需要加载的文件,比如
mkdir /opt/muzi/test
通过rz操作,上传需要加载的文件。
load语法:
LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]
应用案例代码:
推荐使用[OVERWRITE]
LOAD DATA LOCAL INPATH '/opt/muzi/text/文件1' overwrite INTO TABLE tablename PARTITION (分区1='分区的东东(比如时间什么的)');
2、查询语句
语法很简单
select 字段名 from tablename where 分区1='分区数据' limit n行数据;
Hive学习之三 《Hive的表的详解和应用案例详解》的更多相关文章
- hive学习(三) hive的分区
1.Hive 分区partition 必须在表定义时指定对应的partition字段 a.单分区建表语句: create table day_table (id int, content string ...
- hive学习(二) hive操作
hive ddl 操作官方手册https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL hive dml 操作官方手 ...
- hive学习笔记_hive的表创建
创建hive表注意事项 一.表分隔符必须与读取的数据文件一致,比如例子的分隔符为 '\t'(制表符),hive下默认分隔符是制表符. 二.最好指定分区作为数据之间的区分. 三.创建完表可以desc+表 ...
- hive学习04-员工部门表综合案例
知识点: 格式转换:cast(xxx as int) 按某列分桶某列排序,排序后打标机:例如:求每个地区工资最高的那个人的信息: ROW_NUMBER() OVER(PARTITION BY COLU ...
- 【Hive学习之三】Hive 函数
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 apache-hive-3.1.1 ...
- hive学习5(复制表结构)
hive复制表结构 CREATE TABLE new_table LIKE old_table; 例:创建一个和stg_job表一样表结构的s_job表 create table s_job like ...
- Hive学习:Hive连接JOIN用例详解
1 准备数据: 1.1 t_1 01 张三 02 李四 03 王五 04 马六 05 小七 06 二狗 1.2 t_2 01 11 03 33 04 44 06 66 07 77 08 88 1.3 ...
- hive学习(四) hive的函数
1.内置运算符 1.1关系运算符 运算符 类型 说明 A = B 所有原始类型 如果A与B相等,返回TRUE,否则返回FALSE A == B 无 失败,因为无效的语法. SQL使用”=”,不使用”= ...
- Hive学习笔记——Hive中的分桶
对于每一个表(table)或者分区, Hive可以进一步组织成桶,也就是说桶是更为细粒度的数据范围划分.Hive也是针对某一列进行桶的组织.Hive采用对列值哈希,然后除以桶的个数求余的方式决定该条记 ...
随机推荐
- Qt入门(8)——事件和事件过滤器
在Qt里,一个事件是继承自QEvent的对象.事件通过调用QObject::event(),被发送到继承自 QObject 的对象.事件发送就是一个事件已经产生,由 QEvent正好去表达,且QObj ...
- C语言基础课程 第一课 Linux环境配置小实战httpserver
网段我需要改成如下 10.重启网络服务 并且查看ip 11. 打开windows的浏览器数人Linux的IP地址出现REDHAT的欢迎界面 11.进入目录 12.编写一个简单的html脚本 13 ...
- HDU 5889 Barricade 【BFS+最小割 网络流】(2016 ACM/ICPC Asia Regional Qingdao Online)
Barricade Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total S ...
- 加密解密,CryptoStream()的使用
一:上图 二:代码 主界面代码 using System; using System.Collections.Generic; using System.ComponentModel; using S ...
- cache的工作原理
http://www.360doc.com/content/11/0307/21/3791508_99049437.shtml TLB(Translation Lookaside Buffer,也称快 ...
- bzoj2124 等差子序列(hash+线段树)
2124: 等差子序列 Time Limit: 3 Sec Memory Limit: 259 MBSubmit: 719 Solved: 261[Submit][Status][Discuss] ...
- hdu 4681 最长公共子序列+枚举
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4681 #include<cstdio> #include<cstring> # ...
- [转载]Linux服务器性能评估与优化
转载自:Linux服务器性能评估与优化 一.影响Linux服务器性能的因素 1. 操作系统级 CPU 内存 磁盘I/O带宽 网络I/O带宽 2. 程序应用级 二.系统性能评估标准 影响性 ...
- Simpsons’ Hidden Talents - HDU 2594(求相同的前缀后缀)
题目大意:给你两个字符串,找出一个最大的子串,这个子串要是前面串的前缀并且是后面串的后缀........... 分析:next的简单运用吧,可以把两个串进行合并,中间加一个不能被匹配的字符,然后求 ...
- 「书评」SAP内存计算——HANA
因为工作关系,长期跟SAP打交道,所以去年就对HANA有了一些了解,只是公司目前的应用规模还较小,暂时没有上马HANA的打算,但是提前作一些学习还是很有必要的.正好清华大学出版社最近出版了这本< ...