Hive 数据类型

Hive 数据类型

操作符

  • 算术操作符

    运算符作用
    + 加法
    - 减法
    * 乘法
    / 或 DIV 除法
    % 或 MOD 取余
  • 比较操作符

    符号描述备注
    = 等于  
    <>, != 不等于  
    > 大于  
    < 小于  
    <= 小于等于  
    >= 大于等于  
    BETWEEN 在两值之间 >=min&&<=max
    NOT BETWEEN 不在两值之间  
    IN 在集合中  
    NOT IN 不在集合中  
    <=> 严格比较两个NULL值是否相等 两个操作码均为NULL时,其所得值为1;而当一个操作码为NULL时,其所得值为0
    LIKE 模糊匹配  
    REGEXP 或 RLIKE 正则式匹配  
    IS NULL 为空  
    IS NOT NULL 不为空  
  • 逻辑操作符

    运算符号作用
    NOT 或 ! 逻辑非
    AND 逻辑与
    OR 逻辑或
    XOR 逻辑异或
  • 位操作符

    运算符号作用
    & 按位与
    | 按位或
    ^ 按位异或
    ! 取反
    << 左移
    >> 右移

数字类型

类型长度备注
TINYINT 1字节 有符号整型
SMALLINT 2字节 有符号整型
INT 4字节 有符号整型
BIGINT 8字节 有符号整型
FLOAT 4字节 有符号单精度浮点数
DOUBLE 8字节 有符号双精度浮点数
DECIMAL -- 可带小数的精确数字字符串

日期时间类型

类型长度备注
TIMESTAMP -- 时间戳,内容格式:yyyy-mm-dd hh:mm:ss[.f...]
DATE -- 日期,内容格式:YYYY­MM­DD
INTERVAL -- --

字符串类型

类型长度备注
STRING -- 字符串(推荐)
VARCHAR 字符数范围1 - 65535 长度不定字符串
CHAR 最大的字符数:255 长度固定字符串

混杂类型

类型长度备注
BOOLEAN -- 布尔类型 TRUE/FALSE
BINARY -- 字节序列(几乎不用)

复合类型

类型长度备注
ARRAY -- 包含同类型元素的数组,索引从0开始 ARRAY<data_type>
MAP -- 字典 MAP<primitive_type, data_type>
STRUCT -- 结构体 STRUCT<col_name : data_type [COMMENT col_comment], ...>
UNIONTYPE -- 联合体 UNIONTYPE<data_type, data_type, ...>

在大数据系统中,不遵循标准格式的一个好处就是可以提供更高吞吐量的数据。当处理的数据的数量级是T 或者P 时,以最少的"头部寻址"来从磁盘上扫描数据是非常必要的。

按数据集进行封装的话可以通过减少寻址次数来提供查询的速度。而如果根据外键关系关联的话则需要进行磁盘间的寻址操作,这样会有非常高的性能消耗。

 

posted @ 2021-12-14 20:32  追こするれい的人  阅读(71)  评论(0编辑  收藏  举报