赞
踩
在生产上,一般对数据清洗之后直接放到HDFS上,然后再将目录加载到分区表中;
order_created.txt
用 tab分割
10703007267488 2014-05-01 06:01:12.334+01
10101043505096 2014-05-01 07:28:12.342+01
10103043509747 2014-05-01 07:50:12.33+01
10103043501575 2014-05-01 09:27:12.33+01
10104043514061 2014-05-01 09:03:12.324+01
order_created.txt 存放位置
[root@zjj101 soft]# pwd
/root/soft
[root@zjj101 soft]# ls
data docker hadoop-2.7.2 hive-1.2.1 myconf order_created.txt tmp
[root@zjj101 soft]#
准备放到这里:
/user/hive/warehouse/order_partition/
shell
[root@zjj101 soft]# hadoop fs -mkdir /user/hive/warehouse/order_partition/event_time=2014-05-02
[root@zjj101 soft]#
已经生成
shell:
[root@zjj101 soft]# hadoop fs -put /root/soft/order_created.txt /user/hive/warehouse/order_partition/event_time=2014-05-02
[root@zjj101 soft]#
此时查看已经有了
sql
-- 刚刚给数据放到hdfs上面了,但是元数据没有,所有需要修复一下再执行查询语句,否则的话是查询不到的
msck repair table order_partition;
-- 执行查询语句
select *
from order_partition
where event_time = '2014-05-02';
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。