Semántica S3
01S3 es un registro de objetos, no una carpeta compartida.
Una ruta Amazon S3 sigue la semántica de objetos: buckets y prefijos delimitan el ámbito, los listados descubren trabajo y los metadatos prueban la entrega. El diseño debe distinguir objetos nuevos, modificados, duplicados, tardíos o procesados parcialmente.
Las claves definen el inventario
Define bucket, prefijo, reglas de inclusión, metadatos esperados y si las claves anidadas forman parte de la carga. Los listados amplios añaden trabajo; una selección explícita mantiene la intención revisable.
El reinicio depende del objeto
Trata cada objeto como unidad recuperable y define qué ocurre tras un timeout, un stream interrumpido o un fallo del destino. La reconciliación debe separar objetos terminados de trabajo reintentable con seguridad.
Las versiones cambian el contrato
Acuerda nombres de clave, sobrescritura o versión, metadatos, tipo de contenido, retención, archivo, cuarentena y limpieza del origen. Estas decisiones determinan cómo interpretar una entrega correcta.
Diseño de la ruta Flower
02Convierte el estado de los objetos en un plan de trabajo controlado.
El adaptador S3 da a Flower operaciones para inspeccionar propiedades, leer en streaming o por rangos, copiar, gestionar niveles y recorrer un inventario acotado. El flujo convierte esas primitivas en trabajo de negocio seguro.
Inventario antes del movimiento
Listados y propiedades fijan los candidatos antes de mover bytes. Prefijos, metadatos, tamaño y evidencias previas permiten clasificar trabajo nuevo, modificado, congelado, duplicado o ya completado.
Adapta la ruta de bytes al objeto
Objetos pequeños, streams de varios gigabytes, lecturas por rangos y copias internas no necesitan la misma ruta. Flower elige un recorrido acotado y mantiene transformación y validación en el pipeline cuando se requieren.
Demuestra la entrega antes de limpiar
Propiedades de destino, controles de integridad, linaje y reconciliación cierran la unidad. Borrado o archivo del origen siguen esas pruebas; una validación fallida pasa a recuperación o cuarentena visible.
Decisiones de producción S3
03Haz explícitas las políticas de versión, rendimiento y evidencia.
S3 escala con tanta facilidad que puede ocultar un contrato impreciso durante mucho tiempo. Producción debe definir identidad, paralelismo seguro y la prueba que autoriza una limpieza destructiva.
Política de versiones y borrados
Decide si la identidad de negocio es la clave, un ID de versión o el último objeto visible. Define sobrescritura, marcador de borrado, retención, ciclo de vida, archivo y repetición antes de limpiar el origen.
Concurrencia con límite de coste
Modela por separado número de objetos y volumen de bytes. Limita listados, transferencias, multipart, reintentos y tráfico entre regiones; alerta por edad y cola antes de una recuperación costosa.
Evidencias de checksum y linaje
No supongas que cada ETag es el MD5 completo, sobre todo tras una carga multipart. Registra algoritmo usado, tamaño, clave, versión, identidad de destino y resultado final de validación.