Nu este clar dacă doriți să păstrați obiectele necomprimate în S3 sau dacă conținutul găleții se schimbă în continuare.
O opțiune pe care o aveți este să utilizați Inventarul S3. Nu este instantaneu, dar va genera automat o listă de obiecte din găleată și va scrie asta într-o găleată S3 (aceeași găleată sau alta).
Puteți citi această listă într-un script mic (indiferent cu ce vă simțiți confortabil) și să o faceți să funcționeze câte un obiect. Utilizați S3 CLI pentru a trage în jos obiectul, apoi comprimați-l folosind instrumentele OS/script.
Recomand cu tărie să construiți ceva care să verifice dacă obiectul comprimat există deja, astfel încât să puteți reporni procesul dacă nu reușește sau sunt adăugate obiecte noi fără a fi nevoie să procesați totul din nou.
Dacă scrieți obiectele comprimate înapoi în S3, luați în considerare utilizarea unei instanțe EC2 sau Lambda. Cu Lambda, poate fi necesar să utilizați un flux de fișiere pentru a comprima fișierul din mers, în loc să îl trageți în jos. Ar trebui să puteți găsi exemple în acest sens cel puțin pentru Python, dacă nu pentru alte limbi acceptate.
--
Un cuvânt de precauție, faceți un calcul aproximativ cu privire la cât va costa asta. Solicitările de primire sunt destul de ieftine, dar transferul de date afară poate fi scump. De asemenea, dacă utilizați orice altă clasă de stocare decât Standard, probabil că va avea un cost de recuperare asociat.