Hive 入门


Hive 入门讲解


  在开始阅读之前让我们喊出口号:“要想人前显贵,就要人后受罪!”加油嘎嘣儿,加油所有想获得美好未来的你!

  学习方法:
         1.是什么
         2.干什么的
         3.原理是什么
         4.怎么用
         5.如果出现错误有几种,怎么去解决
Hive是什么
  Hive 是一个数据仓库,提供SQL语句查询,能够将SQL转化为MapReduce任务运行,减少对MR代码的书写。
Hive能够用来干什么
   能够用来对海量数据进行存储,并且对数据进行查询和离线分析(和Mysql相比 Hive不支持对大量数据的增删改,对数据进行计算,然而Mysql是对数据进行大量的增删改查)。
Hive的原理
  在这里插入图片描述
首先通过用户接口(CUI,WEBUI,JDBC/ODBC)将编写的sql语句传入到Driver,Driver对sql语句进行解释,编译,优化 紧接着对sql语句进行执行,将执行任务发送到Hadoop集群,Hadoop集群对改Mr任务进行处理。
Hive 中对表的操纵

  1. 查看表的结构:desc tablename;

  2. 查看标的详细信息: desc extended tablename;

  3. 查看标的创建信息: show create table tablename;

  4. 在使用Hive时首先要将符合文件映射要求的文件加载/user/hive/warehouse/tableName.

    加载的方式
    a. load data local inpath “/root/test.txt” overwrite into table tableName;
    b. load data inpath “/root/test.txt” into table tableName;
    (local 是虚拟机本地文件,如果不加 local 就是hdfs 文件,将hdfs目录下对应的文件移动至hive仓库目录下,写overwrite就是把以前加载的数据清空再写入数据,反之就是在原来的表中对数据进行追加,并将这些元数据(元数据包括表对应的文件路径,表的列与分区,表的创建时间,文件大小等属性,保存到关系型数据库)

 5.修改表的名字:alter table tableName rename to newTableName;

 6.修改表的列:alter table tableName change column old new colType;
 7.增加列的字段 alter table tableName add columns(col colType…);(hive 中不能减少列,但提供全部替换的方式来达到减少的效果)
 8.替换表的字段 alter table tableName replace columns( col colType…)
Hive中对表的分类以及区别

1.内部表
  Hive会控制表中的数据的声明周期,当删除一张管理表的时候,同时也会删除表中的数据,内部表中的数据不能够与其他工具共享。
2.外部表
  Hive只控制元数据,当删除一张外部表的时候,只会删除元数据,并不会删除真实的数据,外部表的数据可以与其他工具共享。
Hive表中的数据类型
1.简单数据类型:Tinyint,Smalint int Bigint Boolean Float Double String TimesTamp
2.复杂数据类型:STRUCT MAP ARRAY

eg:CREATE TABLE complex(
id int,
name string,
age int,
favorite array,
girl map<string,string>,
address structprovince:string,city:string,country:string)…

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值