导出hive表数据
date_str="2022-04-07"
hive -e """set mapreduce.job.queuename=指定集群名;
select * from hive表名 where day='${date_str}' and (hour BETWEEN '00' and '23') limit 100000000;""" > 指定目录/指定文件名.txt
转换时间
如果你的your_time是时间戳形式,可以用下面这个方法,转换一下你的your_time,转成正常的日期。
from_unixtime(cast(your_time/1000 as bigint),'yyyy-MM-dd')
写入hive
注:一定要注意,创建表时格式是orc还是text,如果是将txt文本写入hive表,创建表时需要用text
多个分区字段的话,用逗号隔开
date_str="2022-04-07"
hive -e """set mapreduce.job.queuename=指定集群名;
load data local inpath 'your_test.txt' overwrite into table hive表名 partition (day = '${date_str}');"""