Hola gente que tal? vengo a hacer una consulta sobre un proyecto personal a ver que les parece la forma de implementarlo.
Lo que quiero hacer es un aplicacion de escritorio, a la cual le definis una o varias carpetas a proteger y esta se encarga de sincronizar con un servidor todos los archivos de esa carpeta para hacer un backup.
Habia pensado, en el servidor, poner una base de datos sqlite para cada usuario del sistema, donde guardar en una tabla archivos("path", "blob") los datos de cada archivo. Como sqlite soporta hasta 2tb el tamaño máximo esta mas que bien.
Esa base de datos recibirá mayormente consultas de inserción y de borrado, no habrá updates y solo se realizaran selects a la hora de restaurar el backup por lo que no importa que el select sea lento.
¿Que opinan, podría funcionar?
La otra opcion es guardar archivos en el disco y en la base los path, pero como quiero llevar un control de versiones minimo, tendria que lidiar con los nombres de los archivos y otras cuestiones a nivel aplicacion, en cambio asi la base de datos puede resolver el problema y yo solo ocuparme de armar la parte logica.
Esta pensado para uso personal, pero estaria bueno que fuese escalable, por eso quiero saber si se les ocurre algun punto que este pasando por alto.
Gracias y saludos.