搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
我家小花儿
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
IDEA的Git操作_idea查看git提交路径
2
【Unity Shader】前向渲染中点光源及聚光灯原理
3
美团面经到店研发
4
七、使用码云【完】_注册码云对找工作有好处吗
5
程序代码设计规范
6
大数据之Hive<一>_涉及大数据量计算时hive
7
python ui界面_pyside写ui界面入门示例
8
数据分析07|数据清洗_数据清洗的完全合一规则
9
systemctl start docker异常 Job for docker.service failed because the control process exited with error
10
【AI文本工具站】日活近4万
当前位置:
article
> 正文
往HIVE表中导入导出数据的几种方式详解_基于hive做导入导出
作者:我家小花儿 | 2024-08-07 11:51:17
赞
踩
基于hive做导入导出
一:往HIVE表中导入导出数据
语法结构:
[ ]带括号的表示可选择字段
LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO
TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]
各种参数说明:
1
-
hive只对导入该表中的数据按照自己的方式 处理,对于错误的数据不管,超出直接丢弃。
2
-
Load 操作只是单纯的复制/移动操作,将数据文件移动到 Hive 表对应的位置
。
所以也可以直接hadoop fs -put ./1.txt /user/hive/warehouse/web_log.db/staff/ 将数据直接导入到hive表对应的位置。
hive对导入的数据没有查错的功能,只是按自己的表字段进行匹配,格式匹配不了的默认用Null替代,
hive属于读时模式。
3
- LOCAL关键字,
如果指定了 LOCAL, load 命令会去查找本地文件系统中的 filepath。
如果没有指定 LOCAL 关键字,则根据inpath中的uri查找文件
4
- OVERWRITE 关键字,
如果使用了 OVERWRITE 关键字,则目标表(或者分区)中的
内容会先被全部被删除
,然后再将 filepath 指向的文件/目录中的内容添加到表/分区中。
如果目标表(分区)已经有一个文件,并且文件名和 filepath 中的文件名冲突,那么现有的文件会被新文件所替代。
1.往Hive表导入数据方式
1、本地导入(本地导入以后1.txt文件本地还有备份的)
load data local inpath 'local_path/file' into table 表名称 ;
ex: load data local inpath ./1.txt into table staff;
2、HDFS导入(
导入完以后hdfs上的1.txt文件就不存在了
)
load data inpath 'hdfs_path/file' into table 表名称 ;
ex: load data inpath '/user/jerry.txt' into table jerry;//不能少了单引号
load data inpath'hdfs://hadoop102:8020/user/jerry.txt' into table jerry;
3,覆盖导入:本地文件导入,hdfs文件导入加了overwrite参数而已
1. load data local inpath 'path/file' overwrite into table 表名称 ;
ex: load data local inpath ./1.txt ovewrite into table staff;
2.load data inpath 'path/file' overwrite into table 表名称 ;
ex:load data inpath '/user/jerry.txt' overwrite into table jerry;
4、查询导入(其实就是创建新表)
create table track_log_bak as select * from db_web_data.track_log;
5、insert查询结果插入hive中(insert导入必须基于别的表查询导入的)将查询结果插入Hive表
语法结构
(overwrite在前面,load的ove
rwrite在后面)
INSERT OVERWRITE TABLE tablename1 [PARTITION (partcol1=val1, partcol2=val2 ...)]
select_statement1 FROM from_statement
覆盖-overwrite-显示指定-使用频率高
追加-append-默认方式 (用into)
insert into table staff
(这里没有as)
select * from track_log;
insert overwrite table staff2 select id,name from staff where id<100;
2.从Hive表导出数据方式(也是查询方式导出,跟导入区别insert后面一个是table,一个是directory)
1、hive中数据导出到本地
标准语法
:
INSERT OVERWRITE [LOCAL] DIRECTORY directory1 SELECT ... FROM ...
例如:insert overwrite local directory "/home/admin/Desktop/1/2"
row format delimited
fields terminated by '\t'
select * from db_hive_demo.emp ;(row 这一行可以不加)
温馨提示:会递归创建目录,一定要选择文件夹,否则会覆盖目录,造成数据丢失
2、insert查询结果导出到HDFS
insert overwrite directory 'hdfs://hadoop102:8020/user/hive/warehouse/emp2/emp2'
select * from emp where empno >7800;
3、Bash shell覆盖追加导出
例如:$ bin/hive -e "select * from staff;" > /home/z/backup.log
4、Sqoop把hive数据导出到外部
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
【wpsshop博客】
推荐阅读
article
Flink
: Could not
find
any
factory
for
identifier
k...
运行
Flink
应用或执行
Flink
SQL 时会经常遇到下面的错误:org.
apache
.
flink
.
table
....
赞
踩
article
Hive
:
trunc
函数_
hive
trunc
...
trunc
函数对于日期和数值的截断详解。_
hive
trunc
hive
trunc
...
赞
踩
article
mr
,
hive
,
kafka
分区
区别_
hive
的
分区
和
mr
分区
器...
mr
中的partition提高reduce并发
hive
中的partition查询中减少读取量
kafka
中的partiti...
赞
踩
article
Hive
-
sql
与
SQL
的
区别_hive
sql
和
sql
的
区别...
备注:
Hive
没有delete和update
Hive
-
sql
和关系型数据库
sql
一样。差别在于:可能新版本有_hives...
赞
踩
article
hive
和
sql
的不同点_
hive
查询语言
和
sql
的
不同之处
在于...
hive
和
sql
的不同点1 建表不一样,
hive
有按行分割,按字段分割,
sql
没有.2
hive
不支持等值连接,sq...
赞
踩
article
【理论】
Hive
SQL
和
SQL
的常用语法及区别_hive
sql
和
正常
sql
区别...
插入数据:`INSERT INTO table_name (column1, column2, ...) VALUES ...
赞
踩
article
Hive
-
sql
和传统
SQL
的
区别_
hive
sql
时间
函数和
sql
时间
函数
的
不同...
sql
中null代表空值,但是在
Hive
中,String类型
的
字段若是空(empty)字符串,即长度为0,那么对它 is...
赞
踩
article
Hive
与
SQL
标准
和
主流
SQL
DB 的语法区别_
hive
语言
和
sql
...
Hive
是一种基于Hadoop的数据仓库软件,可以将结构化数据文件映射为一张数据库表,并提供了类
SQL
查询接口,使得用户...
赞
踩
article
Hive
SQL
vs
SQL
区别_
hive
sql
和
sql
的
区别
是
什么...
1、数据更新:HQL:不建议,因为
Hive
定位
是
数据仓库 ,主要应用
是
数据
的
分析,不
是
查询
SQL
:支持,增删改查为什么说...
赞
踩
article
Hive
-
SQL
与
SQL
的
区别_hive
sql
和
sql
的
区别...
1、
Hive
不支持等值连接(hive中不能使用省去join
的
写法)2、分号字符(hive对分号
的
识别没有那么智能,有时需...
赞
踩
article
hive
和
sql
有什么不同
_
sql
和
hive
的
区别
...
1 建表不一样,
hive
有按行分割,按字段分割,
sql
没有 .2
hive
不支持等值连接,
sql
支持等值连接, 比如...
赞
踩
article
Hadoop
Hive
sql
语法详解5
--
Hive
QL与
SQL
区别...
1.hive内联支持什么格式?2.分号字符注意什么问题?3.hive中empty是否为null?4.hive是否支持插入...
赞
踩
article
hive
(
3
)
HiveQL
数据
定义...
HiveQL
与传统SQL区别
HiveQL
是Hive的查询语言。与mysql的语言最接近,但还是存在于差异性,表现在:Hi...
赞
踩
article
hive
sql
和
spark
sql
的区别_
hive
和
spark
sql
区别...
百度百科上的定义
hive
是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析...
赞
踩
article
My
SQL
、
Oracle
、Sql Server、
Hive
、
Spark
SQL
、
Flink
SQL
总结...
本文主要讲解各类
SQL
语言的优缺点、数据类型及
SQL
语法的区别,其它区别可参加各官网My
SQL
官网地址:https://...
赞
踩
article
Hive
、
SQL
Server
、
My
SQL
和 Postgre
SQL
之间的对比区别_sql ser...
Hive
是一个大数据处理工具,运行在 Hadoop 上,适合批量处理和分析海量数据。
SQL
Server
是一个关系数据库...
赞
踩
article
Hive
表
添加列(
新增
字
段
)_
hive
增加列...
本文介绍了在
Hive
中添加新
字
段
时遇到的问题,尤其是在Parquet和Text分区
表
中,如果不使用`CASCADE`会导...
赞
踩
article
Hadoop
生态简介,
Hive
、
Spark
、
HBase
等_
hadoop
hive
spark...
Hadoop
生态全景介绍,
Spark
、
Hive
、
HBase
等_
hadoop
hive
spark
hadoop
hive
...
赞
踩
article
hadoop
、
hive
、
spark
、
flink
、flume基本概念_
hadoop
spark
hiv...
大数据_
hadoop
spark
hive
hadoop
spark
hive
...
赞
踩
article
Hadoop
、
Spark
和
Hive
的详细关系_
spark
和
hive
和
hadoop
分别是什么,它...
Hadoop
提供了分布式存储和资源管理的基础。
Spark
提供了高效的内存计算和丰富的数据处理 API。
Hive
提供...
赞
踩
相关标签
flink
factory
identifier
DynamicTable
kafka
jdbc
hudi
hive
数据仓库
sql
hadoop
大数据
数据库
shell