把数据直接上传到分区目录上,让分区表和数据产生关联的三种方式

方式一:上传数据后修复

上传数据

-- 创建文件
hive (default)> dfs -mkdir -p/user/hive/warehouse/mydb.db/dept_partition2/day=20200401/hour=13;

-- 上传数据
hive (default)> dfs -put /opt/module/datas/dept_20200401.log /user/hive/warehouse/mydb.db/dept_partition2/day=20200401/hour=13;

查询数据(查询不到数据)

hive (default)> select * from dept_partition2 where day='20200401' and hour='13';

执行修复命令

hive> msck repair table dept_partition2;

之后再次查询就可以了

方式二:上传数据后添加分区

上传数据(同上)

执行添加分区

hive (default)> alter table dept_partition2 add partition(day='201709',hour='14');

再次查询数据

方式三:创建文件夹后 load 数据到分区

上传目录

hive (default)> dfs -mkdir -p
/user/hive/warehouse/mydb.db/dept_partition2/day=20200401/hour=15;

再次查询即可
上传数据

hive (default)> load data local inpath '/opt/module/hive/datas/dept_20200401.log' into tabledept_partition2partition(day='20200401',hour='15');
posted @ 2022-11-05 19:41  去揽一池星河  阅读(68)  评论(0)    收藏  举报