What is an efficient storage method to store Graph Data from GraphX (Spark)?
TitanDB stores graphs in adjacency list format which means that a graph is stored as a collection of vertices with their adjacency list. The adjacency list of a vertex contains all of the vertex’s incident edges (and properties). 

They used VertexID is the partition key, PropertyKeyID or EdgeID as clustering key and property value or edge properties as normal column.



Their Cassandra Table schema :

CREATE TABLE edgestore (
    key blob,
    column1 blob,
    value blob,
    PRIMARY KEY (key, column1)
) WITH COMPACT STORAGE AND CLUSTERING ORDER BY (column1 ASC);


Where 

key     =&gt; VertexID
column1 =&gt; PropertyKeyID or DIR+OtherID+EdgeID
value   =&gt; PropertyValue or Pair of EdgePropertyKeyID and EdgePropertyValue