This will depend on you, you can use “name” for all types of Nodes. But indexing would be unique. The ideal IMO would be to have a different indexing for each type of Node (User type, doc type, obj type and os on).
You can try Get started with Dgraph or do a custom structure for tenant (+ a type/label).
No, only predicates settled in the schema.
Any server. Also, you can create a balancer for this. Although not necessary.
Cheers.