Duda de modelos en django

Iniciado por Sr.22, Agosto 20, 2017, 08:09:06 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Agosto 20, 2017, 08:09:06 PM Ultima modificación: Agosto 21, 2017, 01:15:35 AM por Gabriela
Hola chicos resulta estoy empezando un proyecto personal y he estado analizando a Facebook y mi pregunta va orientado a esto: ¿Como estará diseñada la tabla usuario? es decir los vídeos e imágenes los guarda en un directorio estilo: media/video/user/namevideo y que partir de ahí manda los vídeos e imágenes que uno sube en el perfil.

Porque me imagino que hacer la búsqueda de todos los nombre de vídeos, si no esta ordenada por carpetas seria muy lento encontrarla.

si ando muy perdido les agradecería que me orienten.
Gracias por sus respuestas.

No entendi bien que tiene que ver tu pregunta con el titulo del thread ... Pero me imagino que por ser un monstruo en el mundo, facebook debe tener algun concepto nuevo customizado sobre la arquitectura de su db (noSQL, mongo, etc). Igualmente en internet hay varios modelos de como implementar una estructura relacionada para una db aplicada a red social. Saludos.

Agosto 20, 2017, 10:16:18 PM #2 Ultima modificación: Agosto 20, 2017, 10:28:52 PM por grep
El título del hilo no tiene relación directa con tu duda. Al ver el título alguien puede intuir que necesitas alguna explicación técnica relacionada con el framework Django, pero tu duda no es de eso.

Para discriminar el contenido multimedia que suben los usuarios, lo único que necesitas es un ID (un valor que identifica algo de manera única). Este ID se puede asociar con cada contenido multimedia de diferentes maneras (puede haber otra tabla en donde se liste el nombre de archivo con el ID del usuario).

Facebook almacena, obtiene, y cachea el contenido multimedia de otros servidores con el objetivo de balancear la enorme transferencia que tiene en cada instante.

Listar el contenido de un directorio no es la manera más inteligente de hacer las cosas, para esto existen las bases de datos, los servicios cache y las arquitecturas de servicios escalables o microservicios.

Saludos

Facebook tiene un conjunto de Bases de Datos Relacionales y No Relacionales (Apache Cassandra), en la cual, en esta ultima guarda sus referencias a los contenidos de los usuarios
No intentes pararme, trata de defenderte, trata de matarme, pero de cualqueir forma TE SUPERARE

Lo siento por lo del titulo, no volverá a ocurrir.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Listar el contenido de un directorio no es la manera más inteligente de hacer las cosas, para esto existen las bases de datos, los servicios cache y las arquitecturas de servicios escalables o microservicios.

Saludos
¿Ejemplos de esos servicios?, donde puedo investigar sobre ellos, ¿algún libro que pueda ser util? Gracias por tu respuesta, y la de los demás.

Las siguientes referencias (en ingles) te pueden interesar:

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Vas a encontrar nombres de diversos servicios, plataformas y diseños arquitectonicos de software que sirven para manejar grandes cargas de datos. Anota esos nombres e investiga a partir de eso.

Saludos