Hive分区和分桶

分区:

根据某一列进行进行划分存储,常用的有时间分区;

查询数据时只需要扫描特定的分区数据,不需要全盘扫描,节省时间,

方便数据归档和清理

创建分区表

create table table_name(

col1 int,

col2 string

)

partition by (dt string,country string);

插入分区

insert into table_name partition (dt='2024-06-19',country='china')

values(1,'data1'),(2,data2);

修改分区

alter table table_name partition ()

删除分区

alter table table_name drop partition(dt='2024-06-18');

分桶:

将表数据按照哈希函数的结果进行划分存储,将数据均匀分不到桶中,提高了查询的并行度和性能。

支持随机抽样

创建分桶

create table bucket_table_name(

col1 int,

col2 string

)

clustered by (col1) into 4 buckets

sorted by (col2);

插入数据

insert overwrite table bucket_table_name

select cols,col2

from table_name;

查询分桶数据

select *

from

bucket_table_name

where col1=1;

相关推荐
大数据小朋友1 小时前
Pand函数详解进阶:案例解析(第26天)
大数据·开发语言·数据仓库·python·pandas
灰太狼!!5 小时前
hive面试题
数据仓库·hive·hadoop
sj天问12 小时前
Hive排序字段解析
数据仓库·hive
java66666888813 小时前
Java中的Servlet编程详解
java·hive·servlet
逆风就重开14 小时前
万字长文MySQL Binlog 详细指南
大数据·数据库·数据仓库·mysql
SelectDB技术团队14 小时前
网易游戏如何基于 Apache Doris 构建全新湖仓一体架构
大数据·数据仓库·数据湖·湖仓一体·网易游戏
逆风就重开16 小时前
不止是只有维度建模,数据仓库还有Data Vault建模
大数据·数据库·数据仓库·数据分析
RestCloud1 天前
ETL数据集成丨使用ETLCloud实现MySQL与Greenplum数据同步
数据库·数据仓库·mysql·etl·数据集成·etlcloud
我非夏日1 天前
基于Hadoop平台的电信客服数据的处理与分析③项目开发:搭建基于Hadoop的全分布式集群---任务10:Hive安装部署
大数据·hive·hadoop·分布式·大数据技术开发
大数据之家1 天前
Apache Ranger 2.4.0 集成Hive 3.x(Kerbos)
hive·hadoop·apache