Recupere varias fotos debajo de un nodo de Firebase Storage

Tengo un CollectionView que estoy usando imágenes de Firebase Storage para llenar. Almaceno las imágenes en el nodo 'userId'. Quiero verificar la existencia de archivos a granel que están disponibles en el nodo, para poder almacenarlos en una matriz.

Traté de recuperar las URL por separado para cada una, sin embargo, creo que este es un enfoque muy equivocado. Pero no pude averiguar cómo hacerlo de la manera más eficiente y dónde ponercollectionView.reload(). Esto es lo que hice:

let storage = FIRStorage.storage()
let firstImageRef = storage.referenceForURL("gs:storageUrl").child(uid).child("profile.jpg")

firstImageRef.downloadURLWithCompletion { (URL, error) -> Void in
   if (error != nil) {
       print(error)
   } else {
       if let url = URL {
         self.databaseImagesOrder.append(url)
       }
   }
}

let secondImageRef = storage.referenceForURL("gs:storageUrl").child(uid).child("second_pic.jpg")
secondImageRef.downloadURLWithCompletion { (URL, error) -> Void in
   if (error != nil) {
      print(error)
   } else {
      if let url = URL {
        self.databaseImagesOrder.append(url)
      }
   }
 }

 // etc.. 

 collectionView.reloadData()

Además, ¿es mejor buscar la imagen como NSData mejor que buscar primero las URL y luego buscar las imágenes? Si es así, ¿cómo puedo recuperar imágenes en masa desde Firebase Storage?

Respuestas a la pregunta(2)

Su respuesta a la pregunta