I have a large graph of a few 100 GBs so I can't store it in RAM. The graph has multi-edges and there are labels for each edge. I would like to perform queries such as the following:
- Show me all edges that come from a specified node.
- Show me all edges between two given nodes.
- Pick 1000 random pairs of nodes that are connected and show me all edges between them.
- Pick 1000 nodes chosen at random.
What's a good way to store a graph on disk for these sorts of queries?
This is for a single high performance PC not a distributed setting. My preferred programming language is Python.