Cerrado

Crear backend para alojar gran cantidad de archivos

Este proyecto recibió 2 ofertas de freelancers talentosos con una oferta promedio de $250 ARS.

Obtén cotizaciones gratis para un proyecto como este
Empleador trabajando
Presupuesto de Proyecto
N/A
Ofertas Totales
2
Descripción del Proyecto

Necesito una aplicacion Backend que este disponible mediante webservices para la subida de contenido digital (imagenes, videos, audios).<br />La aplicacion backend debe ser capaz de manejar grandes cantidades de datos, en un principio se va a requerir que la aplicacion mantenga 60TB entre videos e imagenes. Para esto espero sugerencias sobre si usar HDFS o algún otro framework, ya que se tiene que deployar en un server con varios discos rigidos para ser capaz de llegar a dicha capacidad.<br />En resumen la aplicacion es un repositorio online de archivos multimedia para una empresa.<br />Debe tener todas las funcionalidades de usuario (login, forgot password, change password, logout).<br />Habra distintos perfiles de usuarios:<br />--Visualizador: únicamente puede ver videos o imagenes compartidos con el<br />--Colaborador: igual al visualizador pero ademas, puede subir contenido y editarlo<br />--Administrador que puede subir contenido, editar el contenido de los demas y generar y eliminar usuarios<br /><br />Al momento de subir un archivo, se define con que personas se va a compartir, con lo cual unicamente dichas personas seran capaces de verlo. Ademas, se agregar keywords para que se pueda buscar facilmente los archivos relacionados a un mismo tema.<br /><br />Se puede buscar archivos por nombre, autor o keyword (siempre en base a los que se compartieron con el usuario actual, excepto que sea administrador).<br /><br />Para las imagenes se debe almacenar la imagen en su calidad original, y ademas generar un thumbnail y una imagen de menor calidad a la original (a definir la calidad, puede ser 480 por ej)<br />Para los videos, se los debe convertir a distintos formatos para asegurar su visualizacion en distintos browsers y ademas se deben generar los videos en distintas calidades para que sea mas facil su reproduccion online (tambien se debe almacenar el original). Se sugiere ffmpeg dado que ya tengo una implementacion funcionando y la puedo compartir, a menos de que haya una propuesta mejor.<br />Ademas, de todos los archivos multimedia, se debe almacenar los cambios que se van haciendo, es decir, cada vez que el usuario sube una nueva versión de un video o imagen existente, se debe almacenar las versiones anteriores. Dado que estas deben poder ser consultadas anteriormente.<br /><br />En Resumen:<br />Distintos Roles de usuarios<br />Administracion de Usuarios<br />Subida de Imagen y Videos<br />Para las imagenes se la debe transformar en distintas calidades<br />Para los videos se los debe transformar en distintas calidades y formatos.<br />Historial de versiones de los archivos multimedia<br />La aplicacion debe estar disponible para manejar grandes cantidades de informacion. Se espera que el almacenamiento original sea de 60TB y se va a incrementar con el tiempo.<br /><br />Requisitos no funcionales:<br />Manejo de sesiones con JWT (Json Web Token) ya que el frontend va a ser una app con AngularJS<br />Utilizar HDFS para manejar grandes cantidades de archivos (se espera en un principio 60TB) que estaran distribuidos en distintos discos rígidos. Y los archivos deben estar en un path que sea accesible para la aplicacion web.<br /><br />Se espera un dev que tenga experiencia en el manejo de archivos de manera distribuidas entre distintos discos rígidos en un mismo servidor local.<br /><br />Poseo una aplicacion que se puede tomar como base, que realiza la subida de videos y los convierte a los distintos formatos y tamaño. Ademas de utilizar JWS y la administracion de Usuarios. Si el dev lo solicita lo puedo compartir.

Habilidades Requeridas

Buscando hacer algo de dinero?

  • Establece tu presupuesto y período de tiempo
  • Describe tu propuesta
  • Consigue pago por tu trabajo

Contrata Freelancers que también oferten en este proyecto

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online