困扰了我一天的问题,假设有一个表,要对他的数据进行一些处理,处理后将他直接导出到HDFS上,但是导出后查看数据会发现,没有分隔符分开都是密密麻麻的字母数字。
之后查找资料后再添加
Insert overwrite directory ‘\dir’
Row format delimited
Fileds terminated by ‘\t’
Select *from table_name;
(*为要进行处理的数据,这里用*代替)
结果出现 cannot recognize input near 'row' 'format' 'delimited' in select clause错误
查阅资料后发现原因是这种方法只适用于local也就是 Insert overwrite local directory ‘\dir’
存储到HDFS并不适用
之后经过大神的指点用另外一种方法,来进行添加分隔符,
思路是对处理后的数据格式创建一新的表
根据HIVE的DDL可以观察到
CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name
[(col_name data_type [COMMENT col_comment], ...)]
[COMMENT table_comment]
[PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)]
[CLUSTERED BY (col_name, col_name, ...) [SORTED BY (col_name [ASC|DESC], ...)] INTO