Hive:静态分区(分区语法,多级分区,分区的查看修改增加删除)

devtools/2025/2/4 23:14:43/

hive在建表时引入了partition概念。即在建表时,将整个表存储在不同的子目录中,每一个子目录对应一个分区。在查询时,我们就可以指定分区查询,避免了hive做全表扫描,从而提高查询率。

oracle和Hive分区的区别

orcale在进行表分区时不需要定义分区字段的数据类型,Hive需要,因为oracle分区时用的是表内字段,Hive在分区时用的是表外字段

分区的注意事项 

hive 中,分区字段名是不区分大小写的,不过字段值是区分大小写的

示例(一级分区,即分区时只有一个字段)

表里面只有2个字段(id和name) ,dt 是用来辅助分区的

导入数据

导入数据后查看

导入第二个分区的数据后查看

查询指定分区的数据

在oracle中使用where的时候是全盘扫描,但是Hive是局部扫描, 因为分区相当于一个目录

 

示例: part1表中的2个分区dt=2025-01-01和dt=2025-01-02

多级分区

分区时有多少个字段就是多少级分区

表中只有2个字段,另外2个是伪列, 是用来进行分区的

加载数据

加载数据后查看表

导入时month=01查询时变成1,是因为没有引号默认按照数值处理,省略了0

查看分区

示例

注意: year和month分区的层级关系, month是year的下一级目录,删掉year=2025分区后,2025下一级分区的month=1和month=2也是被删掉的

修改分区

即修改分区的数据来源, 下次访问该分区时映射修改后的路径数据

示例

修改分区

原本的数据还在原来的位置, 所以修改分区只是下次访问该分区时映射的不是原本的目录,映射修改后的路径数据

 

增加分区

3 ) 新增多分区
新增多个空分区, 通过show partitions 表名  查看是否新增分区成功
新增多个带数据的分区
注意: 新增分区(带数据)只是改变了映射

删除分区

示例  

删除表part2的分区year=2025 month=01后目录还在是因为之前有修改过分区的映射

删除未修改过分区映射的分区

删除分区时,分区下面的目录也会被删除


http://www.ppmy.cn/devtools/156115.html

相关文章

STM32单片机学习记录(2.2)

一、STM32 13.1 - PWR简介 1. PWR(Power Control)电源控制 (1)PWR负责管理STM32内部的电源供电部分,可以实现可编程电压监测器和低功耗模式的功能; (2)可编程电压监测器(…

用FormLinker实现自动调整数据格式,批量导入微软表单

每天早上打开Excel时,你是否也经历过这样的噩梦? 熬夜调整好的问卷格式,导入微软表单后全乱套 客户发来的PDF反馈表,手动录入3小时才完成10% 200道题库要转为在线测试,复制粘贴到手指抽筋 微软官方数据显示&#xf…

实现B-树

一、概述 1.历史 B树(B-Tree)结构是一种高效存储和查询数据的方法,它的历史可以追溯到1970年代早期。B树的发明人Rudolf Bayer和Edward M. McCreight分别发表了一篇论文介绍了B树。这篇论文是1972年发表于《ACM Transactions on Database S…

【知识科普】HTTP相关内容说明

关于http的一些常识性知识 http头信息**示例****请求头示例****响应头示例** http响应码**状态码分类****常见状态码示例****成功****重定向****客户端错误****服务器错误** HTTP/1.1 和 HTTP/2**1. HTTP/1.1****2. HTTP/2****3. HTTP/1.1 和 HTTP/2 的区别****4. HTTP/2 的核心…

5.攻防世界simple_php

打开题目页面如下 看到是PHP代码&#xff0c;进行代码审计 <?php // 显示当前 PHP 文件的源代码 show_source(__FILE__); // 从 HTTP GET 请求中获取名为 a 的参数的值&#xff0c;并将其赋值给变量 $a。 // 符号是错误抑制符&#xff0c;它会抑制可能出现的未定义索引警…

Day34【AI思考】-分层递进式结构 对数学数系的 终极系统分类

文章目录 **分层递进式结构** 对数学数系的 **终极系统分类**总览**一、数系演化树&#xff08;纵向维度&#xff09;**数系扩展逻辑树**数系扩展逻辑** **二、代数结构对照表&#xff08;横向维度&#xff09;**数系扩展的数学意义 **三、几何对应图谱&#xff08;空间维度&am…

【LeetCode 刷题】二叉树(4)-修改与构造

此博客为《代码随想录》二叉树章节的学习笔记&#xff0c;主要内容为二叉树的修改与构造相关的题目解析。 文章目录 226. 翻转二叉树105.从前序与中序遍历序列构造二叉树106.从中序与后序遍历序列构造二叉树654.最大二叉树617.合并二叉树 226. 翻转二叉树 题目链接 class So…

Brave132 编译指南 Windows 篇:获取源码(六)

1. 引言 在 Brave 浏览器 132 版本的编译过程中&#xff0c;获取源代码是至关重要的第一步。源代码包含了 Brave 浏览器的所有核心功能、特性和组件的实现细节&#xff0c;是深入理解、定制和优化 Brave 的基础。通过获取和管理源代码&#xff0c;开发者能够深入探索 Brave 的…