Retención de Objetos
El objectstore DTZ soporta la expiración/retención a nivel de objeto. Por defecto, un objeto se mantiene para siempre. Si se establece una expiración, el objeto dejará de ser visible después de la expiración.
El objeto será finalmente eliminado y desaparecerá del almacenamiento utilizado. Los trabajos de retención deberían realizar limpieza diariamente, pero se ejecutan de forma perezosa.
Estableciendo Retención
La retención puede establecerse con un encabezado adicional al subir el objeto.
- Encabezado HTTP: X-DTZ-EXPIRATION
- Valor del Encabezado: duraciones iso 8601
- https://en.wikipedia.org/wiki/ISO_8601#Durations
- para un día: P1D
- para una hora: PT1H
- para un día y una hora: P1T1H
> POST /api/2022-11-28/obj/object1
> Host: dtz-objectstore.dtz.rocks
> Content-Type: application/octet-stream
> X-DTZ-EXPIRATION: P1D
La marca de tiempo de expiración se calcula entonces al crear el objeto.
Obteniendo Retención
Si se establece una retención para un objeto, el encabezado de expiración siempre se devuelve con la marca de tiempo exacta (rfc3339).
> GET /api/2022-11-28/obj/object1
> Host: dtz-objectstore.dtz.rocks
<
<