×

Distributed cache for graph data

  • US 8,832,111 B2
  • Filed: 09/07/2011
  • Issued: 09/09/2014
  • Est. Priority Date: 12/30/2010
  • Status: Active Grant
First Claim
Patent Images

1. A system comprising:

  • one or more first computing devices providing a persistent-storage database operative to maintain a graph comprising graph nodes and graph edges connecting the graph nodes, a graph edge connecting two graph nodes indicating an association between the two graph nodes, each graph node corresponding to a profile page associated with a social-networking system and having a unique graph-node identifier; and

    a plurality of second computing devices coupled to the one or more first computing devices and providing a cache layer between the persistent-storage database and a plurality of client servers, the cache layer comprising a plurality of follower cache clusters that each comprise one or more follower cache nodes that each comprise at least one individual computing system, each follower cache node being operative to;

    maintain in a memory of the at least one individual computing system at least a portion of the graph;

    receive a query for associations between nodes in the graph from a client server;

    respond to the query for associations between nodes in the graph at least in part by accessing the least a portion of the graph maintained in the memory of the at least one individual computing system; and

    maintain in the memory, for each association set corresponding to a first graph node of a plurality of graph nodes and an association type of a plurality of association types, a first index and a second index, the first index comprising an ordered array of entries, each entry comprising a graph-node identifier of a second graph node that is associated with the first node and a sorting attribute, the second index comprising a hash table comprising entries corresponding to the node identifiers of respective second nodes that are associated with the first node.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×