大数据框架基础Hive数据类型

本章介绍Hive不同的数据类型,用于创建表。Hive所有数据类型分为四种类型,给出如下:

  • 列类型
  • 文字
  • Null 值
  • 复杂类型

列类型

列类型被用作Hive的列数据类型。它们如下:

整型

整型数据可以指定使用整型数据类型,INT。当数据范围超过INT的范围,需要使用BIGINT,如果数据范围比INT小,使用SMALLINT。 TINYINT比SMALLINT小。

下表描述了各种INT数据类型:

类型 后缀 示例
TINYINT Y 10Y
SMALLINT S 10S
INT 10
BIGINT L 10L

字符串类型

字符串类型的数据类型可以使用单引号(”)或双引号(“”)来指定。它包含两个数据类型:VARCHAR和CHAR。Hive遵循C-类型的转义字符。

下表描述了各种CHAR数据类型:

数据类型 长度
VARCHAR 1 to 65355
CHAR 255

时间戳

它支持传统的UNIX时间戳可选纳秒的精度。它支持的java.sql.Timestamp格式“YYYY-MM-DD HH:MM:SS.fffffffff”和格式“YYYY-MM-DD HH:MM:ss.ffffffffff”。

日期

DATE值在年/月/日的格式形式描述 {{YYYY-MM-DD}}.

小数点

在Hive 小数类型与Java大十进制格式相同。它是用于表示不可改变任意精度。语法和示例如下:

  DECIMAL(precision, scale)  decimal(10,0)

联合类型

联合是异类的数据类型的集合。可以使用联合创建的一个实例。语法和示例如下:

  UNIONTYPE<int, double, array<string>, struct<a:int,b:string>>    {0:1}   {1:2.0}   {2:["three","four"]}   {3:{"a":5,"b":"five"}}   {2:["six","seven"]}   {3:{"a":8,"b":"eight"}}   {0:9}   {1:10.0}

文字

下面是Hive中使用的文字中:

浮点类型

浮点类型是只不过有小数点的数字。通常,这种类型的数据组成DOUBLE数据类型。

十进制类型

十进制数据类型是只不过浮点值范围比DOUBLE数据类型更大。十进制类型的范围大约是 -10-308 到 10308.

Null 值

缺少值通过特殊值 – NULL表示。

复杂类型

Hive复杂数据类型如下:

数组

在Hive 数组与在Java中使用的方法相同。

  Syntax: ARRAY<data_type>

映射

映射在Hive类似于Java的映射。

  Syntax: MAP<primitive_type, data_type>

结构体

在Hive结构体类似于使用复杂的数据。

  Syntax: STRUCT<col_name : data_type [COMMENT col_comment], ...>

推荐学习目录Hive教程

发布了83 篇原创文章 · 获赞 0 · 访问量 6645
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览