Hive数据类型汇总
目录
- 1 背景介绍
- 2 Hive数据类型
- 2.1 基本数据类型
- 2.2 集合数据类型
- 2.3 类型转换
- 3 总结
1 背景介绍
Hive是一个基于Hadoop的开源数据仓库工具,用于存储(HDFS)和处理(MapReduce或Spark)海量结构化数据,大多数公司都应用到Hive。
在实际数据开发过程中,同时会应用到编程语言Java以及数据库Mysql或者Oracle,大家都知道这几项大数据技术栈都存在数据类型,但是各自数据类型又大同小异,在实际建表的过程中经常容易混淆,因此需要弄清楚这些差异。
鉴于数仓建表时Hive使用频率较高,今天重点介绍Hive数据类型,便于大家更好的掌握。
2 Hive数据类型
2.1 基本数据类型
相关说明:
1). 本文重点介绍与Java数据类型对应关系,具体对应关系参考上图。
2). 在实际创建Hive表时,一般数值类型用int(不存在小数)或者decimal(存在小数),字符串类型用string,时间类型用timestamp,日期类型用date,其他Hive类型使用较少。
3). DECIMAL类型用于表示任意精度的小数,主要用来表示货币数值。精度指明非标度值的位数,标度指小数点右侧的位数。如DECIMAL(5,2) 范围区间-999.99到999.99,DECIMAL(5)范围区间-99999 到 99999。精度省略,默认值为10,即DECIMAL等价于DECIMAL(10,0)。
4). STRING是一个无最大长度声明的变长字符串,理论上最多存储2GB的字符数;VARCHAR需要声明最大长度(范围在1到65355之间);CHAR是固定长度字符串,如有必要则以空格填充尾部,当CHAR值被用于字符串比较操作时,忽略尾部空格。
2.2 集合数据类型
相关说明:
1). 集合数据类型在实际工作中使用较少。
2.3 类型转换
Hive的原子数据类型是可以进行隐式转换的,类似于Java的类型转换,例如某表达式使用INT类型,TINYINT会自动转换为INT类型,但是Hive不会进行反向转化,例如,某表达式使用TINYINT类型,INT不会自动转换为TINYINT类型,它会返回错误,除非使用CAST操作。
2.3.1.隐式类型转换规则如下
(1)任何数值类型都可以隐式地转换为一个范围更广的类型或者文本类型(STRING、VARCHAR、CHAR),如TINYINT可以转换成INT,INT可以转换成BIGINT。
(2)所有整数类型、FLOAT和文本类型都可以隐式地转换成DOUBLE。
(3)TINYINT、SMALLINT、INT都可以转换为FLOAT。
(4)BOOLEAN类型不可以转换为任何其它的类型。
(5)TIMESTAMP和DATE可以被隐式转换为文本类型。
2.3.2.可以使用CAST操作显示进行数据类型转换
例如CAST(‘1’ AS INT)将把字符串’1’ 转换成整数1;如果强制类型转换失败,如执行CAST(‘X’ AS INT),表达式返回空值 NULL。
3 总结
以上就是对hive数据类型的完整总结,需要结合实际业务场景选择对应数据类型,希望对大家有所帮助!
Hive数据类型汇总相关推荐
- hive mysql类型,(二)Hive数据类型、数据定义、数据操作和查询
1.数据类型 1.1 基本数据类型Hive数据类型长度例子TINYINT1byte有符号整数20 SMALINT2byte有符号整数20 INT4byte有符号整数20 BIGINT8byte有符号整 ...
- Hive常见问题汇总
参考资料: Hive常见问题汇总 啟動hive出錯,提示沒有權限 2015年04月02日 09:58:49 阅读数:31769 这里小编汇集,使用Hive时遇到的常见问题. 1,执行#hive命令进 ...
- Hive——Hive数据类型
1.基本数据类型 Hive数据类型 Java数据类型 长度 例子 TINYINT byte 1byte有符号整数 20 SMALINT short 2byte有符号整数 20 INT int 4byt ...
- hive 数据类型 java_Hive数据类型
第3章Hive数据类型 3.1基本数据类型 Hive数据类型 Java数据类型 长度 例子 TINYINT byte 1byte有符号整数 20 SMALINT short 2byte有符号整数 20 ...
- 谈笑间学会大数据-Hive数据类型和文件格式
Hive数据类型和文件格式 目录 Hive数据类型和文件格式 Hive数据类型 数据类型的意义 hive基本数据类型 集合数据类型 文本文件数据编码 读时模式 hive存储格式类型 Hive数据类型 ...
- Hive数据类型、数据库相关操作、表的相关操做、数据的导入导出
文章目录 Hive数据类型 1.基本数据类型 2.集合数据类型 案例实操 3.类型转化 数据库的相关操作 1.创建数据库 2.查询数据库 3.修改数据库 4.删除数据库 表的相关操作 1.建表 2.管 ...
- Hive数据类型和使用注意事项详解
了解Hive数据类型 ,是Hive编程的基础.使用hive建表,首先要明白hive常用的数据类型有哪些,可以存储哪些类型的数据.其实Hive支持关系型数据库中的大多数基本数据类型,且同时支持关系型数据 ...
- python 数据类型汇总
python 数据类型汇总 本文将系统总结python五:列表类型类型:字典,集合,元组,字符串,以便整体复习与掌握. 名称 属性 创建方式 与其他数据类型的转换 相关操作以及函数与方法名 列表 可变 ...
- hive数据类型及转换
1 hive 数据类型 1.1 基本数据类型 对于 Hive 的 String 类型相当于数据库的 varchar 类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以 ...
最新文章
- ubuntu修改新增用户的目录_Ubuntu 18.04下创建新用户/目录、修改用户权限及删除用户的方法...
- Metrics.NET源码阅读笔记
- Python批量修改文件格式
- 大数据时代 树大数据意识
- 王宏计算机系,王宏健(副教授)
- OSChina 周三乱弹——节前综合症来袭,简直无法抵抗了
- 域乎曹胜虎:传统互联网“生病”了
- Windows-server-2008-R2安装Oracle-11g-R2-dataguard
- ROS入门笔记(十二):动作编程 (C++)
- 移动端的注册登录设计灵感!
- 思科将技术团队拆分为四块:安全、物联网、云与网络
- docker阿里云加速器
- 冰点还原精灵密钥可以用多少台电脑
- 如何提高软件测试效率
- cocos 修改层级_管理节点层级和显示顺序
- 飞行器中传感器测量原理及测量模型
- 树莓派CM4开机准备开发环境
- 微信添加地址时选择地区功能是怎么实现的
- Vue实现仿微信,如飘柔般顺滑的页面转场动画
- 低代码、端到端,一小时构建IoT示例场景,声网发布灵隼物联网云平台