Hive数据类型

参考:中文博客:http://www.cnblogs.com/ggjucheng/archive/2013/01/03/2843448.html
          英文:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types

1、列类型
       TINYINT
       SMALLINT
       INT
       BIGINT
       BOOLEAN
       FLOAT
       DOUBLE
       STRING
       BINARY(Hive 0.8.0以上才可用)
       TIMESTAMP(Hive 0.8.0以上才可用)

2、复合类型
       arrays:ARRAY<data_type>
       maps:MAP<primitive_type,data_type>
       structs:STRUCT<col_name:data_type[COMMENT col_comment],.....>
       union:UNIONTYPE<data_type,data_type,...>

3、时间戳
       支持传统的unix时间戳,可选的纳秒级精度。
       支持的转换:
          1)整型数值类型:解读为以秒为单位的UNIX时间戳
          2)浮动点数值类型:解读为以秒和小数精度为单位的UNIX时间戳。
          3)字符串:JDBC兼容的java.sql.Timestamp格式“YYYY-MM-DD HH:MM:SS.fffffffff”(9位小数位精度)
       注意:
          1)Dates类型在 Hive 0.12.0 版本中引入了。
          2)Decimal类型在 Hive 0.11.0 版本中引入了,并在 Hive 0.13.0 版本修订了。

4、Union类型
        Union类型可以在同一时间点,保持恰好有一个指定的数据类型。

5、常量
        数值类型默认是int,如果数值超出int的范围,就会被解释为bigint。
        数值后面加上后缀表示:

Type 后缀 示例
TINYINT  Y  100Y
SMALLINT  S  100S
BIGINT   L    100L

6、字符串类型
        字符串可以用单引号或双引号。
        注意:
        1)Varchar类型在 Hive 0.12.0 版本中引入了。
        2)Char类型将在 Hive 0.13.0 版本中引入。

7、浮点类型
        浮点类型数值,默认为双浮点类型,目前不支持科学计数法。

8、NULL值
        遗漏的值被代表为特殊值NULL。 要导入NULL字段的数据,需要查阅使用的SerDe的文档。 (默认的文本格式使用LazySimpleSerDe的解释字符串\ N为NULL)

Hive基础之Hive数据类型的更多相关文章

  1. Hive基础之Hive体系架构&运行模式&Hive与关系型数据的区别

    Hive架构 1)用户接口: CLI(hive shell):命令行工具:启动方式:hive 或者 hive --service cli ThriftServer:通过Thrift对外提供服务,默认端 ...

  2. Hive基础之Hive环境搭建

    Hive默认元数据信息存储在Derby里,Derby内置的关系型数据库.单Session的(只支持单客户端连接,两个客户端连接过去会报错): Hive支持将元数据存储在关系型数据库中,比如:Mysql ...

  3. Hive基础之Hive的存储类型

    Hive常用的存储类型有: 1.TextFile: Hive默认的存储类型:文件大占用空间大,未压缩,查询慢: 2.Sequence File:将属于以<KEY,VALUE>的形式序列化到 ...

  4. Hive基础之Hive开启查询列名及行转列显示

    Hive默认情况下查询结果里面是只显示值: hive> select * from click_log; OK ad_101 :: ad_102 :: ad_103 :: ad_104 :: a ...

  5. Hive基础之Hive与关系型数据库的比较

    Hive与关系型数据库的比较     使用Hive的CTL(命令行接口)时,你会感觉它很像是在操作关系型数据库,但是实际上,Hive和关系型数据库有很大的不同.       1)Hive和关系型数据库 ...

  6. Hive基础之Hive表常用操作

    本案例使用的数据均来源于Oracle自带的emp和dept表 创建表 语法: CREATE [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name ...

  7. Hive基础之Hive是什么以及使用场景

    Hive是什么1)Hive由facebook开源,构建在Hadoop (HDFS/MR)上的用于管理和查询结果化/非结构化的数据仓库:2)一种可以存储.查询和分析存储在Hadoop 中的大规模数据的机 ...

  8. Hive基础之Hive的复杂类型

    ARRAY 一组有序字段,字段的类型必须相同.Array(1,2) create table hive_array(ip string, uid array<string>) row fo ...

  9. Hive基础(1)

    Hive基础(1) Hive的HQL(2) 1. Hive并不是分布式的,它独立于机器之外,类似于Hadoop的客户端. 2. 元数据和数据的区别,前者如表名.列名.字段名等. 3. Hive的三种安 ...

随机推荐

  1. s6-4 TCP 数据段

    传输控制协议  TCP (Transmission Control Protocol) 是专门为了在不可靠的互联网络上提供可靠的端到端字节流而设计的  TCP必须动态地适应不同的拓扑.带宽.延迟. ...

  2. huffman树实现的压缩算法,java

    1.树的构建 package huffman; public abstract class BinaryTreeBasis { protected TreeNode root; public Bina ...

  3. Go的Get命令兼容公司Gitlab仓库的HTTP协议

    对于公司的私有Gitlab仓库,没有对https支持,在使用最新版本的go get命令时,需要使用-insecure参数来支持http,但如果导入的包里边依赖了需要https的仓库,就不好使了,折腾了 ...

  4. 初识Java Servlet

    Java Servlet是什么? Servlet的本质就是一个Java接口,之所以能生成动态的Web内容,是因为对客户的一个HTTP请求,Servlet通过接口这个规范重写了其中的方法,然后Web服务 ...

  5. 一窍懂PID

    这是学习PID时的理解,做个笔记! 一:首选,说一下一些基本概念,为了更好理解. PID:就是对输入偏差进行比例积分微分运算,运算的叠加结果去控制执行机构. P(proportion):比例,就是对输 ...

  6. 自定义导航栏 tabBarController 笔记

    #import "LeeNavigationController.h" @interface LeeNavigationController () @end @implementa ...

  7. Python基础理论 - 常用模块

    time模块:时间戳.时间字符串.时间对象以及如何转换 random模块:随机小数.整数.区间,随机列表元素,打散列表 os模块:与操作系统交互的一个接口,os.path操作文件的路径 sys模块:s ...

  8. Asp.net Security框架(2)

    Asp.net 的Security框架除了提供Cookies,OAuth,ActiveDirectory等多个用户认证实现,基本上已经满足业务项目的开发需要了. 当需要实现OAuth2.0服务器端实现 ...

  9. Postman+Newman+jenkins实现API自动化测试

    最近自己在学习用postman+newman+jenkins实现API自动化测试,这里做个回顾和记录.(此次是在windows上进行的环境搭建) 一.说明 1.大致思路:利用postman做接口调试所 ...

  10. 使用C++版本Mxnett进行预测的注意事项

    现在越来越多的人选择Mxnet作为深度学习框架,相应的中文社区非常活跃,而且后面推出的gluon以及gluoncv非常适合上手和实验,特别是gluoncv中提供了非常多.非常新的预训练model zo ...