Hive支持无符号数字数据类型

时间:2017-03-02 15:34:19

标签: hadoop types hive

我试图将通常为无符号整数和无符号Bigint的数据加载到hive表中。根据Hive文档,我看到它只支持有符号整数和带符号的大整数

  

INT / INTEGER(4字节有符号整数,从-2,147,483,648到   2,147,483,647)BIGINT(8字节有符号整数,来自   -9,223,372,036,854,775,808至9,223,372,036,854,775,807)

有没有办法将无符号数值(tinyint,smallint,int,bigint)存储到Hive表中?

1 个答案:

答案 0 :(得分:2)

短篇小说:摘自Hive documentation关于DECIMAL数据类型

  

Hive中的DECIMAL类型基于Java的BigDecimal   用于表示不可变的任意精度十进制数   ... 限制为38位 ...

从Hive 0.13用户可以指定   创建表格时的比例和精度 ...¤如果   未指定比例,默认为0(无小数位数)
  ¤如果未指定精度,则默认为10.

  必须使用DECIMAL(38,0)处理大于BIGINT的积分文字。 Postfix BD 是必需的......

所以DECIMAL肯定是您要查找的数据类型。