i am developing an MVC application where users store files and folders online in my servers. i was thinking to use a NAS for storing user data but i got a simple question. what if the amount of user data exceed my NAS storage space ? and what if it happens again and again and when users want to download their stored files how could i know the place (specific NAS) where is located a file ? .. i have many questions about that because i am new in this area, i don't know if there is a way i can have "a main NAS" with the responsability of do the job of put a file where it find available space instead of doing by myself and then be able to get any file without matter where the file is saved. i don't know if i am being clear in my question but i need somebody give an idea. thanks in advance.
Could you? Yes. Is it a good idea? Probably not. You could build our own sort of file allocation table which would keep track of each file's location. For example, a simple database table that says a specific file is located on NAS #23. But you probably shouldn't, because there are much better options.
You're massively overcomplicating your network architecture without reason. A single NAS device can be expanded to handle multiple petabytes of data.
If you're talking about using commercial consumer-grade NAS devices, that's not an economical choice for any website that involves that much data. A cheap server running NAS4Free (or FreeNAS) could be expanded as needed to provide many terabytes of data storage, and if you surpass that you should be looking at running an enterprise-class NAS/SAN instead of hundreds of consumer NAS devices.