一、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的表的详解和应用案例详解》的更多相关文章

  1. hive学习(三) hive的分区

    1.Hive 分区partition 必须在表定义时指定对应的partition字段 a.单分区建表语句: create table day_table (id int, content string ...

  2. hive学习(二) hive操作

    hive   ddl 操作官方手册https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL hive  dml 操作官方手 ...

  3. hive学习笔记_hive的表创建

    创建hive表注意事项 一.表分隔符必须与读取的数据文件一致,比如例子的分隔符为 '\t'(制表符),hive下默认分隔符是制表符. 二.最好指定分区作为数据之间的区分. 三.创建完表可以desc+表 ...

  4. hive学习04-员工部门表综合案例

    知识点: 格式转换:cast(xxx as int) 按某列分桶某列排序,排序后打标机:例如:求每个地区工资最高的那个人的信息: ROW_NUMBER() OVER(PARTITION BY COLU ...

  5. 【Hive学习之三】Hive 函数

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 apache-hive-3.1.1 ...

  6. hive学习5(复制表结构)

    hive复制表结构 CREATE TABLE new_table LIKE old_table; 例:创建一个和stg_job表一样表结构的s_job表 create table s_job like ...

  7. 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 ...

  8. hive学习(四) hive的函数

    1.内置运算符 1.1关系运算符 运算符 类型 说明 A = B 所有原始类型 如果A与B相等,返回TRUE,否则返回FALSE A == B 无 失败,因为无效的语法. SQL使用”=”,不使用”= ...

  9. Hive学习笔记——Hive中的分桶

    对于每一个表(table)或者分区, Hive可以进一步组织成桶,也就是说桶是更为细粒度的数据范围划分.Hive也是针对某一列进行桶的组织.Hive采用对列值哈希,然后除以桶的个数求余的方式决定该条记 ...

随机推荐

  1. 修改css

    .content{ height: 100%; } .con{ border: 1px solid #eeeeee; display: inline-block; width:86.8%; ##修改这 ...

  2. 根据div 标签 查看数组@class=modulwrap 下面的/table/tbody/tr/td

    <div class="modulwrap"> <div class="request_title"> <span class=& ...

  3. -_-#【jQuery】data

    .data() <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <t ...

  4. Linux Shell编程(7)——变量赋值

    =赋值操作符(它的左右两边不能有空白符) 不要搞混了=和-eq,-eq是比赋值操作更高级的测试.注意:等于号(=)根据环境的不同它可能是赋值操作符也可能是一个测试操作符.例子:简单的变量赋值 #!/b ...

  5. 安装zabbix2.2.3

    系统版本:CentOS 6.3_x86_64 zabbix版本:zabbix-2.2.3 zabbix服务端IP:172.16.10.72 1.yum安装LAMP环境 # yum -y install ...

  6. CodeForce 7 B - Memory Manager(模拟)

    题目大意:给你一段内存,要你进行如下的三个操作. 1.分配内存  alloc   X ,分配连续一段长度为X的内存. 如果内存不够应该输出NULL,如果内存够就给这段内存标记一个编号. 2.擦除编号为 ...

  7. oracle 表查询(1)

    oracle 表基本查询 介绍在我们讲解的过程中我们利用scott 用户存在的几张表(emp,dept)为大家演示如何使用select语句,select 语句在软件编程中非常有用,希望大家好好的掌握. ...

  8. Delphi NativeXml用法攻略

    NativeXml用法攻略 NativeXml可以在官网上下载,下载后将文件夹放在指定地方,打开DELPHI在其环境变量中引用NativeXml路径,然后在程序中引用NativeXml单元,我们就可以 ...

  9. Ubuntu下安装Skyeye

    ubuntu12下安装skyeye1.3.2 1.首先安装skyeye的依赖包,比如gtk的依赖,一般Ubuntu 都默认安装了,稳妥起见,运行下面的代码: sudo apt-get install ...

  10. poj1026

    题目大意:暗号 Bod 和 Alice 计划使用一种全新的编码方案,令人惊讶的是这不是一个公开的公匙密码,但是他们的编码基于密匙,在Philadelphia on February 16th他们的会议 ...