Retención de Objetos
El objectstore DTZ soporta expiración/retención a nivel de objeto. Por defecto, un objeto se conserva para siempre. Si se establece una expiración, el objeto ya no será visible después de dicha expiración.
El objeto eventualmente será limpiado y desaparecerá del almacenamiento usado. Los trabajos de retención deberían realizar la limpieza diariamente, pero se ejecutan de forma perezosa.
Establecer Retención
La retención puede establecerse con un encabezado extra 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.
Obtener Retención
Si una retención está establecida 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
<
<