pyhdfs 可以进行 'soft' 删除吗?
Can pyhdfs make a 'soft' delete?
我正在使用
from pyhdfs import HdfsClient
fs = HdfsClient(hosts=..., user_name='hdfs', ..)
fs.delete(path_table, recursive=True)
但是,我删除目录后,在位于/user/hdfs/.Trash/Current/
的垃圾目录中找不到它。
pyhdfs 好像删除了 '-skipTrash'
的文件?如何让它软删除目标?我也找不到像 '-mv'
这样的方法来手动实现此请求。
这是官方文档的描述:
WebHDFS 删除命令没有 skipTrash
-esque 选项(或不跳过垃圾的替代方法)is documented。
hdfs dfs rm
命令 primarily attempts to use the Trash API (unless told not to),如果删除失败,它会使用我认为与 WebHDFS API 使用的相同的底层操作删除文件。
垃圾处理似乎是作为 create-directories-and-rename 命令实现的((1), (2))。
使用 WebHDFS 时(以及扩展 pyhdfs
),您可能需要手动实现该序列。
我正在使用
from pyhdfs import HdfsClient
fs = HdfsClient(hosts=..., user_name='hdfs', ..)
fs.delete(path_table, recursive=True)
但是,我删除目录后,在位于/user/hdfs/.Trash/Current/
的垃圾目录中找不到它。
pyhdfs 好像删除了 '-skipTrash'
的文件?如何让它软删除目标?我也找不到像 '-mv'
这样的方法来手动实现此请求。
这是官方文档的描述:
WebHDFS 删除命令没有 skipTrash
-esque 选项(或不跳过垃圾的替代方法)is documented。
hdfs dfs rm
命令 primarily attempts to use the Trash API (unless told not to),如果删除失败,它会使用我认为与 WebHDFS API 使用的相同的底层操作删除文件。
垃圾处理似乎是作为 create-directories-and-rename 命令实现的((1), (2))。
使用 WebHDFS 时(以及扩展 pyhdfs
),您可能需要手动实现该序列。