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...

数据库 相关文章推荐
left join、inner join、right join的区别
Apr 05 MySQL
mysql死锁和分库分表问题详解
Apr 16 MySQL
my.ini优化mysql数据库性能的十个参数(推荐)
May 26 MySQL
你知道哪几种MYSQL的连接查询
Jun 03 MySQL
浅谈MySQL next-key lock 加锁范围
Jun 07 MySQL
MySQL系列之十 MySQL事务隔离实现并发控制
Jul 02 MySQL
SQL Server表分区降低运维和维护成本
Apr 08 SQL Server
PostgreSQL 插入INSERT、删除DELETE、更新UPDATE、事务transaction
Apr 12 PostgreSQL
分析MySQL优化 index merge 后引起的死锁
Apr 19 MySQL
清空 Oracle 安装记录并重新安装
Apr 26 Oracle
Redis过期数据是否会被立马删除
Jul 23 Redis
前端传参数进行Mybatis调用mysql存储过程执行返回值详解
Aug 14 MySQL
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 获取MSN好友列表的代码(2009-05-14测试通过)
2009/09/09 PHP
PHP写UltraEdit插件脚本实现方法
2011/12/26 PHP
thinkphp 多表 事务详解
2013/06/17 PHP
php实现天干地支计算器示例
2014/03/14 PHP
php实现的zip文件内容比较类
2014/09/24 PHP
一个完整的PHP类包含的七种语法说明
2015/06/04 PHP
php上传图片获取路径及给表单字段赋值的方法
2016/01/23 PHP
ie下jquery.getJSON的缓存问题的处理方法
2013/03/29 Javascript
基于javascript的JSON格式页面展示美化方法
2014/07/02 Javascript
jQuery实现下滑菜单导航效果代码
2015/08/25 Javascript
js window对象属性和方法相关资料整理
2015/11/11 Javascript
javascript实现动态统计图开发实例
2015/11/21 Javascript
浅析jQuery事件之on()方法绑定多个选择器,多个事件
2016/04/27 Javascript
浅谈JavaScript的内置对象和浏览器对象
2016/06/03 Javascript
JS判断日期格式是否合法的简单实例
2016/07/11 Javascript
JavaScript面向对象编写购物车功能
2016/08/19 Javascript
微信小程序之ES6与事项助手的功能实现
2016/11/30 Javascript
详解webpack分离css单独打包
2017/06/21 Javascript
微信小程序icon组件使用详解
2018/01/31 Javascript
mpvue 项目初始化及实现授权登录的实现方法
2020/07/20 Javascript
[01:57]DOTA2上海特锦赛小组赛解说单车采访花絮
2016/02/27 DOTA
Python Mysql数据库操作 Perl操作Mysql数据库
2009/01/12 Python
Python中的深拷贝和浅拷贝详解
2015/06/03 Python
Python实现破解猜数游戏算法示例
2017/09/25 Python
Python跳出多重循环的方法示例
2019/07/03 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
6种非常炫酷的CSS3按钮边框动画特效
2016/03/16 HTML / CSS
巴黎一票通:The Paris Pass
2018/02/10 全球购物
英国儿童鞋和靴子:Start-Rite
2019/05/06 全球购物
RUIFIER官网:英国奢侈高级珠宝品牌
2020/06/12 全球购物
《这儿真好》教学反思
2014/02/22 职场文书
乡镇交通安全实施方案
2014/03/29 职场文书
商务英语专业毕业生求职信
2014/07/06 职场文书
2014年班务工作总结
2014/12/02 职场文书
2015年企业工作总结范文
2015/04/28 职场文书
Java 轮询锁使用时遇到问题
2022/05/11 Java/Android