Distributed in-memory SPARQL Processing via DOF Analysis