Background
Is there some kind of a file system or cloud service that would allow me to offload things from my local hard drive (to a NAS or cloud), and still makes it seem that all my files are still available locally? Then when I try to access one of these files, it would stream them to me. If I save, then it would stream those changes back, keeping them sync. But: it would manage space efficiently, meaning files I access often would stay cached locally and things that I haven't touched for many months will be cleaned from the local cache. And maybe I could also specify how much I allot for local cache, e.g. 10..100 GB.
Requirements
I'm mainly looking for (free and) open source software, but I'd like to know if such commercial and/or closed source software exists as well -- especially if no (F)OSS versions are available.
I am mainly looking for web-based or linux-compatible apps, but I'd like to know if such software exists for other platforms as well -- especially if no web/linux versions are available.
So far
I know about Dropbox and Google Drive and alike, but AFAIK they don't have any kind of smart caching or file streaming mechanism. The best I can do with these is manually select some folders to be synced or not to be synced. And after that I have to wait to open files after it starts downloading.
I've heard about this tool: torrent-mount, which mounts a virtual file system of a torrent, immediately letting you look around it. And when you open up any file it starts streaming that file to you. What's really cool about this is that this process is all transparent to local applications: they just think that your hard drive is seeking and slow at reading, they have no idea the data comes from the web. All the network communication is abstracted away.
Downsides: AFAIK this is a one-way streaming solution, and the torrent protocol is read-only and can't really support streaming modifications upstream. Also, AFAIK, it doesn't keep track of how how many times you open a file, and you can't set a cache limit either. It's more of a cool tech demo showing: "Hey, look, it's possible to mount torrent files as virtual file systems." But the reading and streaming user experience is quite similar to what I am looking for.
Questions
Is there any software that you've used, tried or just know about that might fit for what I am looking for?
Or if you haven't heard about a tool like that and you also would like something similar, I would be glad if you told me -- maybe as a comment -- so at least I know I am not alone in wishing for something like this.