Hive---外部表和内部表
外部表和内部表
文章目录
- 外部表和内部表
- 内部表(未被external修饰)
- 外部表(被external修饰)
- 使用场景
- 内部表与外部表的互相转换
- 内部表转外部表
- 外部表转内部表
- 区别
内部表(未被external修饰)
默认创建的表都是所谓的管理表,有时也被称为内部表。因为这种表,Hive 会(或多或少地)控制着数据的生命周期。Hive 默认情况下会将这些表的数据存储在由配置项
hive.metastore.warehouse.dir所定义的目录的子目录下。
当我们删除一个管理表时,Hive 也会删除这个表中数据。管理表不适合和其他工具共享数据。
外部表(被external修饰)
因为表是外部表,所以 Hive 并非认为其完全拥有这份数据。删除该表并不会删除掉这份数据,不过描述表的元数据信息会被删除掉。
使用场景
内部表与外部表没有太大区别。如果所有的数据都由hive处理,则创建内部表;如果数据的处理由hive和其他工具一起处理,则创建外部表。
内部表与外部表的互相转换
内部表转外部表
查询表的类型
desc formatted student;
---输出结果
Table Type: MANAGED_TABLE
修改内部表 student为外部表
alter table student set tblproperties('EXTERNAL'='TRUE');
---查询表的类型
desc formatted student;
---查询结果
Table Type: EXTERNAL_TABLE
外部表转内部表
修改外部表 student 为内部表
alter table student set tblproperties('EXTERNAL'='FALSE');
查询表的类型
desc formatted student;
---查询结果
Table Type: MANAGED_TABLE
注意:('EXTERNAL'='TRUE')和('EXTERNAL'='FALSE')为固定写法,区分大小写!
区别
1.创建表时:创建内部表时,会将数据移动到数据仓库指向的路径;若创建外部表,仅记录数据所在的路径, 不对数据的位置做任何改变。
2.删除表时:在删除表的时候,内部表的元数据和数据会被一起删除, 而外部表只删除元数据,不删除数据。这样外部表相对来说更加安全些,数据组织也更加灵活,方便共享源数据。
3.外部表被external修饰,内部表未被external修饰
4.hive默认创建的是内部表
5.外部表比内部表更加安全
Hive---外部表和内部表相关推荐
- hive外部表改为内部表_hive内部表外部表介绍
未被external修饰的是内部表(managed table),被external修饰的为外部表(external table): 区别: 内部表数据由Hive自身管理,外部表数据由HDFS管理: ...
- HIVE表的迁移(外部表到内部表并压缩数据)
Hive表迁移至压缩表: 1. 压缩方式选择(经测试选择snappy) 2. 创建Hive内部表(主要是后面Rename的时候可以将location改成对应的位置) CREATE **TABLE** ...
- 建表语句,内部表,外部表
CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name // 定义字段名,字段类型 [(col_name data_type [COMMENT c ...
- Hive的基本操作-创建内部表
管理表的操作 建表初体验 use myhive; create table stu(id int,name string); insert into stu values (1,"zhang ...
- hive内部表与外部表区别
1.创建内部表与外部表的区别是什么? 2.external关键字的作用是什么? 3.外部表与内部表的区别是什么? 4.删除表的时候,内部表与外部表有什么区别? 5.load data local in ...
- 六、Hive中的内部表、外部表、分区表和分桶表
文章目录 内部表 外部表 分区表 分桶表 在Hive数据仓库中,重要点就是Hive中的四个表.Hive 中的表分为内部表.外部表.分区表和分桶表. 内部表 默认创建的表都是所谓的内部表,有时也被称为管 ...
- Hive 内部表与外部表
首先查看当前的表: 内部表 查看emp表: 查看这个emp表的详细信息: 可以看到Table Type是一个MANAGED_TABLE,就是所谓的内部表 内部表跟外部表有什么区别 首先看一下mysql ...
- hive 创建表_2min快速了解,Hive内部表和外部表
在了解内部表和外部表区别前, 我们需要先了解一下Hive架构 : 大家可以简单看一下这个架构图,我介绍其中要点: Hive的数据分为两种,一种为普通数据,一种为元数据. 元数据存储着表的基本信息,增删 ...
- Hive关于数据表的增删改(内部表、外部表、分区表、分桶表 数据类型、分隔符类型)
建表 基本语句格式 CREATE [external] TABLE if not exists student #默认建立内部表,加上external则是建立外部表(id int COMMENT'学号 ...
最新文章
- CentOS 7最小化安装步骤
- 第一章:1.1.3 典型信号
- Day 1: Bower —— 管理你的客户端依赖关系
- 牛客多校三 B Black and white
- python中numpy矩阵运算操作大全(非常全)!
- mod_python模块安装
- UNION,EXISTS,IN等在SQL语句中的灵活应用和场境的选择。
- SQL优化笔记(二)—CPU优化
- 前端开发桌面终极工具(FastStone Capture)推荐(转)
- 《Oracle高性能SQL引擎剖析:SQL优化与调优机制详解》一2.3 执行计划各个列的含义...
- python网络爬虫系列教程——python中urllib、urllib2、cookie模块应用全解
- Android Studio 2.3.1导出jar文件不能生成release解决办法
- I2C 总线协议详解
- 一个可以免费下载数据集的网站
- fluidsim元件库下载_基于仿真软件的系统EMC设计解析
- 有哪些好用的电脑桌面分类管理软件?这3款软件让你的效率秒杀小伙伴!
- 软件测试脚本语言有哪些,测试脚本是什么意思有哪些脚本
- ubuntu安装nvidia和cuda重启后,鼠标键盘失灵
- 2021-2027全球与中国翠绿宝石激光器市场现状及未来发展趋势
- can收发器 rx_CAN/CANFD采样点