Source-linked AI summary

Efficient Snapshot Retrieval over Historical Graph Data

Udayan Khurana, Amol Deshpande

arXiv:1207.5777v1cs.DBcs.SIphysics.soc-ph

TL;DR

Historical graph systems must support temporal analysis and snapshot retrieval without the prohibitive space or processing costs of storing or replaying complete histories. This paper introduces DeltaGraph and GraphPool, showing that tunable indexing and materialization support compact storage, controllable retrieval times, and efficient management of multiple historical snapshots.

  • Problem

    Temporal network analysis requires historical snapshot retrieval while balancing disk usage, memory, query latency, and repeated event processing.

  • Method

    The system combines the hierarchical DeltaGraph index over historical deltas with the in-memory GraphPool structure, using query planning and materialization to retrieve and operate on multiple snapshots.

  • Results

    The evaluation finds DeltaGraph superior to existing alternatives and shows that parameter choices and memory materialization control the distribution of snapshot retrieval times.

  • Takeaways & Limitations

    DeltaGraph provides a tunable way to trade disk usage and query-latency behavior, while GraphPool maintains multiple historical graphs compactly in memory.

  • Takeaways & Limitations

    Existing approaches impose practical trade-offs: storing every snapshot can be infeasible, while replaying all changes can require repeated processing and higher retrieval costs.

Abstract

from arXiv · show

We address the problem of managing historical data for large evolving information networks like social networks or citation networks, with the goal to enable temporal and evolutionary queries and analysis. We present the design and architecture of a distributed graph database system that stores the entire history of a network and provides support for efficient retrieval of multiple graphs from arbitrary time points in the past, in addition to maintaining the current state for ongoing updates. Our system exposes a general programmatic API to process and analyze the retrieved snapshots. We introduce DeltaGraph, a novel, extensible, highly tunable, and distributed hierarchical index structure that enables compactly recording the historical information, and that supports efficient retrieval of historical graph snapshots for single-site or parallel processing. Along with the original graph data, DeltaGraph can also maintain and index auxiliary information; this functionality can be used to extend the structure to efficiently execute queries like subgraph pattern matching over historical data. We develop analytical models for both the storage space needed and the snapshot retrieval times to aid in choosing the right parameters for a specific scenario. In addition, we present strategies for materializing portions of the historical graph state in memory to further speed up the retrieval process. Secondly, we present an in-memory graph data structure called GraphPool that can maintain hundreds of historical graph instances in main memory in a non-redundant manner. We present a comprehensive experimental evaluation that illustrates the effectiveness of our proposed techniques at managing historical graph information.

1. INTRODUCTION

The paper motivates a graph data management system for temporal analysis of large evolving networks, focusing on interactive retrieval of multiple historical snapshots while preserving the current state. It introduces DeltaGraph and GraphPool as complementary structures for compact historical storage, distributed retrieval, and in-memory analysis.

  • Motivation: Temporal network analysis uses historical traces to study evolving communities, centrality, information spread, density, and other time-dependent phenomena.The motivating examples span social, biological, citation, financial, and communication networks.
  • Problem: Existing graph data management solutions lack adequate techniques for temporal annotation and large-scale historical change storage and retrieval.The stated gap motivates a backend that supports temporal and historical queries while maintaining the current network state.
  • System goals: Interactive snapshot queries retrieve one or more historical network states at specified times while supporting ongoing updates and other queries.The system assumes sufficient memory for retrieved snapshots and targets potentially hundreds of snapshots in memory.
  • DeltaGraph: DeltaGraph is a tunable hierarchical index whose edge deltas reconstruct snapshots and whose parameters trade storage requirements against retrieval times.Its distributed partitioning allows deltas to be fetched in parallel for snapshot reconstruction.
  • GraphPool: GraphPool overlays multiple in-memory snapshots on a shared graph structure to exploit commonalities and reduce redundant storage and processing.The prototype uses a key-value backend for DeltaGraph and can be deployed across machines.
  • Scope: The techniques are presented as general enough to support efficient snapshot retrieval in temporal relational databases as well as graph systems.The authors state that the structures treat networks as collections of objects rather than relying on graphical properties.

2. RELATED WORK

Related work spans dynamic network analysis, temporal relational databases, general graph systems, and temporal semistructured data. The paper positions its contribution as a graph data management system for scalable historical snapshot retrieval across these areas.

  • Dynamic network analysis: Dynamic network research studies network evolution, community changes, important individuals, hidden groups, visualization, historical biological events, and shortest-path evolution.The paper frames its system as infrastructure for supporting these analysis tasks over large historical network volumes.
  • Temporal relational databases: Temporal relational databases distinguish valid time, when a fact is true in the real world, from transaction time, when it is stored.This system follows the valid-time perspective because entry time is not its focus.
  • Temporal relational databases: Prior temporal database work includes interval-based representations and indexing structures for snapshot and temporal queries.The paper contrasts transaction-time and valid-time settings and notes that transaction-time indexes can simplify arbitrary updates.
  • Graph data management: General-purpose graph systems provide platforms and query techniques for graph data, but the paper reports limited awareness of graph data management systems focused on historical evolution.The related work discusses both commercial and open-source systems.
  • Temporal semistructured data: Temporal RDF, OWL, XML, and version-management research addresses valid time, temporal pattern matching, SPARQL evaluation, and version storage.These approaches broaden the surrounding literature beyond property-graph systems.

3. SYSTEM OVERVIEW

The system models evolving networks as time-indexed graph snapshots and atomic events, then exposes programmatic queries for retrieving and processing historical graphs. Its two core structures, DeltaGraph and GraphPool, organize historical data compactly for snapshot retrieval and in-memory reuse.

  • 3.1 Graph Data Model: Events record atomic node, edge, attribute, or transient-component activities at individual timepoints and can be applied forward or backward between snapshots.An interval is represented by addition and deletion events at its endpoints.
  • 3.2.1 Snapshot Queries: The system supports singlepoint, multipoint, Boolean time-expression, and interval snapshot queries through a programmatic API.Retrieval calls can also specify which node and edge attributes to fetch.
  • 3.2.1 Snapshot Queries: The API is intended to support graph-analysis toolkits, with planned Blueprints compatibility alongside current subset support.Blueprints is described as a generic graph Java API analogous to JDBC.
  • 3.2.2 Key Components: GraphPool overlays multiple current, historical, and materialized graphs in memory to reduce redundancy while supporting query results and application-modified snapshots.The structure exploits commonalities among graphs currently held in memory.
  • 3.2.2 Key Components: DeltaGraph hierarchically stores historical data as deltas and leaf-eventlists, while its in-memory skeleton guides retrieval planning.HistoryManager reads required historical data, and GraphManager overlays it into GraphPool; distributed deployments partition both structures across machines.
  • 3.2.2 Key Components: The architecture is described primarily for a single-site deployment, although distributed partitioning is supported.Storage and retrieval partitionings may differ, but aligned partitioning is preferred to reduce network communication.

4. DELTAGRAPH:PHYSICALSTORAGEOF HISTORICAL GRAPH DATA

DeltaGraph replaces rigid snapshot-storage extremes with a hierarchical, delta-based structure designed for tunable and efficient historical retrieval. It supports singlepoint, multipoint, composite-time queries, memory materialization, auxiliary indexing, and distributed storage.

  • 4.1 Prior Techniques and Limitations: Prior snapshot indexes trade storage against retrieval speed, while many approaches inadequately support multipoint queries and resource-latency trade-offs.Copy stores every snapshot, Log stores every change, and Copy+Log stores selected snapshots; the authors seek better support for repeated multipoint retrieval and tunability.
  • 4.2 DeltaGraph Overview: DeltaGraph organizes historical snapshots as leaves and combines child graphs through differential functions in a largely hierarchical directed structure.Interior graphs need not be valid snapshots, and multiple hierarchies can use different differential functions.
  • 4.2 DeltaGraph Overview: Only edge deltas are stored, with each delta recording deletions and additions needed to construct one graph from another; leaf edges store eventlists.Deltas and eventlists are assigned identifiers and separated into structural, node-attribute, edge-attribute, and transient-event components.
  • 4.3 Snapshot Retrieval: Singlepoint retrieval selects a minimum-weight root-to-leaf path, whereas multipoint retrieval finds a minimum-weight Steiner tree connecting the requested snapshots.Weights approximate the cost of reading required deltas, and multipoint plans can share work rather than combining independently optimal singlepoint plans.
  • 4.5 Memory Materialization: Memory materialization provides runtime control over retrieval latency and memory consumption by materializing selected common ancestors or all leaves.Materializing a lowest common ancestor can accelerate access to snapshots from a targeted period without reconstructing the DeltaGraph.
  • 4.7 Extensibility: User-defined functions extend DeltaGraph to compute and index auxiliary information for specialized historical queries, including subgraph pattern matching.The extensibility framework supports rapid deployment of query strategies, although more efficient strategies for particular query types remain under investigation.

5. DELTAGRAPH ANALYSIS

The DeltaGraph analysis models storage, delta sizes, and snapshot retrieval under simplifying assumptions about graph evolution. It compares differential functions and shows how their space–latency trade-offs guide configuration choices.

  • 5.1 Model of Graph Dynamics: The analysis assumes constant insert and delete fractions, while graph dynamics over time are separately captured through event density g(t).Updates are modeled as a delete followed by an insert; δ* + ρ* < 1 allows transient events.
  • 5.1 Model of Graph Dynamics: Differential functions determine how interior-node graphs are constructed and control delta sizes, including tunable Skewed, Balanced, and Empty variants.The Balanced function equalizes delta sizes under a validity assumption, while Mixed functions expose tunable trade-offs.
  • 5.3 Space and Time Estimation Models: For Intersection, older snapshots generally require less reconstruction time than newer snapshots because shortest-path weights track leaf sizes.Balanced and other differential functions can produce more predictable latency behavior, with materialization reducing times further.
  • 5.3 Space and Time Estimation Models: The total delta space at each hierarchy level is equal to the first-level delta space under the analyzed Balanced construction.The result follows because the number of edges decreases with level while the corresponding delta sizes increase proportionally.
  • 5.4 Discussion: Intersection minimizes disk utilization but skews query latencies, whereas other functions provide greater latency control at higher disk cost.With materialization, higher DeltaGraph levels can reduce retrieval latency; Balanced retrieval times do not depend on retrieved snapshot size.
  • 5.3 Space and Time Estimation Models: For Balanced DeltaGraph with arity k = 2, disk space is O(|E| log N), while interval trees require O(|E|) and segment trees O(|E| log |E|) in the stated worst case.In other scenarios, DeltaGraph space is expected between O(|E|) and O(|E| log N), and lower when δ* + ρ* ≪ 1.

6. GRAPHPOOL

GraphPool maintains the current graph, historical snapshots, and materialized graphs in one overlapping in-memory structure. Bitmaps and dependency tracking reduce redundant storage and support efficient graph insertion and cleanup.

  • GraphPool stores the union of active graphs, including the current graph, historical snapshots, and materialized graphs.
  • Bitmap strings associated with graph components and attribute values identify which active graphs contain them.
  • Paired bits let historical graphs depend on similar materialized or current graphs instead of setting membership bits for every element.
  • Graphs are overlaid node by node and edge by edge, with capacity determined primarily by the memory needed for their union.
  • GraphPool updates the DeltaGraph through recent eventlists and cleans obsolete graphs lazily during periods without query load.

7. EMPIRICAL EVALUATION

The evaluation tests DeltaGraph and GraphPool across storage approaches, datasets, configurations, and parallel processing settings. Results show faster retrieval, substantial memory savings, scalable parallelism, and tunable space–latency trade-offs.

  • Experimental setup: The evaluation uses three historical network datasets, including a 2M-edge growing co-authorship network and traces with additions and deletions.
  • Retrieval comparisons: Under similar disk-space constraints, the best DeltaGraph variation outperformed Copy+Log by at least a factor of 4 and by orders of magnitude in several cases.
  • Retrieval comparisons: DeltaGraph configurations outperformed an in-memory interval tree while using significantly less memory, including with total materialization.
  • Retrieval comparisons: 20 and 23 were the factors by which DeltaGraph outperformed a naive raw-event approach on Datasets 1 and 2, respectively.
  • GraphPool and query optimization: 600MB versus 50GB was the memory required by GraphPool versus disjoint storage for 100 Dataset 2 snapshots.
  • GraphPool and query optimization: Near-linear speedups were observed for concurrent query processing with partitioned DeltaGraph on multiple cores.
  • GraphPool and query optimization: A columnar storage approach improved query latencies by more than a factor of 3 when only network structure was retrieved.
  • Parameter effects: Increasing arity reduced query time but generally increased space, whereas larger leaf-eventlists reduced space and dramatically increased query time.

8. CONCLUSIONS AND FUTURE WORK

The paper presents DeltaGraph and GraphPool for compact historical graph management and snapshot retrieval. Experiments show that tunable indexing, materialization, multi-query optimization, and columnar storage improve retrieval and memory efficiency, while future work targets broader temporal queries.

  • DeltaGraph compactly stores distributed historical traces, while GraphPool maintains and operates on multiple graphs in memory.
  • Parameter choices and runtime materialization control the distribution of query access times, and experiments demonstrate benefits from multi-query optimization and columnar storage.
  • Future work includes improved DeltaGraph construction algorithms and techniques for processing different temporal queries over historical traces.
Loading 1207.5777v1…