Hive的严格模式,动态分区,排序,事务,调优

2024-05-13 12:38

本文主要是介绍Hive的严格模式,动态分区,排序,事务,调优,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

.Hive的严格模式

Hive提供了一个严格模式,可以防止用户执行那些产生意想不到的不好的影响的查询。

想想看在那么大的数据量的前提下,如果我们在分区上表上使用查找所有,或是使用了笛卡尔积查询数据等等不良情况,那得花费我们多少时间和资源成本,Hive在默认情况下会开启一种模式,叫做严格模式,来限制我们这些不良操作。

其中在hive-site.xml的配置文件中,设置了属性来进行全局的配置

对于全局的配置,我们可以修改这些属性,也可以采用临时会话的形式,使用set 属性=值的形式来进行修改,只不过只在当前会话有效。

使用了严格模式之后主要对以下3种不良操作进行控制:

1.分区表必须指定分区进行查询。
2.order by时必须使用limit子句。

3.不允许笛卡尔积。

2.Hive的动态分区

之前我们介绍过了分区表,并且查看了分区表的存储结构(分区表是目录),并且像分区表里面存储了数据。我们在进行存储数据的时候,都是明确的指定了分区。在这个过程中Hive也提供了一种比较任性化的操作,就是动态分区,不需要我们指定分区目录,Hive能够把数据进行动态的分发,例如2018年的数据,就让他进入2018年分区目录下,2017年的数据,就让他进入2017的目录下。使用动态分区的时候,我们需要将当前的严格模式设置成非严格模式,否则不允许使用动态分区

$hive>set hive.exec.dynamic.partition.mode=nonstrict//设置非严格模式

//设置动态分区的语法如下所示:

 

$hive>insert into t5 partition(country,province) select (包含分区的字段信息就可以) from orders;

//用到的相关的表

hive> CREATE TABLE t5(id int,price int) PARTITIONED BY (country string, province string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' ;

这篇关于Hive的严格模式,动态分区,排序,事务,调优的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/985729

相关文章

如何开启和关闭3GB模式

https://jingyan.baidu.com/article/4d58d5414dfc2f9dd4e9c082.html

十四、观察者模式与访问者模式详解

21.观察者模式 21.1.课程目标 1、 掌握观察者模式和访问者模式的应用场景。 2、 掌握观察者模式在具体业务场景中的应用。 3、 了解访问者模式的双分派。 4、 观察者模式和访问者模式的优、缺点。 21.2.内容定位 1、 有 Swing开发经验的人群更容易理解观察者模式。 2、 访问者模式被称为最复杂的设计模式。 21.3.观察者模式 观 察 者 模 式 ( Obser

Spring中事务的传播机制

一、前言 首先事务传播机制解决了什么问题 Spring 事务传播机制是包含多个事务的方法在相互调用时,事务是如何在这些方法间传播的。 事务的传播级别有 7 个,支持当前事务的:REQUIRED、SUPPORTS、MANDATORY; 不支持当前事务的:REQUIRES_NEW、NOT_SUPPORTED、NEVER,以及嵌套事务 NESTED,其中 REQUIRED 是默认的事务传播级别。

为什么要做Redis分区和分片

Redis分区(Partitioning)和分片(Sharding)是将数据分布在多个Redis实例或多个节点上的做法。这种技术用于提高性能、可扩展性和可用性。以下是执行Redis分区和分片的主要原因: 1. **提高吞吐量**:    - 通过将数据分散到多个节点,可以并行处理更多的操作,从而提高整体吞吐量。 2. **内存限制**:    - 单个Redis实例的内存是有限的。分区允许数据

数据结构9——排序

一、冒泡排序 冒泡排序(Bubble Sort),顾名思义,就是指越小的元素会经由交换慢慢“浮”到数列的顶端。 算法原理 从左到右,依次比较相邻的元素大小,更大的元素交换到右边;从第一组相邻元素比较到最后一组相邻元素,这一步结束最后一个元素必然是参与比较的元素中最大的元素;按照大的居右原则,重新从左到后比较,前一轮中得到的最后一个元素不参4与比较,得出新一轮的最大元素;按照上述规则,每一轮结

【杂记-浅谈DHCP动态主机配置协议】

DHCP动态主机配置协议 一、DHCP概述1、定义2、作用3、报文类型 二、DHCP的工作原理三、DHCP服务器的配置和管理 一、DHCP概述 1、定义 DHCP,Dynamic Host Configuration Protocol,动态主机配置协议,是一种网络协议,主要用于在IP网络中自动分配和管理IP地址以及其他网络配置参数。 2、作用 DHCP允许计算机和其他设备通

七种排序方式总结

/*2018.01.23*A:YUAN*T:其中排序算法:冒泡排序,简单排序,直接插入排序,希尔排序,堆排序,归并排序,快速排序*/#include <stdio.h>#include <math.h>#include <malloc.h>#define MAXSIZE 10000#define FALSE 0#define TRUE 1typedef struct {i

BD错误集锦9——查询hive表格时出错:Wrong FS: hdfs://s233/user/../warehouse expected: hdfs://mycluster

集群环境描述:HDFS集群处于HA模式下,同时启动了YARN\JN\KAFKA\ZK。 现象: FAILED: SemanticException Unable to determine if hdfs://s233/user/hive/warehouse/mydb.db/ext_calllogs_in_hbase is encrypted: java.lang.IllegalArgument

BD错误集锦1——[Hive]ERROR StatusLogger No log4j2 configuration file found. Using default configuration:

错误描述:在使用IDEA进行jdbc方式连接到hive数据仓库时,出现以下错误:                ERROR StatusLogger No log4j2 configuration file found. 问题原因:缺少log4j2.xml文件   <?xml version="1.0" encoding="UTF-8"?><Configuration><Appender