
Hive
山高水长~
这个作者很懒,什么都没留下…
展开
-
hive行列转换
hive行专列:将一行数据中的多个字段连接起来形成一列(array),所以行转列的关键是concat()函数 concat(col1,col2,…) 将多个String类型的字符串连接起来 concat_ws(‘分隔符’,col1,col2…) 特殊类型的concat,以指定分隔符的方式将多个字符串连接起来 collect_set(col) :col只能是基本苏剧类型,它将字段进行去重汇总操作,...原创 2019-10-16 00:22:26 · 492 阅读 · 0 评论 -
hive压缩及存储总结
压缩: 各种压缩性能比较 目前,在数仓项目中hive表一般使用snappy格式压缩数据较多。压缩和解压缩速度都比较快。 文件存储格式: 目前hive的存储格式主要有4中;TEXTFILE SEQUENCEFILE ORCFILE 和PARQUET 4中存储格式。在数仓中,hive表一般使用的是ORCFILE。 如果数仓中设置的有缓冲层,缓冲层一般会使用TEXTFILE,因为TEXTFILE格式的...原创 2019-10-15 23:35:58 · 430 阅读 · 0 评论 -
hive存储格式
一 列式存储和行式存储 首先我们看一下一张表的存储格式 1.1 行式存储 1.2 列式存储 1.3列式存储和行式存储的比较 行式存储 优点: #相关的数据是保存在一起,比较符合面向对象的思维,因为一行数据就是一条记录 #这种存储格式比较方便进行INSERT/UPDATE操作 缺点: #如果查询只涉及某几个列,它会把整行数据都读取出来,不能跳过不必要的列读取。当然数据比较少,一般...转载 2019-10-15 22:58:36 · 149 阅读 · 0 评论 -
数仓脚本参数设置
在实际项目中,数仓的脚本基本上都是有分区字段的。在很多日志项目中,按照时间字段(天)分区比较常见。所以在脚本开发的过程中就会涉及到一些参数的设置,动态分区参数和合并小文件参数设置也是用的最多的。 动态分区参数设置 set hive.exec.dynamic.partition = true # 是否打开动态分区,默认false set hive.exec.dynamic.partition.mod...原创 2019-10-11 23:05:20 · 349 阅读 · 0 评论 -
hive面试--hive底层如何存储Null值
1. NULL(null)值创建一个临时表tmp_null_empty_test,并插入一些NULL数据:CREATE TABLE IF NOT EXISTS tmp_null_empty_test( uid string)ROW FORMAT DELIMITEDFIELDS TERMINATED BY ...转载 2019-10-08 23:03:51 · 1534 阅读 · 1 评论 -
hive面试--hive与常见数据库区别以及hive的数据类型
一、hive与常见数据库的区别 hive是数据仓库的基础工具,能够将结构化的数据映射为一张张表从而进行sql操作。 数据存储位置 hive是建立在hadoop的基础之上的,所有hive的数据都是存储在hdfs上;而数据库则可以将数据保存在块设备或者本地文件系统中 数据更新 由于hive是针对数据仓库进行设计的,而数据仓库主要是进行数据分析,即读多写少,所以hive中是不建议对数据进行改写,...原创 2019-10-08 23:53:30 · 1553 阅读 · 0 评论 -
hive动态分区的方式插入数据
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...转载 2019-10-11 20:13:58 · 1095 阅读 · 0 评论