1. A method in a graph storage and processing system, comprising: storing, in a scalable, distributed, fault-tolerant, in-memory graph storage device, base graph data representative of graphs; storing, in a real-time, in memory graph storage device, update graph data representative of graph updates for the graphs with respect to a time threshold; sampling the base graph data to generate sampled portions of the graphs and storing the sampled portions of the graph, by an in-memory graph sampler; providing, by a query manager, a query interface between applications and the system; forming, by the query manager, graph data representative of a complete graph from at least the base graph data in the scalable, distributed, fault-tolerant, in-memory graph storage device and the update graph data, if any, in the real-time, in memory graph storage device; and processing, by a graph computer, the sampled portions of the graphs using batch-type computations to generate approximate results for graph-based queries.