Establish a (persistent) relationship between Actors
There are several master/detail type scenarios where it would be helpful to have a one-to-many or many-to-many relationship between stateful actors. In the sample and documentation this kind of relationship is established by storing lists of IDs inside the actor state. This works for tens or hundreds of IDs but when you get to thousands or millions it breaks down.
It would be very useful to have a first-class mechanism for relating actors together and persisting that relationship (presumably in an underlying reliable collection).
If such a relationship existed an actor could enumerate all of its related actors. There might be an easy way to send a message to all related actors. An actor should be allowed to belong to multiple relationships and relate to multiple actors. To keep this straight, it would be good to have a "relationship type" identifier.
Grahame Horner commented
may be this should be GraphEngine.io aka Trinity or Orleans running inside of ServiceFabric ?
Jerome Haltom commented
You can put your Actor interface type directly on the Actor state DataContract. The framework already manages to internally convert this to an ActorReference when it needs to, and back again.
greg hoover commented
Sounds like a Graph database to me. Would be awesome.