Я пишу сервер для приложения Javascript, которое имеет функцию синхронизации. Файлы и каталоги, создаваемые и изменяемые клиентом, должны быть синхронизированы с сервером (те же изменения, сделанные на клиенте, должны быть внесены на сервере, включая удаление).
Поскольку каждый файл находится на сервере, я обсуждаю необходимость записи в базе данных MySQL, соответствующей каждому файлу. Следующая информация должна храниться в каждом файле / каталоге для каждого пользователя:
- Было ли оно удалено или нет (так как удаления должны быть синхронизированы с другими клиентами)
- Отметка времени последнего изменения каждого файла (поэтому я знаю, нуждается ли клиент в обновлении файла)
Я мог бы хранить обе эти части информации в файлах (например, .deleted file и .modified файл в каждом каталоге пользователя, содержащем пути к файлам + метки времени в последнем) или в базе данных.
Однако я также должен соответствовать ограничению памяти в 80 МБ. Между хранилищем файлов и
хранилище базы данных, что было бы более эффективным для этой цели?
Редактировать: файлы должны храниться в файловой системе (не в базе данных), и у пользователей есть квота на место, которое они могут использовать.