I have a web application that stores a lot of user generated files. Currently these are all stored on the server filesystem, which has several downsides for me.
maybe a hybrid solution.
Use a database to store metadata about each file - and use the file system to actually store the file.
any restructuring of 'folders' could be modelled in the DB and dereferenced from the actual OS location.