2010-07-13 9 views
7

sto memorizzazione di molte immagini in Amazon S3, utilizzando un lib ruby ​​(http://amazon.rubyforge.org/)oggetti eliminando automaticamente di età superiore a n giorni in Amazon S3 (come?)

Non mi importa le foto più vecchi di 1 settimana, quindi per liberare lo spazio in S3 devo cancellare quelle foto.

So che c'è un metodo per eliminare l'oggetto in un certo secchio:

S3Object.delete 'photo-1.jpg', 'photos' 

Esiste un modo per eliminare automaticamente l'immagine più vecchio di una settimana?

Se esso non esiste, dovrò scrivere un demone per farlo :-(

Grazie


UPDATE:. Ora è possibile, controllare la risposta di Roberto

+0

c'è una risposta migliore di quella contrassegnata ... –

risposta

1

Purtroppo, Amazon non offre un'API per l'eliminazione automatica sulla base di una serie specifica di criteri.

Avrai bisogno di scrivere un demone che passa attraverso tutte le foto e seleziona solo quelli che soddisfano i tuoi criteri, quindi li elimina uno per uno.

+3

Avviso! - Dai un'occhiata al post di Roberto qui sotto. Può essere fatto ora. – digiguru

1

Se si ha accesso a un database locale, è semplice registrare semplicemente ciascuna immagine (è possibile farlo già in base all'applicazione), quindi è possibile eseguire una query semplice per recuperare l'intero elenco ed eliminarli ciascuno . Questo è molto più veloce di interrogare direttamente S3, ma richiede una memorizzazione locale di qualche tipo.

42

È possibile utilizzare il criterio Amazon S3 oggetto di scadenza

Amazon S3 - Object Expiration | AWS Blog

Se si utilizza S3 per memorizzare i file o altri file che hanno una limitata durata del registro, probabilmente dovuto costruire qualche tipo di meccanismo interno all'oggetto di traccia e per avviare un processo di eliminazione di massa dall'ora al tempo . Anche se la nostra nuova funzione di eliminazione di più oggetti ti aiuterà a rendere questo processo più semplice e veloce, vogliamo andare sempre più lontano.

La nuova funzione Scadenza oggetto di S3 consente di definire le regole per pianificare la rimozione degli oggetti dopo un periodo di tempo predefinito. Le regole sono specificate nel criterio di configurazione del ciclo di vita applicabili a un bucket. È possibile aggiornare questo criterio tramite l'API S3 o dalla Console di gestione AWS.

Object Expiration | AWS S3 Documentation

Alcuni oggetti che si memorizzano in un secchio di Amazon S3 potrebbe avere un vita ben definito. Ad esempio, è possibile caricare periodicamente i registri nel bucket, ma potrebbe essere necessario conservare tali registri per un intervallo di tempo specifico di .È possibile utilizzare la gestione degli oggetti con il ciclo di vita per specificare una durata per gli oggetti nel bucket; quando scade la durata di un oggetto , Amazon S3 mette in coda gli oggetti per l'eliminazione di .

Ps: fare clic sui collegamenti per ulteriori informazioni.