Who knows. That’s a hard thing to tell. Both strategies can be done. I guess a Dgraph Cluster for each service is better. As the Auth system can link them up.
That’s very opinative. For me a Dgraph Cluster per service. But at Dgraph we have the Dgraph Cloud(https://dgraph.io/products/) that holds several multi-tenant instancing. And it works just fine, people can’t even notice it is shared.
Dgraph will balance the predicates based on disk usage.
I personally think it is a huge/massive/tremendous mistake to put all eggs in the same basket. Especially speaking about a such huge scale as Google or even Facebook. It doesn’t matter how good is the tool, I have to have redundancy and avoid a single point of failure.
That’s a complex topic that only those who work for them can tell. We never know all the approaches the people uses in their companies. Some of them like “Netflix” does expose their ideas over public talks and blog posts. And all of them has their pros and cons. No one will do exactly the same.