Hi! We generally recommend using ES as the graph DB at this time. It simplifies deployments, does not require dealing with Neo4J's licensing, and we have not found it to be a significant performance drag on our deployments.
Being not a native GraphDB, complicated deep level graph queries are almost certainly going to be slower on ES than on a native GraphDB, but most use cases do not require extremely high levels of hops.
There was some initial work that was done to support DGraph as a graph backend, but it has not seen much battle-testing nor have we seen a particularly large demand for this from the community.