can we have more than one schema in dgraph.
No, but you can name predicates according to your need for separation:
This would make virtually different schemas.
name.user: string @index(exact, fulltext) . name.post: string @index(hash) . name.board: string @index(term, fulltext) .
instead of “name” for all nodes.