Listado de directorios a un nivel dado en Amazon S3

Estoy almacenando dos millones de archivos en un cubo S3 de Amazon. Hay una raíz dada (l1) a continuación, una lista de directorios debajo de l1 y luego cada directorio contiene archivos. Entonces mi balde lucirá algo como lo siguiente

l1/a1/file1-1.jpg
l1/a1/file1-2.jpg
l1/a1/... another 500 files
l1/a2/file2-1.jpg
l1/a2/file2-2.jpg
l1/a2/... another 500 files
....

l1/a5000/file5000-1.jpg

Me gustaría enumerar lo más rápido posible las entradas de segundo nivel, por lo que me gustaría obtener a1, a2, a5000. No quiero enumerar todas las claves, esto llevará mucho más tiempo.

Estoy abierto a usar directamente la api de AWS, sin embargo, he jugado hasta ahora con la gema right_aws en rubyhttp://rdoc.info/projects/rightscale/right_aws

Hay al menos dos API en esa gema, intenté usar bucket.keys () en el módulo S3 e incrementally_list_bucket () en el módulo S3Interface. Puedo configurar el prefijo y el delimitador para listar todos los l1 / a1 / *, por ejemplo, pero no puedo averiguar cómo listar solo el primer nivel en l1. Hay una entrada: common_prefixes en el hash devuelto por incrementally_list_bucket () pero en mi muestra de prueba no está completa.

¿Es posible esta operación con la API S3?

¡Gracias!

Respuestas a la pregunta(2)

Su respuesta a la pregunta