Hive导入csv文件示例


Posted in 数据库 onJune 25, 2022

正文

现有文件为csv格式,需要导入hive中,设csv内容如下

1001,zs,23
1002,lis,24

首先创建表

create table if not exists csv2(
    uid int,
    uname string,
    age int
)
row format serde 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
stored as textfile ;

导入数据及查询

load data local inpath '/data/csv2.csv' into table csv2;
select * from csv2;

其他注意事项

如果建表是parquet格式可否load导入csv文件?

drop table csv2;
create table if not exists csv2(
    uid int,
    uname string,
    age int
)
row format serde 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
stored as parquet ;

load data local inpath '/data/csv2.csv' into table csv2;
select * from csv2;

使用时会报错

Failed with exception java.io.IOException:java.lang.RuntimeException: hdfs://192.168.10.101:8020/user/hive/warehouse/csv2/csv2.csv is not a Parquet file. expected magic number at tail [80, 65, 82, 49] but found [44, 50, 52, 10]

**不可以,需要先导入成textfile,之后再从临时表导入成parquet,**如下

drop table csv2;
create table if not exists csv2
(
    uid   int,
    uname string,
    age   int
)
    row format serde 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
    stored as textfile;
-- 先导入csv文件到表格csv2,保存格式是textfile
load data local inpath '/data/csv2.csv' into table csv2;


drop table csv3;
-- 创建csv3,保存格式parquet
create table if not exists csv3
(
    uid   int,
    uname string,
    age   int
)
    row format delimited
        fields terminated by ','
    stored as parquet;
-- 提取csv2的数据插入到csv3
insert overwrite table csv3 select * from csv2;

总结

  • 关键是要引入org.apache.hadoop.hive.serde2.OpenCSVSerde
  • csv要保存到hiveparquet,需要先保存成textfile

以上就是Hive导入csv文件示例的详细内容,更多关于Hive导入csv文件的资料请关注三水点靠木其它相关文章!


Tags in this post...

数据库 相关文章推荐
详解Redis实现限流的三种方式
Apr 27 Redis
MySQL 查询速度慢的原因
May 25 MySQL
MySQL 数据恢复的多种方法汇总
Jun 21 MySQL
浅谈Redis中的RDB快照
Jun 29 Redis
Oracle 死锁的检测查询及处理
Sep 25 Oracle
基于Redis结合SpringBoot的秒杀案例详解
Oct 05 Redis
Mysql忘记密码解决方法
Feb 12 MySQL
mysql自增长id用完了该怎么办
Feb 12 MySQL
分布式架构Redis中有哪些数据结构及底层实现原理
Mar 13 Redis
分析SQL窗口函数之聚合窗口函数
Apr 21 Oracle
使用 MybatisPlus 连接 SqlServer 数据库解决 OFFSET 分页问题
Apr 22 SQL Server
oracle delete误删除表数据后如何恢复
Jun 28 Oracle
Hive HQL支持2种查询语句风格
Jun 25 #数据库
Hive日期格式转换方法总结
Jun 25 #数据库
PostgreSQL怎么创建分区表详解
Jun 25 #PostgreSQL
Mysql中的触发器定义及语法介绍
Jun 25 #MySQL
Hive常用日期格式转换语法
Jun 25 #数据库
MySQL数据库配置信息查看与修改方法详解
Jun 25 #MySQL
SQL语句中EXISTS的详细用法大全
Jun 25 #MySQL
You might like
PHP define函数的使用说明
2008/08/27 PHP
php操作SVN版本服务器类代码
2011/11/27 PHP
smarty内置函数{loteral}、{ldelim}和{rdelim}用法实例
2015/01/22 PHP
Java和PHP在Web开发方面对比分析
2015/03/01 PHP
Pro JavaScript Techniques学习笔记
2010/12/28 Javascript
Javascript 键盘事件的组合使用实现代码
2012/05/04 Javascript
jquery实现图片左右间隔滚动特效(可自动播放)
2013/05/08 Javascript
文本框文本自动补全效果示例分享
2014/01/19 Javascript
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
2014/10/17 Javascript
JavaScript Function函数类型介绍
2015/04/08 Javascript
javascript实现下雪效果【实例代码】
2016/05/03 Javascript
JavaScript+HTML5实现的日期比较功能示例
2017/07/12 Javascript
微信小程序之电影影评小程序制作代码
2017/08/03 Javascript
javascript实现文件拖拽事件
2018/03/29 Javascript
react-native android状态栏的实现
2018/06/15 Javascript
详解Vue微信授权登录前后端分离较为优雅的解决方案
2018/06/29 Javascript
微信小程序自定义轮播图
2018/11/04 Javascript
vue自定义指令directive的使用方法
2019/04/07 Javascript
Vue移动端右滑屏幕返回上一页附源码下载
2019/06/26 Javascript
基于javascript实现移动端轮播图效果
2020/12/21 Javascript
[01:39:42]Fnatic vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
python list中append()与extend()用法分享
2013/03/24 Python
python使用cookielib库示例分享
2014/03/03 Python
Python3 利用requests 库进行post携带账号密码请求数据的方法
2018/10/26 Python
用Python实现最速下降法求极值的方法
2019/07/10 Python
Python使用uuid库生成唯一标识ID
2020/02/12 Python
python 解决print数组/矩阵无法完整输出的问题
2020/02/19 Python
python datetime时间格式的相互转换问题
2020/06/11 Python
keras的ImageDataGenerator和flow()的用法说明
2020/07/03 Python
海滩咖啡馆:Beach Cafe
2018/02/02 全球购物
Fossil美国官网:化石手表、手袋、首饰及配饰
2019/02/17 全球购物
介绍下Java中==和equals的区别
2013/09/01 面试题
公司端午节活动方案
2014/02/04 职场文书
材料员岗位职责
2015/02/10 职场文书
仓库统计员岗位职责
2015/04/14 职场文书
如何书写邀请函?
2019/06/24 职场文书