hive 内部表和外部表的区别和理解

本文介绍了Hive内部表和外部表的主要区别。内部表在删除时会连同数据一起删除,而外部表只删除元数据,数据保持不变。外部表适合于数据管理更灵活和数据共享的场景,而选择使用哪种表取决于数据处理需求和个人偏好。
摘要由CSDN通过智能技术生成

-----------学而不思则罔,思而不学则殆------------

1. 内部表

create table test (name string , age string) location '/input/table_data';    

注:hive默认创建的是内部表

此时,会在hdfs上新建一个test表的数据存放地

load data inpath '/input/data' into table test ;

会将hdfs上的/input/data目录下的数据转移到/input/table_data目录下。删除test表后,会将test表的数据和元数据信息全部删除,即最后/input/table_data下无数据,当然/input/data下再上一步已经没有了数据!

     如果创建内部表时没有指定location,就会在/user/Hive/warehouse/下新建一个表目录,其余情况同上。

    注:load data会转移数据

2. 外部表

create external table etest (name string , age string);   

会在/user/hive/warehouse/新建一个表目录et


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值