zoukankan      html  css  js  c++  java
  • hive的常用命令操作与数据类型以及hive的严格模式

    1.hive支持四种数据模型

           external table  --外部表:hive中的外部表和表很类似,但是其数据不是放到,内部表可以指向任何目录,删除内部表hdfs目录不删除

           table   --内部表,hive的内部表指向的是以自己表名为目录的目录,建内部表时会在hdfs上自动生成目录

           partition:分区表,要分区的字段也是一个字段,分区在hdfs上可以看到一个分区的目录

            bucked

    2.hive的数据类型

          (1)基本数据类型包括

                 tinyint,  smallint ,   int/integer,  bigint,  float ,  double ,  decimal ,boolean,  binary 

                   a  数字类型

                       分为整数类型,浮点数类型

                  b   hive的字符串类型是

                      string,varchar,char

                      区别string尾部的空格会影响数据的判断

                      varchar尾部的控股会作为字符串的一部分,会影响字符串的比较

                       char是固定长度,尾部的空格不影响字符串的比较

                   c   日期与时间戳

                         timestamp格式为YYYY-MM-DD hh:mm:ss.fffffffff

                         Date格式YYYY-MM-DD格式的日期,其余写法都是错的,

                        如果要带上时分秒,就使用timestamp

           (2)  hive中的复杂类型

                  struct(结构)-->字段存储对象

                  struct类似于java的类变量使用,Hive中定义的struct类型也可以使用点来访问,

                   从文件加载数据时,文件里的数据分隔符要和建表指定的一致

     3.hive的严格校验模式设置参数set hive.mapred.mode=strict;

                设置严格模式可以限制以下几种情况:

                (1)限制执行可能形成笛卡儿积的SQL

                (2)partition表使用时不加分区;

                (3)order by全局排序的时候不加limit的情况;

    4.hive的一些命令

               修改表: alter table s1 rename to s2;

               给表添加分区:  alter table aaa add if not exists partition (dt = '20141117') location '20141117' partition (dt='20141228') location '20141228';

               查看表的详细信息:show create table aaa;

               查看表结构(字段):  desc aaa;

  • 相关阅读:
    python爬虫之MongoDB测试环境安装
    python爬虫之pandas
    python爬虫之正则表达式
    SQL实现递归及存储过程中In()参数传递解决方案[转]
    SET XACT_ABORT 的用法[转]
    SqlServer排序(null值,和非空值排列顺序)
    poi操作excel设置数据有效性
    Oracle:ORA-01791: 不是 SELECTed 表达式
    java poi 合并单元格后边框问题
    java压缩文件出现中文乱码问题
  • 原文地址:https://www.cnblogs.com/simpledu/p/14420449.html
Copyright © 2011-2022 走看看