hive
文章平均质量分 87
weiha666
Geeker
展开
-
Hive3新特性
Hive ACID v2SQL兼容性约束和代理键物化视图 Hive ACID v2Hive3的ACID v2相比Hive2的ACID v1,对很多事务的特性进行了优化升级,使之更接近于关系型数据库。使用ACID语义修改现有Hive表数据,包括insert, update, delete, merge支持数据库四大特性, Atomicity, Consistency, Isolation, Durability允许在使用长时间运行的分析查询同时进行并发更新。使用MVCC(Multi-Version转载 2021-08-27 09:47:10 · 681 阅读 · 0 评论 -
hive优化之数据倾斜
什么是数据倾斜map reduce程序执行时,reduce节点大部分执行完毕,但是有一个或者几个reduce节点运行很慢,导致整个程序的处理时间很长,进度条卡在99%这里很久。(spark 程序也是类似,某几个task处理的数据明显比其他task多,而且时间很久)这是因为某一个key的条数比其他key多很多(有时是百倍或者千倍之多),这条key所在的reduce节点所处理的数据量比其他节点就大很...原创 2019-12-24 18:15:55 · 188 阅读 · 0 评论 -
hive文件的存储格式
列式存储和行式存储上图左边为逻辑表,右边第一个为行式存储,第二个为列式存储。行存储的特点: 查询满足条件的一整行数据的时候,列存储则需要去每个聚集的字段找到对应的每个列的值,行存储只需要找到其中一个值,其余的值都在相邻地方,所以此时行存储查询的速度更快。行存适用于对几行或者多行的操作(查询或者更新)。列存储的特点:因为每个字段的数据聚集存储,在查询只需要少数几个字段的时候,能大大减少读取的...原创 2019-12-24 16:18:59 · 255 阅读 · 0 评论 -
hive使用动态分区插入数据详解
往hive分区表中插入数据时,如果需要创建的分区很多,比如以表中某个字段进行分区存储,比如etl_dt 、dat_dt日期 (格式为yyyyMMdd 或者yyyy-MM-dd这样)。每天落盘的数据会对应hdfs的一个目录。hive提供了一个动态分区功能,其可以基于查询参数的位置去推断分区的名称。1.创建一个单一字段分区表hive> create table dpartition(i...原创 2019-12-24 14:58:27 · 2420 阅读 · 0 评论 -
真正让你明白Hive参数调优系列2:如何控制reduce个数与参数调优
相比map个数的控制复杂性,reduce个数的设定要相对简单多了,reduce的个数一般最后决定了输出文件的个数,二者相等,如果想多输出文件的个数(这样文件变小,但有可能程序变慢),那么可以人为增加reduce个数。如果想减少文件个数,也可以手动较少reduce个数(同样可能程序变慢)。但实际开发中,reduce的个数一般通过程序自动推定,而不人为干涉,因为人为控制的话,如果使用不当很容易造成结果...原创 2019-12-24 10:08:27 · 1675 阅读 · 1 评论 -
真正让你明白Hive参数调优系列1:控制map个数与性能调优参数
...转载 2019-12-24 09:53:20 · 888 阅读 · 0 评论 -
hive on mr参数配置
MR参数:set mapreduce.job.queuename=queue_name; #设置作业提交队列set hive.execution.engine=mr; #设置计算引擎set mapreduce.map.memory.mb=4096; #设置map内存set mapreduce...原创 2019-12-23 20:01:58 · 2263 阅读 · 1 评论 -
hive on spark参数配置
hive on Spark参数:set spark.master=yarn-cluster; #设置spark提交模式set hive.execution.engine=spark; #设置计算引擎set spark.yarn.queue=queue_name; #设置作业提交队列set spa...转载 2019-12-23 19:59:13 · 2910 阅读 · 1 评论