Может ли pyhdfs сделать «мягкое» удаление?

Я использую

      from pyhdfs import HdfsClient

fs = HdfsClient(hosts=..., user_name='hdfs', ..)
fs.delete(path_table, recursive=True)

Однако после того, как я удалил каталог, я не смог найти его в каталоге корзины, расположенном в /user/hdfs/.Trash/Current/.

Похоже ли, что pyhdfs удаляет файлы с '-skipTrash'? Как сделать так, чтобы он мягко удалял цель? Я не мог найти метод, подобный '-mv'либо реализовать этот запрос вручную.

Это описание из официального документа:

1 ответ

Нет skipTrashПараметр -esque (или альтернатива не пропускать корзину) задокументирован для команды удаления WebHDFS.

В hdfs dfs rmКоманда в первую очередь пытается использовать Trash API (если не сказано, что это не так), и если удаление не удается, она удаляет файл, используя то, что, как я полагаю, является той же базовой операцией, которую использует API WebHDFS.

Похоже, что удаление в корзину реализовано ((1), (2)) как команда создания каталогов и переименования.

Вероятно, вам потребуется реализовать эту последовательность вручную при использовании WebHDFS (и, соответственно, pyhdfs).

Другие вопросы по тегам