温馨提示×

linux hadoop如何删除数据

小樊
64
2026-08-25 01:04:25
栏目: 智能运维

在 Linux 环境下使用 Hadoop(HDFS) 删除数据,常见方式如下:


一、删除 HDFS 上的数据

1️⃣ 删除文件

hdfs dfs -rm /path/to/file

2️⃣ 删除目录(递归删除)

hdfs dfs -rm -r /path/to/dir

3️⃣ 强制删除(跳过回收站)

HDFS 默认会先把文件放进回收站(.Trash):

hdfs dfs -rm -r -skipTrash /path/to/dir

生产环境常用,避免占用空间


二、查看回收站(可选)

HDFS 回收站路径一般是:

hdfs dfs -ls /user/用户名/.Trash

清空回收站:

hdfs dfs -expunge

三、删除本地 Linux 上的 Hadoop 数据

⚠️ 谨慎操作,避免误删 DataNode 数据

1️⃣ 删除本地文件

rm -rf /path/to/local/file

2️⃣ 删除 Hadoop 本地存储目录(不推荐手动)

例如 DataNode 数据目录(在 hdfs-site.xml 中配置):

rm -rf /data/hadoop/hdfs/data/*

⚠️ 删除后需要重新格式化 NameNode,会丢失所有 HDFS 数据


四、删除 HBase / Hive 数据(如相关)

HBase

hbase shell
disable 'table_name'
drop 'table_name'

Hive

DROP TABLE table_name;
DROP DATABASE db_name CASCADE;

五、常见问题

❓ 删除后空间没释放?

  • 是否用了 -skipTrash
  • DataNode 是否正在同步
  • 是否删除的是本地磁盘数据

❓ 权限不足?

hdfs dfs -chmod -R 777 /path

(或联系管理员)


六、安全建议 ✅

  • 删除前先查看:
hdfs dfs -ls /path
  • 生产环境 一定要加 -skipTrash
  • 不要手动删除 HDFS 元数据目录

如果你愿意,可以告诉我:

  • HDFS / Hive / HBase / 本地磁盘
  • 误删恢复,还是 清理空间

我可以给你更精确的命令 ✅

0