ArcFlow
Company
Managed Services
Markets
  • News
  • LOG IN
  • GET STARTED

OZ brings Visual Intelligence to physical venues, a managed edge layer that lets real-world environments see, understand, and act in real time.

Talk to us

ArcFlow

  • World Models
  • Sensors

Managed Services

  • OZ VI Venue 1
  • Case Studies

Markets

  • Sports
  • Broadcasting
  • Robotics

Company

  • About
  • Technology
  • Careers
  • Contact

Ready to see it live?

Talk to the OZ team about deploying at your venues, from a single pilot match to a full regional rollout.

Schedule a deployment review

© 2026 OZ. All rights reserved.

LinkedIn
ArcFlow Docs
Get Started
  • Get Started
  • Quickstart
  • Installation
  • Project Setup
  • Platforms
  • Bindings
  • Licensing
  • Pricing
Capabilities
  • Vector Search
  • Graph Algorithms
  • Sync
  • MCP Server (AI Agents)
  • Live Queries
  • Programs
  • Temporal
  • Spatial
  • Trusted RAG
  • Behavior Graph
  • Agent-Native
  • Event Sourcing
  • GPU Acceleration
  • Intent Relay
Concepts
  • World Model
  • Graph Model
  • Query Language (GQL)
  • Graph Patterns
  • SQL vs GQL
  • Parameters
  • Query Results
  • Persistence & WAL
  • Error Handling
  • Observations & Evidence
  • Confidence & Provenance
  • Proof Artifacts & Gates
  • Skills
GQL / WorldCypher
  • Overview
  • MATCH
  • WHERE
  • RETURN
  • OPTIONAL MATCH
  • CREATE
  • SET
  • MERGE
  • DELETE
  • REMOVE
  • WITH
  • UNION
  • UNWIND
  • CASE
  • Spatial Queries
  • Temporal Queries
  • Algorithms Reference
  • Triggers
Schema
  • Overview
  • Indexes
  • Constraints
  • Data Types
Functions
  • Built-in Functions
  • Aggregations
  • Procedures
  • Shortest Path
  • EXPLAIN
  • PROFILE
Skills
  • Overview
  • CREATE SKILL
  • PROCESS NODE
  • REPROCESS EDGES
Operations
  • CLI
  • REPL Commands
  • Snapshot & Restore
  • Server Modes & PG Wire
  • Persistence
  • Import & Export
  • Docker
  • Architecture
  • Cloud Architecture
  • Sync Protocol (Deep Dive)
Guides
  • Agent Integration
  • World Model
  • Graph Model Fundamentals
  • Trusted RAG
  • Using Skills
  • Behavior Graphs
  • Swarm & Multi-Agent
  • Migration Guide
  • Filesystem Workspace
  • From SQL to GQL
  • ArcFlow for Coding Agents
  • Data Quality & Pipeline Integrity
  • Code Intelligence
Tutorials
  • Knowledge Graph
  • Entity Linking
  • Vector Search
  • Graph Algorithms
Recipes
  • CRUD
  • Multi-MATCH
  • MERGE (Upsert)
  • Full-Text Search
  • Temporal Queries
  • Batch Projection
  • GraphRAG
Use Cases
  • Agent Tooling
  • Knowledge Management
  • RAG Pipeline
  • Fraud Detection
  • Sports Analytics
  • Grounded Neural Objects
  • Behavior Graphs
  • Autonomous Systems
  • Digital Twins
  • Robotics & Perception
Reference
  • TypeScript API
  • GQL Conformance
  • Compatibility Matrix
  • Glossary
  • Data Types
  • Operators
  • Error Codes
  • Known Issues

Migration Guide

If you've worked with Cypher-style or other graph query systems before, most of what you know transfers. ArcFlow's WorldCypher is Cypher-inspired; your existing MATCH, CREATE, MERGE, and WHERE clauses usually carry over directly. What changes: the deployment model (in-process or lightweight server), built-in GPU-accelerated algorithms, confidence scoring, temporal queries, and vector search with no add-ons.

This guide covers what stays the same, what's different, and how to move your data.

Architecture Differences#

AspectTypical Graph EngineArcFlow
DeploymentUsually server-based or embedded depending on stackIn-process library or lightweight server mode
RuntimeVaries by implementationNative binary, no runtime dependency
Memory modelOff-heap page cache or shared memoryIn-process shared memory (SoC architecture)
SerializationWire protocol or RPC boundaryNone (in-process) or TCP/HTTP
Query languageVaries by graph stackWorldCypher (ArcFlow's GQL dialect with spatial/temporal/reactive extensions)
IndexesB-tree, full-text, vector (varies by vendor)Property index, HNSW vector index
TransactionsFull ACID (most vendors)WAL-based journaling
ClusteringCausal clustering, replication (varies)Single-node (replication planned)
GPU accelerationNoneCUDA + Metal (17 kernels each)
Vector searchAdd-on or separate product (varies)HNSW index + algo.graphRAG built-in
TemporalVaries by implementationBuilt-in: AS OF, clock domains, temporal replay
Confidence scoringNoneBuilt-in: 0.0-1.0 per node/edge

ArcFlow can run as an in-process engine with zero network overhead, or as a standalone server. The in-process mode eliminates serialization and connection management entirely.

GQL Compatibility#

If you're coming from a Cypher-family system, most of your queries port directly. If you're coming from a different graph query model, expect a query rewrite, but the graph modeling concepts still transfer.

Fully Compatible (GQL family)#

These Cypher features work identically in WorldCypher:

Statements: CREATE, MATCH, OPTIONAL MATCH, WHERE, RETURN, ORDER BY, SKIP, LIMIT, DELETE, DETACH DELETE, SET, REMOVE, MERGE, WITH, UNION, UNWIND, CASE WHEN

Predicates: AND, OR, NOT, XOR, =, <>, <, >, <=, >=, IS NULL, IS NOT NULL, IN, CONTAINS, STARTS WITH, ENDS WITH, EXISTS

Functions: id(), labels(), type(), count(), sum(), avg(), min(), max(), collect(), coalesce(), toString(), toInteger(), toFloat(), toLower(), toUpper(), trim(), substring(), left(), right(), replace(), split(), reverse()

Patterns: Node patterns (n:Label {prop: val}), relationship patterns -[:TYPE]->, variable-length paths [*1..5], shortestPath()

Schema: CREATE INDEX, CREATE CONSTRAINT (unique), DROP INDEX, DROP CONSTRAINT

WorldCypher Extensions#

Features in WorldCypher that go beyond standard GQL — ArcFlow-specific capabilities:

FeatureSyntaxPurpose
Temporal snapshotsMATCH (n) AS OF 1700000000000Point-in-time queries
Confidence scoringconfidence(n), observationClass(n)Trust metadata on every node/edge
Authority planesauthorityPlane(n)Semantic vs scene classification
Clock domainsclockDomain(n)Multi-clock temporal modeling
Observation sourceobservationSource(n)Provenance tracking
Map projectionRETURN n {.name, .age}Project specific properties
toJsontoJson(n)Serialize node to JSON
hashhash(n.prop)FNV-1a deterministic hashing
Graph algorithmsCALL algo.pageRank()20+ built-in algorithms (no separate plugin)
PROCESS NODEPROCESS NODE (n:Label) ...Batch node processing with constructors
REPROCESSREPROCESSRe-run edge constructors
Vector searchCALL algo.vectorSearch()HNSW nearest-neighbor search
GraphRAGCALL algo.graphRAGTrusted()Confidence-filtered RAG pipeline
EXPLAIN / PROFILEEXPLAIN MATCH ...Query plan introspection

Not Yet Supported#

Standard GQL features or ecosystem-specific extensions not yet available in WorldCypher:

FeatureStatusAlternative
FOREACHNot implementedUse UNWIND + CREATE
CALL {} IN TRANSACTIONSNot applicableIn-process, no batching needed
LOAD CSVDifferent syntax:import csv path/to/file.csv
Plugin/extension proceduresNot applicableBuilt-in equivalents where needed
SHOW DATABASESSingle databaseCALL db.stats()
Subqueries (CALL {})Not implementedUse WITH for pipeline queries
CREATE ... SET chainingUse comma syntaxCREATE (n:Label {prop1: v1, prop2: v2})
Multi-databaseNot implementedSingle graph store
Role-based accessPlannedCurrently single-user

Performance Snapshot#

Recent ArcFlow benchmark runs on the current engine show strong single-node throughput in the embedded path:

WorkloadCurrent throughput
IS1: person profile10.6M/s
Property scan14.6M/s
Count(Person)43.7M/s
3-hop traversal780.0K/s
Upsert (1K get_or_create)10.1M/s
Bulk insert + edges503.7K/s
Index build single151.3/s
Index build composite343.8/s

For the exact benchmark methodology and the latest corrected report, see the engine benchmark artifacts in the main ArcFlow repository.

Migration Steps#

Step 1: Export from Your Current Database#

Export your data as Cypher statements, CSV, or JSON from your current stack. The exact command depends on your existing tooling, but the migration target is the same: node rows, relationship rows, and any schema definitions you want to recreate.

-- Most GQL-compatible databases support exporting as CREATE statements
-- Adapt vendor-specific export commands to your setup

Step 2: Adapt the Export#

WorldCypher accepts most Cypher CREATE statements directly. Key adaptations:

  1. Remove environment-specific syntax (proprietary ID functions, internal properties)
  2. Replace FOREACH with UNWIND
  3. Remove CALL {} IN TRANSACTIONS wrappers
  4. Convert non-Cypher query definitions into Cypher-style mutations where needed
  5. Keep CREATE, MERGE, and SET statements as-is

Step 3: Import into ArcFlow#

# Start ArcFlow CLI
arcflow --data-dir ./my-graph
 
# Import CSV files
:import csv /tmp/nodes.csv

Or use CREATE statements directly:

-- Nodes import directly
CREATE (n:Person {name: 'Alice', age: 30})
CREATE (n:Person {name: 'Bob', age: 25})
-- Relationships
MATCH (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'})
CREATE (a)-[:KNOWS {since: 2020}]->(b)

Step 4: Recreate Indexes#

CREATE INDEX ON :Person(name)
CREATE INDEX ON :Person(email)
CREATE CONSTRAINT ON (p:Person) ASSERT p.email IS UNIQUE

Step 5: Verify#

-- Check counts match
CALL db.stats()
-- Check schema
CALL db.schema()
-- Run diagnostics
CALL db.doctor()

Graph Analytics: Built In#

ArcFlow ships graph algorithms directly in the engine. No projection step, no separate installation.

Common Analytics ProcedureArcFlow Equivalent
PageRank streamCALL algo.pageRank()
Betweenness centralityCALL algo.betweenness()
Closeness centralityCALL algo.closeness()
Degree centralityCALL algo.degreeCentrality()
Weakly connected componentsCALL algo.connectedComponents()
Louvain community detectionCALL algo.louvain()
Leiden community detectionCALL algo.leiden()
Local clustering coefficientCALL algo.clusteringCoefficient()
Triangle countCALL algo.triangleCount()
K-core decompositionCALL algo.kCore()
Node similarityCALL algo.nodeSimilarity()
All-pairs shortest pathCALL algo.allPairsShortestPath()
K-nearest neighborsCALL algo.nearestNodes()

Key difference: no projection step. With most graph analytics libraries, you first create an in-memory graph projection, run the algorithm, then optionally write results back. In ArcFlow, algorithms run directly on the live graph store with zero copy.

-- Traditional analytics workflow (3 steps):
-- 1. Project graph into analytics engine
-- 2. Run algorithm on projection
-- 3. Drop projection
 
-- ArcFlow (1 step):
CALL algo.pageRank()

When to Use Which#

Use ArcFlow when:

  • Embedding a graph engine in your application (no server management)
  • You need GPU-accelerated graph algorithms
  • You want built-in vector search + graph context (GraphRAG)
  • Temporal queries and confidence scoring matter for your domain
  • You want a single binary with no runtime dependency

Use a server-oriented graph platform when:

  • You need multi-user concurrent access at scale
  • Full ACID transactions are a hard requirement
  • Your graph exceeds available RAM
  • You need a large plugin ecosystem
  • You need enterprise features (RBAC, causal clustering, CDC)

See Also#

  • QuickStart -- get running in 5 minutes
  • Built-in Functions -- all 83 functions
  • Procedures -- 100+ procedures
  • RAG Pipeline -- building RAG with ArcFlow
← PreviousSwarm & Multi-AgentNext →Filesystem Workspace