From what I have read up I think I understand but am not 100% sure if our design would fit into Entity Group and Entity Objects.
So what we have is shared worlds, each game server representing a single world and has a number of members that have access to it (usually a small number but count is variable). So in this case we have an Entity Group which represents the world and thus its members ... we think anyway.
The players can add and manipulate objects in the world at current we represent an 'object' as a collection of componenets each componenet can be represented as a small json object ... we do this for ease of sync and our save method so for example if you move the object only the position componenet changed and that is all we sync, when we save the state of the world we are actually saving the list of all componenets that exist in the world.
The question is can we (or should we) map the current structure onto Entity Group and Entity Object.
That is represent a world as a Entity Group so now we can assoceate a number of players with that group. Our componenets would be Entity Objects in that case. A world could consist of thousands of small componenets ... or we could serialize the object level reducing the number but increasing the size of each serialized element slightly ... a typical object would have a handful of componenets on it but could have many. For example we have an annotaiton componenet that lets players attach messages to the object, an object can techncialy have any number of annotaitons.
Alternativly we could keep it more how we are doing it in local tests at the moment ... that is we have the game server simply write a file to the disk which is the list of componenets. I think that would work with Entity File. Size is the main concern we want the players to be abel to build large complex worlds ... size of the resulting save data can there for be large (what large is we haven't defined yet, as a single text file possibly as large as a few MB but less than 10MB). The speed at which we load and save this data isn't a concern as we save data infrequently on the server to protect against unexpected shut down and of course we save on shut down, load on start up of the game server.
The goal here is to persist the state of the world assoceated with the group of players so that when all players are off line the world can shut down. When any one of the players comes back online we can spin up the world for them and load it from the last stored state.