Как удалить каталог, содержащий много подкаталогов из Amazon s3 - PullRequest
0 голосов
/ 13 февраля 2019

Я допустил ошибку при разбиении своей таблицы паркета в amazon s3, и в результате я получил папку, содержащую несколько миллионов подкаталогов, и на удаление всего каталога уйдут месяцы.Есть ли у вас идеи, как действовать быстро?Спасибо.

У меня есть следующая структура папок в s3:

enter code 
my_parquet/id=1/..
my_parquet/id=2/..
....
my_parquet/id=6000000/..

Ответы [ 3 ]

0 голосов
/ 13 февраля 2019

Вы хотите использовать рекурсивное удаление с префиксом:

aws s3 rm s3://bucket/my_parquet --recursive
0 голосов
/ 14 февраля 2019

Вы можете создать Политика жизненного цикла в корзине, указав желаемый путь.

Выберите, чтобы удалить объекты, и они будут волшебным образом удалены где-то в течение 24 часов (или около того).) период.Работает на любом количестве объектов.

0 голосов
/ 13 февраля 2019

Самый простой способ - удалить корзину и воссоздать ее.При использовании интерфейса командной строки AWS это будет aws s3 rb s3://bucket-name --force.Это не будет работать, если в корзине включено управление версиями.В этом случае вам необходимо очистить корзину .

Также имейте в виду, что концептуально S3 на самом деле не имеет папок / подкаталогов.Есть только объекты, и некоторые из них логически сгруппированы с префиксами в имени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...