1. A computer-system-implemented method for translating a first query into an edge query, the method comprising: receiving, at a computer, the first query that is associated with a first type of database; translating, at the computer using primitives, the first query into the edge query that is associated with a graph database storing a graph, wherein: the first type of database has a different data model than the graph database; the graph comprises nodes, edges between the nodes, and predicates to represent and store data with index-free adjacency; and the primitives include: a rule based on edges in the graph that expresses a relational schema in the first type of database, and information associated with a compound key that specifies a relationship between the nodes, the edges and the predicates in the graph corresponding to a table in the first type of database; executing the edge query against the graph database, wherein the edge query identifies an edge associated with a predicate that specifies one or more of the nodes in the graph; and receiving a result in response to the edge query, wherein the result includes a subset of the graph.