大数据技术 Hadoop学习(15):Hive表操作
沉沙 2018-10-08 来源 : 阅读 1718 评论 0

摘要:本篇教程探讨了大数据技术 Hadoop学习(15):Hive表操作,希望阅读本篇文章以后大家有所收获,帮助大家对大数据技术的理解更加深入。

本篇教程探讨了大数据技术 Hadoop学习(15):Hive表操作,希望阅读本篇文章以后大家有所收获,帮助大家对大数据技术的理解更加深入。

<



         上一篇,我们介绍了Hive和对其进行了安装,下面我们就初步的使用hive进行讲解。

       下面我们开始介绍hive的创建表,修改表,删除表等。

创建表

    一:Hive Client

      在Terminal输入hive命令需要安装Hive Client。
    二:进入

      切换用户,进入hive

    su hdfs
    hive

      
    三:创建表

      语法:

    CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name

      [COMMENT database_comment]

      [LOCATION hdfs_path]

      [WITH DBPROPERTIES (property_name=property_value, ...)];

      例子:

    create table student (
      id             int,
      name       string,
      openingtime        string
    );

     
    四:创建带有分区的表

          介绍:

      一个表可以拥有一个或者多个分区,每个分区以文件夹的形式单独存在表文件夹的目录下。分区是以字段的形式在表结构中存在,通过describe table命令可以查看到字段存在,但是该字段不存放实际的数据内容,仅仅是分区的表示。在Hive Select查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作。有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念。表中的一个 Partition 对应于表下的一个目录,Partition 就是辅助查询,缩小查询范围,加快数据的检索速度和对数据按照一定的规格和条件进行管理。

      语法:
    复制代码

    create table table_name (

      id                int,

      dtDontQuery       string,

      name              string

    )

    partitioned by (date string)

    复制代码

      例子:
    复制代码

    create table score (

      id                int,

      studentid       int,

      score              double

    )

    partitioned by (openingtime string);

    复制代码

     

查看表

    一:查看所有表

    show tables;

    二:查看某个表信息

      我们通过Desctribe来显示某个表的信息

      语法:
    复制代码

    DESCRIBE DATABASE [EXTENDED] db_name;

    DESCRIBE SCHEMA [EXTENDED] db_name;     -- (Note: Hive 0.15.0 and later)

    ---------------------------------------------------------------------------------

    DESCRIBE [EXTENDED|FORMATTED]  

      [db_name.]table_name[.col_name ( [.field_name] | [.'$elem$'] | [.'$key$'] | [.'$value$'] )* ];

                                            -- (Note: Hive 1.x.x and 0.x.x only)

                                            -- (see "Hive 2.0+: New Syntax" below)

    复制代码

      例子:

    DESCRIBE student;

    DESCRIBE score;

    三:查看某列信息

    DESCRIBE student.id;

     

修改表

    一:改表名

      语法:

    ALTER TABLE table_name RENAME TO new_table_name;

      例子:

    alter table student rename to student1;

    二:修改列

      语法:

    ALTER TABLE table_name [PARTITION partition_spec] CHANGE [COLUMN] col_old_name col_new_name column_type

      [COMMENT col_comment] [FIRST|AFTER column_name] [CASCADE|RESTRICT];

      例子:

    alter table student1 change name name1 string;

     
    三:增加/替换列

      语法:

    ALTER TABLE table_name [PARTITION partition_spec]

      ADD|REPLACE COLUMNS (col_name data_type [COMMENT col_comment], ...)

      [CASCADE|RESTRICT]

      例子:

    alter table student1 add columns (sex int);

删除表

    一:删除表

      语法:

    DROP (DATABASE|SCHEMA) [IF EXISTS] database_name [RESTRICT|CASCADE];

      例子:

    drop table score;

    --------------------------------------------------------------------

      到此,本章节的内容讲述完毕。
   

本文由职坐标整理发布,学习更多的大数据技术相关知识,请关注职坐标大技术云计算大技术技术频道!

本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved