列类型
Hive支持的数据类型如下:
原生数据类型:
- TINYINT
- SMALLINT
- INT
- BIGINT
- BOOLEAN
- FLOAT
- DOUBLE
- STRING
- BINARY(好像是较高版本才有的类型)
- TIMESTAMP
复合类型:
- arrays:ARRAY<data_type>
- maps:MAP<primitive_type,data_type>
- structs:STRUCT<col_name : data_type>
- union:UNIONTYPE<data_type,data_type,....>
时间戳
支持传统的unix时间戳,可选的纳秒级精度。
支持的转换:
- 整型数值类型:解读为以秒为单位的UNIX时间戳
- 浮动点数值类型:解读为以秒和小数精度为单位的UNIX时间戳。
- 字符串:JDBC兼容的java.sql.Timestamp格式“YYYY-MM-DD HH:MM:SS.fffffffff”(9位小数位精度)
时间戳被解释是与timezone无关,存储为从UNIX纪元的偏移量。提供便利的UDF和时区转换(to_utc_timestamp,from_utc_timestamp)。
所有现有datetime的UDF(月,日,年,小时,等)可以工作于TIMESTAMP数据类型。
Union类型
Union类型可以在同一时间点,保持恰好有一个指定的数据类型。您可以使用create_union的UDF创建一个实例的类型:
CREATE TABLE union_test(foo UNIONTYPE<int, double, array<string>, struct<a:int,b:string>>); SELECT foo FROM union_test; {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}
第一部分,对于union的发序列化来说是一个tag,让它知道哪个union的部分被使用。在例子0,表明声明的第一个数据类型,即是int,其他如此。
创建union,必须提供为create_union UDF提供tag。
SELECT create_union(0, key), create_union(if(key<100, 0, 1), 2.0, value), create_union(1, "a", struct(2, "b")) FROM src LIMIT 2; {0:"238"} {1:"val_238"} {1:{"col1":2,"col2":"b"}} {0:"86"} {0:2.0} {1:{"col1":2,"col2":"b"}}
常量
数值类型
默认,数值类型认为是INT,除非INT超出了INT的范围,那么会被解释为BIGINT,或者是如下的后缀在数值中被使用。
TYPE |
Postfix |
Example |
TINYINT | Y | 100Y |
SMALLINT | S | 100S |
BIGINT | L | 100L |
字符串类型
字符串可以用单引号(')或双引号(“)。Hive在字符串中使用C-Style的转义。
浮点类型
浮点类型数值,被假定为双浮点类型。目前还不支持科学记数法。
NULL值的处理
遗漏的值被代表为特殊值NULL。 要导入NULL字段的数据,需要查阅使用的SerDe的文档。 (默认的文本格式使用LazySimpleSerDe的解释字符串\ N为NULL),如将查询结果输出到文件,若为NULL,则字段值显示为\N
相关推荐
hive数据类型共6页.pdf.zip
05.hive数据类型--复合类型--map类型的使用.mp4
06.hive数据类型--复合类型--struct结构类型的使用.mp4
第 3 章 Hive 数据类型 3.1 基本数据类型 对于 Hive 的 String 类型相当于数据库的 varchar 类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以存储 2GB 的字符数。 3.2 集合...
包含hive和oracle的常用函数对比关系表,可以用于查询hive函数转换成oracle函数,或者oracle函数转换hive函数之间的相互转换。
Hive 做大数据分析,Hive的数据类型大多与Mysql相似,但是它存在自己独特的复杂类型。
第一章 Hive基本概念 第二章 Hive的安装 第三章 Hive数据类型 第四章 DDL数据定义 第五章 DML数据操作 第六章 查询 第七章 函数 第八章 压缩和存储 第九章 企业级调优 第十章 常见错误及解决方案
列举了hive中的复合类型的使用,map array struct
大数据框架组件 含Hadoop、Spark、Flink等大数据书籍 一、Hadoop 1. Hadoop——分布式文件管理... 2.Hive——Hive数据类型 3.Hive——Hive DDL数据定义 4.Hive——Hive DML数据操作 5.Hive——Hive查询
2 Hive支持的数据类型: 2 2.1原子数据类型: 2 2.2复杂数据类型: 2 2.3 Hive类型转换: 3 3 Hive创建/删除数据库 3 3.1创建数据库: 3 3.2 删除数据库: 3 4 Hive 表相关语句 3 4.1 Hive 建表: 3 4.1.1使用LIKE...
1.5 HIVE的数据存储 11 1.6 其它HIVE操作 11 2. HIVE 基本操作 12 2.1 create table 12 2.1.1 总述 12 2.1.2 语法 12 2.1.3 基本例子 14 2.1.4 创建分区 15 2.1.5 其它例子 16 2.2 Alter Table 17 2.2.1 Add ...
(2)hive数据仓库分层设计,包含ODS、DWD、ADS层 (3)sqoop数据迁移,完成HIve与MySQL数据库中的数据交互 (4)Echarts搭建动态可视化大屏 (5)SpringBoot搭建可视化后台系统,完成前端与后台的数据传递与交互。 ...
数据包括运行代码和数据类型,启动hive导入表和数据就可以运行结果
Hive简介:...Hive数据类型: https://blog.csdn.net/weixin_45102492/article/details/91048019 Hive之DDL数据定义: https://blog.csdn.net/weixin_45102492/article/details/91349323 Hive
hive 下dual表,Lock,explain, 数据类型,开发常见的问题
第21章 HIVE 数据类型 80 21.1列类型(Column Type) 80 21.2文本类型(Literals) 81 21.3 Null 值 81 21.4 复杂类型 81 第22章 数据库操作 82 22.1 创建数据库 82 22.2 删除数据库 82 第23章 数据表操作 83 23.1 创建...
Hive数据类型 Java数据类型 长度 例子 TINYINT byte 1byte有符号整数 20 SMALINT short 2byte有符号整数 20 INT int 4byte有符号整数 20 BIGINT long 8byte有符号整数 ...
hive中定义的复杂数据类型导入到es中问题总结