Conservazione degli Oggetti
Il DTZ objectstore supporta la scadenza/conservazione a livello di oggetto.
Per default un oggetto viene conservato per sempre. Se viene impostata una scadenza, l’oggetto non sarà più visibile dopo tale scadenza.
L’oggetto verrà eventualmente pulito e sparirà dallo spazio di archiviazione utilizzato. I processi di conservazione dovrebbero eseguire la pulizia quotidianamente, ma vengono eseguiti in modo lazy.
Impostare la Conservazione
La conservazione può essere impostata con un header aggiuntivo durante il caricamento dell’oggetto.
- HTTP Header: X-DTZ-EXPIRATION
- Valore dell’Header: durate iso 8601
- https://en.wikipedia.org/wiki/ISO_8601#Durations
- per un giorno: P1D
- per un’ora: PT1H
- per un giorno e un’ora: P1DT1H
> POST /api/2022-11-28/obj/object1
> Host: dtz-objectstore.dtz.rocks
> Content-Type: application/octet-stream
> X-DTZ-EXPIRATION: P1D
Il timestamp di scadenza viene quindi calcolato al momento della creazione.
Ottenere la Conservazione
Se è impostata una conservazione per un oggetto, l’header di scadenza viene sempre restituito con il timestamp esatto (rfc3339).
> GET /api/2022-11-28/obj/object1
> Host: dtz-objectstore.dtz.rocks
<
<