Laravel galería de imágenes de lógica.

Recientemente empecé a desarrollar un sitio bastante grande. En el sitio me gustaría permitir a los usuarios subir sus trabajos de muestra. En este momento estamos bastante limitados, por lo que las imágenes se almacenarán en nuestro servidor.

Estoy un poco atascado con la lógica. Así que mi lógica sería esta.

El usuario crea una carpeta con un nombre que se almacena en la base de datos con elusers id adjunto a

tabla de carpetas

Filas

id | folder        | user_id 
1  | Some folder   | 1
2  | New folder    | 4
3  | Nother folder | 7

Mesa de imagenes

Filas

id | image_name        | folder_id |
1  | image1.jpg        | 1
2  | image2.jpg        | 1
3  | image3.jpg        | 1
4  | image4.jpg        | 2
5  | image5.jpg        | 2
6  | image6.jpg        | 2

Relaciones

class Folder extends Eloquent 
{
    public function images()
    {
        return static::has_many('Images');
    }
}

class Image extends Eloquent 
{
    public function folder()
    {
        return static::belongs_to('Folder');
    }
}

estructura de carpetas en el servidor

- samples
  -user_id
   - folder_id
     - image1
     - image2
     - image3

como puede ver, el usuario crea una carpeta, después de que se crea la carpeta,user uploades el nombre de la imagen en la base de datos con elfolders id, y mostrar las imágenes sería la forma descrita anteriormente con la relación.

Así que mis preguntas.

¿Es esta una buena lógica en tu opinión?¿Puede esto conducir problemas en el futuro?¿Qué te ofrece esta funcionalidad?

Y de lo que soy más sagrado son 2 cosas.

Creo que esto conducirá a una gran base de datos, en segundo lugar están losid's, después del tiempo x cuando habrá más usuarios, elid's aumentará, y sé que esto suena extraño, pero dado que muchos usuarios subirán imágenes llevarán a grandes identificaciones, lo que quiero decir con esto, tal vez llegue a millones, ¿hay alguna manera de resolver este problema?

Gracias por la ayuda

Respuestas a la pregunta(2)

Su respuesta a la pregunta