背景:
在进行大数据测试的时候,需要删除测试数据,我对ODS层数据也用truncate table 表名进行删除,然后报错,后面知道ODS层数据删除不能这样删
原因:
ODS层数据一般是外部表,不是单单删除数据那么简单,它还有数据文件在HDFS上
正确方法:
1.进入容器,切换为能进入HDFS的用户
[root@0822 10:51:00 airflow-0]: ~
>export HADOOP_USER_NAME=hdfs
3.删除数据文件
[root@0822 10:51:58 airflow-0]: ~
>hadoop fs -rm -r /user/hdfs/upapilog/*
4.查看是否已删除
[root@0822 10:52:13 airflow-0]: ~
>hadoop fs -ls /user/hdfs/upapilog/