close
Skip to content

Graph OLAP (Analytical) Engine #3617

@lvca

Description

@lvca

A high-performance, in-memory graph analytics engine for ArcadeDB that provides a CSR (Compressed Sparse Row) representation of the OLTP graph for read-optimized analytical workloads. The Graph Analytical View (GAV) enables cache-friendly traversals, columnar property access, and graph algorithms with 10-40x speedup over OLTP traversals, with zero GC pressure.

Inspired by Kuzu and LadybugDB in terms of design and principles, but designed on top of ArcadeDB unique multi model features.

Architecture

  • CSR Adjacency Index: Packed int[] arrays (offsets + neighbors) per edge type, both forward (OUT) and backward (IN), enabling O(1) neighbor access and O(log d) connectivity checks via binary search
  • NodeIdMapping: Per-bucket bidirectional RID ↔ dense ID mapping aligned with ArcadeDB's storage architecture
  • ColumnStore: Per-bucket columnar property storage with dictionary encoding for strings and null bitmaps
  • DeltaOverlay: Immutable overlay on base CSR for incremental updates — overflow nodes, deleted nodes (BitSet), added/deleted edges per type, property overrides
  • GraphTraversalProvider SPI: Plugs into the query planner for automatic OLAP-accelerated traversals

Metadata

Metadata

Assignees

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions