Удалить старые файлы на основе даты, извлеченной из имени файла по пользовательским правилам - PullRequest
0 голосов
/ 27 сентября 2018

Я пытаюсь найти лучший способ автоматического удаления моих старых файлов резервных копий SQL на s3 на основе следующих правил:

  1. сохранить все резервные копии за последние 7 дней
  2. сохранить последнюю резервную копиюкаждого дня за последние 6 месяцев
  3. хранить последнюю резервную копию каждой недели за последние 2 года
  4. хранить последнюю резервную копию каждого месяца для файла более 2 лет.

Мои имена файлов содержат дату и время резервного копирования, как указано ниже XX_backup_2016_12_09_150003_4066809.bak .

Что вы рекомендуете?AWS Lambda или что?

1 Ответ

0 голосов
/ 28 сентября 2018

Рассмотрите возможность использования S3 Lifecycle Rules с ObjectTagging .

. Вы можете использовать S3 Events to , запускающих лямбду для каждого PutObject.Ваша лямбда может создавать теги на объектах S3 на основе правил, которые вы изложили.Имя файла будет введено в лямбду из события S3.

То есть:

  1. хранить все резервные копии за последние 7 дней (тег по умолчанию для хранения в течение 7 дней)
  2. сохранить последнюю резервную копию каждого дня за последние 6 месяцев (пометить как 6-месячное хранение)
  3. сохранить последнюю резервную копию каждой недели за последние 2 года (пометить как 2-летнее хранение)
  4. keepпоследняя резервная копия каждого месяца для файла более 2 лет (тег для хранения x)

Лямбда может иметь дело с крайними случаями, чтобы определить, требуется ли конкретный файл для 6 месяцев и 2 лет.Тег по умолчанию можно использовать, если для хранения в течение 7 дней нельзя применить другой тег.

Тогда правила жизненного цикла с истечением срока действия могут быть созданы и применены в соответствии с тегом.

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