Have a look at OrientDB which is a good alternative to Neo4J. OrientDB is fully open-source, contrary to Neo4J which has a commercial license. Also, OrientDB supports the standard blueprints API and is based on RB-Tree algorithms that are very well performing for various graph use-cases.
What most of the graph databases have in common is that they scale up only. They can scale-out, although as read-only instances in general. This means that if your amount of data is excessive you will need a very large server as well ( memory and storage ).
A distributed graph alternative is Titan. Titan is a distributed graph database, which I believe is based on Hadoop. Titan is designed to scale-out and can offer an interesting approach for massive paralelism, with some overhead. There are use cases where this is more appropriate, such as similar to Google Pregel use cases.