S3 no respeta los espacios de nombres jerárquicos. Cada depósito simplemente contiene una serie de asignaciones de clave a objeto (junto con metadatos asociados, ACL, etc.).
Aunque la clave de su objeto puede contener un '/', S3 trata la ruta como una cadena simple y coloca todos los objetos en un espacio de nombres plano.
En mi experiencia, las operaciones LIST toman (linealmente) más tiempo a medida que aumenta el recuento de objetos, pero esto probablemente sea un síntoma del aumento de E / S requerido en los servidores de Amazon, y en el cable hasta su cliente.
Sin embargo, los tiempos de búsqueda no parecen aumentar con el recuento de objetos; lo más probable es que sea algún tipo de implementación de tabla hash O (1) en su extremo, por lo que tener muchos objetos en el mismo depósito debería tener el mismo rendimiento que los depósitos pequeños para el uso normal (es decir, no LISTAS).
En cuanto a la ACL, las concesiones se pueden establecer en el depósito y en cada objeto individual. Como no hay jerarquía, son sus únicas dos opciones. Obviamente, establecer tantas concesiones para todo el depósito reducirá enormemente los dolores de cabeza de administrador si tiene millones de archivos, pero recuerde que solo puede otorgar permisos, no revocarlos, por lo que las concesiones para todo el depósito deberían ser el subconjunto máximo de la ACL para todos. su contenido.
Recomendaría dividir en cubos separados para:
- contenido totalmente diferente: tener depósitos separados para imágenes, sonido y otros datos hace que la arquitectura sea más sana
- LCA significativamente diferentes: si puede tener un depósito en el que cada objeto reciba una LCA específica, o dos depósitos con LCA diferentes y sin LCA específicas del objeto, tome los dos depósitos.
La respuesta a la pregunta original "Max archivos por directorio en S3" es: ILIMITADO. Consulte también el límite de S3 para los objetos en un cubo .
fuente
Utilizo una estructura de directorio con una raíz y luego al menos un subdirectorio. A menudo utilizo "fecha de importación del documento" como directorio debajo de la raíz. Esto puede facilitar un poco la gestión de las copias de seguridad. Sea cual sea el sistema de archivos que esté utilizando, seguramente alcanzará un límite de conteo de archivos (un límite práctico, si no físico) eventualmente. También puede pensar en admitir varias raíces.
fuente