咨询一个hive导入数据的入门问题

cao_zidane2 2018-05-28 11:21:04
各位大拿好:
本人刚接触hadoop,有一些需要在hive上跑的运用。在已有的测试环境上(环境有公司其他部门搭建好),直接使用hue上手操作。网络通了之后试了一下,load data老是报错,麻烦大家帮忙看看,谢谢。
1、建表:create table department(id int,sex string, name string) row format delimited fields terminated by ';';
2、文件上传到hdfs上,考虑没汉字,用的是txt格式。内容为:
1;male;jim
2;female;anyii
3、loaddata:
LOAD DATA INPATH '/user/etlfhts/andy_test_20180527.txt' INTO TABLE department fields terminated by ';'
报错如下: Error while compiling statement: FAILED: ParseException line 1:86 cannot recognize input near 'department' 'fields' 'terminated' in table name
...全文
1113 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
五哥 2018-07-25
  • 打赏
  • 举报
回复
引用 2 楼 hkl_hkl 的回复:
参考官网的语法:LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]
地址:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DML#LanguageManualDML-Loadingfilesintotables

另外,实际的使用,很少用load。因为,create table时指定的分隔符与hdfs上的数据文件分隔符匹配的话,就可以直接用。(只需要把文件放到table所对应的目录下就行。通常默认的路径是/user/hive/warehouse/xxxx)
如果只是上传上去,是需要load一下才能查询出数据
五哥 2018-07-25
  • 打赏
  • 举报
回复
load data inpath '/user/etlfhts/andy_test_20180527.txt' into table department;
hekz 2018-06-05
  • 打赏
  • 举报
回复
参考官网的语法:LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)] 地址:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DML#LanguageManualDML-Loadingfilesintotables 另外,实际的使用,很少用load。因为,create table时指定的分隔符与hdfs上的数据文件分隔符匹配的话,就可以直接用。(只需要把文件放到table所对应的目录下就行。通常默认的路径是/user/hive/warehouse/xxxx)
cao_zidane2 2018-05-29
  • 打赏
  • 举报
回复
load的时候不用制定分隔符,写错了: LOAD DATA INPATH '/user/etlfhts/andy_test_20180527.txt' OVERWRITE INTO TABLE 报错提示文件和表不匹配,我看了看记录很简单,我换了分隔符,!,|等都试过,仍然抱不匹配的错误,格式也改成了utf8,还是不行。

20,848

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧