The issue here is that the number of joins explodes, and depending on your schema you may be doing lots of self joins.
An additional complication is if your dataset is too big for a single host. In Postures you shard, but that is manual and has significant cost.
In DGraph you lose some performance but (hopefully) if you know something about your queries you can optimize the distribution function to minimize cross node queries. This is a pretty hard problem to generalize, but even a partial solution is good.
https://github.com/dgraph-io/dgraph/blob/master/present/sydn...
Naive example: in the movie dataset, if you partition by node type and have actors on one server and films on another a query like "find me all films with actors names starting with M who also starred in films with actors starting with N" will perform horribly, but if you partition by actor and film name it will be OK.
Titan (and I think most distributed Graph DBs) use pluggable distribution strategies and default to random to try to combat this problem.
Both are important. As someone who sometimes has very large graphs, I'm more interested in this benchmark than absolute performance: I'm happy to take a performance hit if it means I can scale out.
I'm not aware of any schema free databases marketing themselves as Graph DBs. I'm sure there are though.
There is a distinction between graph and graph processing frameworks (GraphX etc) though, but I don't think that's what you mean.
Last time I asked how to import an actual graph into OrientDB, a marketing person of theirs pointed me at a Java API for writing extensions to their code.
The latest research disagrees with your statement:
SQLGraph: An Efficient Relational-Based Property Graph Store; SIGMOD 2015.
Previous hackernews discussion: https://news.ycombinator.com/item?id=11101013