hive内表和外表的创建、载入数据、区别
创建表
创建内表
create table customer(
customerId int,
firstName string,
lastName STRING,
birstDay timestamp
) row format delimited fields terminated by ','
创建外表
CREATE EXTERNAL table salaries(
gender string,
age int ,
salary DOUBLE,
zip int
)row format delimited fields terminated by ',' LOCATION '/user/train/salaries/';
载入数据
load DATA LOCAL inpath '/root/user/customer.txt' overwrite into table customer;
load DATA LOCAL inpath '/root/user/salaries.txt' overwrite into table salaries;
查看文本数据
[root@centos172 user]# cat /root/user/customer.txt
1,f,jack,,
2,f,luccy,,
[root@centos172 user]# cat /root/user/salaries.txt
male,21,10000,1
female,22,12000,2
查看数据库数据
hive> desc customer;
OK
customerid int
firstname string
lastname string
birstday timestamp
Time taken: 0.053 seconds, Fetched: 4 row(s)
hive> desc salaries;
OK
gender string
age int
salary double
zip int
Time taken: 0.041 seconds, Fetched: 4 row(s)
hive> select * from customer;
OK
1 f jack NULL
2 f luccy NULL
Time taken: 0.067 seconds, Fetched: 2 row(s)
hive> select * from salaries;
OK
male 21 10000.0 1
female 22 12000.0 2
Time taken: 0.066 seconds, Fetched: 2 row(s)
hive>
区别
因为我hive也是刚开始了解,所以只讲一部分
1.内表主要放在hdfs中默认的hive目录。外表指定了location
2.删除内表,重新创建一个一样的内表,数据不会装载
删除外表,重新创建一个一样的外表,数据会自动的装载
删除外表的操作如下
hive> drop table salaries;
OK
Time taken: 0.092 seconds
hive> select * from salaries;
FAILED: SemanticException [Error 10001]: Line 1:14 Table not found 'salaries'
hive> show tables;
OK
customer
Time taken: 0.035 seconds, Fetched: 1 row(s)
hive> CREATE EXTERNAL table salaries(
> gender string,
> age int ,
> salary DOUBLE,
> zip int
> )row format delimited fields terminated by ',' LOCATION '/user/train/salaries/';
OK
Time taken: 0.058 seconds
hive> show tables;
OK
customer
salaries
Time taken: 0.025 seconds, Fetched: 2 row(s)
hive> select * from salaries;
OK
male 21 10000.0 1
female 22 12000.0 2
Time taken: 0.058 seconds, Fetched: 2 row(s)
hive>
区别1的:
内表的默认路径

指定外表的路径如图:

hive是什么
我当前接触到就是:
1.把hdf文件具体为table
2.用来查询,类似sql语句处理
hive内表和外表的创建、载入数据、区别的更多相关文章
- Hive内表和外表的区别
本文以例子的形式介绍一下Hive内表和外表的区别.例子共有4个:不带分区的内表.带分区的内表.不带分区的外表.带分区的外表. 1 不带分区的内表 #创建表 create table innerTabl ...
- Hive 7、Hive 的内表、外表、分区(22)
Hive 7.Hive 的内表.外表.分区 1.Hive的内表 Hive 的内表,就是正常创建的表,在 http://www.cnblogs.com/raphael5200/p/5208437.h ...
- Hive 7、Hive 的内表、外表、分区
1.Hive的内表 Hive 的内表,就是正常创建的表,在 http://www.cnblogs.com/raphael5200/p/5208437.html 中已经提到: 2.Hive的外表 创建H ...
- Hive的内表和外表以及分区表
1. 内表和外表的区别 内表和外表之间是通过关键字EXTERNAL来区分.删除表时: 内表:在删除时,既删除内表的元数据,也删除内表的数据 外表:删除时,仅仅删除外表的元数据. CREATE [EXT ...
- hadoop-hive的内表和外表
--创建内表create table if not exists employee(id int comment 'empoyeeid',dateincompany string comment 'd ...
- ABAP工作区,内表,标题行的定义和区别
工作区域跟变量一样,是用来保存数据的.区别是变量只能从中保存一个数据.而工作区域可以存放多个.把多个数据合在一起就成工作区域了.下面我们来看看工作区域是如何定义的吧.定义有四种方法,如下:1 ...
- 七十一、SAP中内表的修改,改一行数据,或一行的某个字段
一.SAP中内表的修改,只能通过工作区来修改,代码如下 二.效果如下
- ABAP 动态生成内表的几种方法
最近要写个程序,既有更新的,也有删除的,需要涉及到很多系统表,如果一个表一个表进行更新或者删除太慢了,于是就想通过创建动态内表来实现这些功能,在网上找了一些资料,经过多次尝试,终于测试成功了.网上讲述 ...
- ABAP 内表 详解
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
随机推荐
- ansible笔记(11):tags的用法
你写了一个很长的playbook,其中有很多的任务,这并没有什么问题,不过在实际使用这个剧本时,你可能只是想要执行其中的一部分任务而已,或者,你只想要执行其中一类任务而已,而并非想要执行整个剧本中的全 ...
- 【Python】数值运算函数
- jQuery对象和语法
jQuery类型 引入jquery.js时,其实是向全局作用域中,添加了一个新的类型--jQuery. 构造函数:负责创建jQuery类型的对象. 原型对象:保存jQuery对象可用的所有简化版API ...
- Call to undefined function Illuminate\Encryption\openssl_cipher_iv_length()
今天遇到一个错误,没有定义一个openssl_cipher_iv_length()方法,可是我明明开启OpenSSL了啊 如果开启了还报错 只需要把php的目录加入环境变量 -重启电脑 就解决了 但 ...
- Kubernetes 与 Helm:使用同一个 Chart 部署多个应用
k8s 集群搭建好了,准备将 docker swarm 上的应用都迁移到 k8s 上,但需要一个一个应用写 yaml 配置文件,不仅要编写 deployment.yaml 还要编写 service.y ...
- 寒假安卓app开发学习记录(2)
今天属实是头疼的一天.开始的时候是简单了解了一下安卓的系统架构,了解到大概分为四个部分. 然后看了两节创建安卓项目的课程,准备去实践一下的时候突然发现我的eclipse里竟然没有Android选项.查 ...
- 接入HikariCP遇到问题
老Tomcat项目在接入HikariCP时遇到报错: Caused by: java.lang.AbstractMethodError: com.mysql.jdbc.Connection.isVal ...
- 【音乐欣赏】《In The End》 - Taska Black / Aviella
曲名:In The End 作者:Taska Black .Aviella [00:00.00] 作曲 : Joachim Gorrebeeck/Aviella Winder [00:11.48]La ...
- 避免重复数据查询DISTINCT
[1]避免重复——DISTINCT SELECT DISTINCT job FROM t_enployee; #去除job字段的重复项,只显示所有job字段中的非重复项,比如job里有:te ...
- C#中字符串常用方法
string str = "123@163.com"; int index = str.IndexOf('@'); // 返回3 从左向右第一个@ int index = str ...