hive中的分区和分桶-----内部表和外部表的区别

 

1.内部表和外部表

内部表:不需要关键字声明,删除表元数据和真实数据都会删除。内部表可以直接修改。

外部表:需要external关键字声明,删除表只会删除元数据而不会删除hdfs中的真实数据。外部表修改需要修复:MSCK REPAIR TABLE table_name;

一般都是外部表,内部表是自己使用的中间表时创建。

 

2. 分区和分桶的区别

分区针对的是数据存储路径,分桶针对的是数据文件。

分区使用的是表外字段,需要指定字段类型;

分桶使用的是表内字段,已经知道字段类型,不需要再指定。

分区通过关键字partitioned by(partition_name string)声明

分桶表通过关键字clustered by(column_name) into 3 buckets声明

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值