Entonces el escenario es el siguiente:
Tengo varias instancias de un servicio web que escribe un blob de datos en Azure Storage. Necesito poder agrupar blobs en un contenedor (o un directorio virtual) dependiendo de cuándo se recibió. De vez en cuando (todos los días en el peor de los casos), los blobs antiguos se procesarán y luego se eliminarán.
Tengo dos opciones:
Opción 1
Hago un contenedor llamado "blobs" (por ejemplo) y luego guardo todos los blogs en ese contenedor. Cada blob utilizará un nombre de estilo de directorio y el nombre del directorio será la hora en que se recibió (por ejemplo, "hr0min0 / data.bin", "hr0min0 / data2.bin", "hr0min30 / data3.bin", "hr1min45 / data.bin ", ...," hr23min0 / dataN.bin ", etc - un nuevo directorio cada X minutos). Lo que procesa estos blobs procesará primero los blobs hr0min0, luego hr0minX y así sucesivamente (y los blobs todavía se están escribiendo durante el procesamiento).
opcion 2
Tengo muchos contenedores, cada uno con un nombre basado en la hora de llegada (por lo que primero será un contenedor llamado blobs_hr0min0, luego blobs_hr0minX, etc.) y todos los blobs en el contenedor son esos blobs que llegaron a la hora indicada. Lo que procesa estos blogs procesará un contenedor a la vez.
Entonces mi pregunta es, ¿qué opción es mejor? ¿La opción 2 me brinda una mejor paralelización (ya que los contenedores pueden estar en servidores diferentes) o es mejor la opción 1 porque muchos contenedores pueden causar otros problemas desconocidos?