mysql内表和外表_Hive内表和外表的区别
本文以例子的形式介绍一下Hive内表和外表的区别。例子共有4个:不带分区的内表、带分区的内表、不带分区的外表、带分区的外表。
1 不带分区的内表
#创建表
create table innerTable(id int,name string) row format delimited fields terminated by ‘|’;(show tables发现没有innerTable,只有innertable。不多说,记住了)
#从HDFS上加载数据
load data inpath ‘hdfs://master:9000/user/root/test/innerTable’ into table innertable; (查看HDFS上/user/root/test/innerTable,发现文件价innerTable还在,但是里面的文件已经不在了。去哪了,去innertable表中了)
#删除刚刚创建的表
drop table innertable;(到HDFS上看一下innertable文件夹及其中的文件都没有了。去哪了,删除表的时候删除了)
2 带分区的内表
#创建表
create table inner_table_with_p(id int,name string) partitioned by (part_num int);(HDFS 出现文件夹inner_table_with_p,文件夹中为空)
#从HDFS加载数据
load data inpath ‘hdfs://master:9000/user/root/test/innerTable/part1′ into table inner_table_with_p partition(part_num=1)(文件夹inner_table_with_p出现子文件夹part_num=1,innerTable中part1消失);
load data inpath ‘hdfs://master:9000/user/root/test/innerTable/part2′ into table inner_table_with_p partition(part_num=2)(文件夹inner_table_with_p出现子文件夹part_num=2,innerTable中part2消失);
load data inpath ‘hdfs://master:9000/user/root/test/innerTable/part3′ into table inner_table_with_p partition(part_num=3)(文件夹inner_table_with_p出现子文件夹part_num=3,innerTable中part3消失);
#删除分区
alter table inner_table_with_p drop partition(part_num=1);(part_num=1对应分区文件夹本删除)
#删除表
drop table inner_table_with_p;(HDFS上inner_table_with_p文件夹被删除)
3 不带分区的外表
创建表
create external table outer_table(id int,name string) row format delimited fields terminated by ‘|’; (hive仓储目录中出现outer_table)
加载数据
load data inpath ‘/user/root/test/outerTable/outer’ into table outer_table;(outer_table中出现子文件outer,outerTable中outer消失)
删除表
drop table outer_table; (outer_table及子文件outer依然存在,因为这是外表)
4 带分区的外表
创建表
create external table outer_table_with_p(id int,name string) partitioned by (part_num int) row format delimited fields terminated by ‘|’; (hive仓储目录中出现outer_table_with_p)
加载数据
load data inpath ‘/user/root/test/outerTable/part1′ into table outer_table_with_p partiton(part_num=1); (outer_table_with_p中出现子文件夹part_num=1)
load data inpath ‘/user/root/test/outerTable/part2′ into table outer_table_with_p partition(part_num=2);(outer_table_with_p中出现子文件夹part_num=2)
load data inpath ‘/user/root/test/outerTable/part3′ into table outer_table_with_p partition(part_num=3);(outer_table_with_p中出现子文件夹part_num=3)
删除分区
alter table outer_table_with_p drop partition(part_num=1);(HDFS上分区文件依旧存在)
删除表
drop table outer_table_with_p;(HDFS上对应数据依旧存在)
总结:
1 删除内表时,内表数据会一并删除;
2 删除外表时,外表数据依旧存在。
推荐阅读:
mysql内表和外表_Hive内表和外表的区别相关推荐
- sqoop动态分区导入mysql,sqoop 导入数据到hive分区表(外表,内表) 指定分区 指定数据库 指定表...
sqoop 导入数据到hive 1.1.导入数据到hive分区表(内表),指定分区 创建hive分区表 –hive-database 指定数据库 –table 指定表 –hive-overwrite ...
- mysql 多表既有内连接又有外连接_MySQL 多表查询中的内连接和外连接
一般情况下一个网站的数据库通常会有多张数据表组成,这些数据表分别存储网站不同区域的内容.数据表之间可以用类似 ID 的字段来关联,在查询的时候可以通过一条语句来查询多张表的内容.例如 论坛的数据库,帖 ...
- 二、MySQL连接查询学习笔记(多表连接查询:内连接,外连接,交叉连接详解)
MySQL连接查询(多表连接查询:内连接,外连接,交叉连接详解) 6:多表连接查询 笛卡尔乘积:如果连接条件省略或无效则会出现 解决办法:添加上连接条件 连接查询的分类: 1.按年代分类:1)sql ...
- 全网最全的mysql表的关联查询(内连接,外连接)
Mysql 多表连接查询 inner join 和 outer join 的使用 JOIN的含义就如英文单词"join"一样,连接两张表,大致分为 内连接,外连接,右连接,左连接, ...
- Mysql数据库基本操作(六)多表查询-内连接查询,外连接查询
数据准备 use mydb3 ; --创建部门表 create table if not exists dept3 ( deptno varchar (20) primary key , --部门号 ...
- mysql 全表连接_MySQL学习—多表查询(内连接,外链接,全连接)
一个项目中肯定会有多张数据表,而数据表之间会存在各种各样的关系.这时我们需要的数据,可能不会直接通过一张表全部获取到,这时就需要同时查询多张数据表,得到最后想要的数据. 下面以具体的实例来进行相关知识 ...
- 牛客SQL练习题笔记 -- 通配符%和以扩充表的角度理解内连接
sql28 1. 题目描述 film表 字段 说明 film_id 电影id title 电影名称 description 电影描述信息 CREATE TABLE IF NOT EXISTS film ...
- 表连接查询(多表查询,内连接,左外连接,右外连接)
什么是表连接:同时对多张表进行查询操作,表与表之间要通过连接条件来连接.一般这个连接条件是主键列是否等于外键列.表连接的主要三种方式是: 连接方式 概念说明 内连接 分为显示内连接和隐式内连接,查询的 ...
- 为什么selection.find在word vba中不返回所有结果?_工作表查询中,内连接Inner join的讲解...
大家好,我们继续讲解VBA数据库解决方案,今日讲解第56讲内容: 数据表查询中,内连接Inner join的讲解.从这讲开始给大家实例讲解在查询中各种连接方式的应用.为什么到现在才讲解这块内容呢?是的 ...
最新文章
- 2021春季每日一题【week6 未完结】
- ThinkPHP3.2 实现阿里云OSS上传文件
- h5jumppage.php,h5使用webviewjsbridge跟原生交互,点击标签调用2次webview
- B端表格设计实战指南
- iOS 实现启动屏动画(Swift实现,包含图片适配)
- theos linux环境,theos安装详解
- Ubuntu16.04安装ros kinetic版本
- Ubuntu下lamp(PHP+Mysql+Apache)搭建+完全卸载卸载方法
- Leetcode之通配符匹配
- tier1和tier2_数据中心Tier1-Tier2-Tier3-Tier4
- QT学习之QQ聊天案例
- 如何利用光驱位给老旧笔记本电脑安装固态硬盘
- oracle数据库数值函数,oracle数据库函数对照表
- Windows Debugging
- java 数组 eqlue_Java源码浅析,Character(3)
- TIME_WAIT状态(2MSL)的作用
- Gephi安装教程及相关错误解决
- 树莓派cups搭建无线打印机(HP Laserjet 1020)
- 使用HMMER搜索PFam
- java中switch语句用法详解