Limit local cache on desktop client

We currently have both a Windows file server and individual users using Google Apps/Drive and sharing files and folders with each other. It is a mess and nobody can find anything. My thought is to migrate to Nextcloud so that everything can be in one place and we don’t lose the cloud availability or the ability to edit documents from wherever in the browser. We are also currently using Google for shared calendar and Nextcloud could provide that as well.

Here is my dilemma. We are talking about a very large number of files and a lot of storage space. My plan it to use S3 for the primary storage and turn on S3 versioning with rules to move old versions of a certain age to Glacier. That should be a somewhat ok backup option. However, the desktop client is going to want to sync those files to a local cache. I have significant experience with Gladinet and in that case a very large file store was not an issue as you could choose what files you wanted to locally cache and what you wanted to exclude. You could also limit the size of the local cache. If you wanted to open a file that was not currently cached, there was a slight delay while it made it available, but it was livable.

I have been digging, but I can find nothing that tells me if Nextcloud will work here. If the server had 4TB of files, and it will, only a small subset of those files will be relevant to certain people. Also, not everyone should have access to everything, so permissions per user need to be set. Finally, nobody wants to be syncing 4TB to their laptop. Is Nextcloud capable of this.

  1. Does it have a way to limit the cache size and sync files on first use overwriting old cache files as needed when full?
  2. Does it have a way to select certain files/folders that you want to always have available offline?
  3. Does it have a way to select certain files/folders that you never want to maintain locally?

These are deal killers for an implementation like this. If I have somehow missed the answers to these questions, please point me to them. Otherwise, I need the community’s help to determine if Nextcloud is a suitable option for us. Finally, if anyone could tell me, how are these things handled in the mobile clients, where space is an even larger issue?