whatisgithub

What is age?

apache/age — explained in plain English

Analysis updated 2026-06-26

4,499CAudience · developerComplexity · 4/5LicenseSetup · hard

In one sentence

Apache AGE adds graph database features to PostgreSQL, letting you store and query connected data using the openCypher language alongside regular SQL, no second database required.

Mindmap

mindmap
  root((Apache AGE))
    What it does
      Graph queries in Postgres
      Nodes and edges model
      openCypher language
    Use Cases
      Fraud detection
      Recommendations
      Relationship tracking
      Knowledge graphs
    Tech Stack
      C extension
      PostgreSQL 11 to 18
      Docker image available
    Setup
      Build from source
      Or use Docker image
      Load extension per session
    Audience
      Database developers
      Data engineers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add graph querying to an existing PostgreSQL database to detect fraud or build a recommendation engine.

USE CASE 2

Model social network or organizational relationships and query them with openCypher without switching databases.

USE CASE 3

Run openCypher and SQL queries together in the same database session using a single PostgreSQL installation.

What is it built with?

CPostgreSQLopenCypherDocker

How does it compare?

apache/agedankamongmen/notcursesplasma-umass/coz
Stars4,4994,5034,491
LanguageCCC
Setup difficultyhardmoderatemoderate
Complexity4/54/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires a compatible PostgreSQL installation (versions 11-18) and building the extension from source, or pulling the Docker image.

Open source under Apache 2.0, use freely for any purpose including commercial, modify and distribute with attribution.

So what is it?

Apache AGE is an extension for PostgreSQL that adds graph database capabilities on top of a regular relational database. The name stands for A Graph Extension. The idea is that instead of running two separate databases, one for tables and one for graph data, you can do both in a single PostgreSQL installation. A graph database organizes information as nodes (things) and edges (connections between things). This model is useful for problems like fraud detection, product recommendations, tracking relationships between people or organizations, and knowledge management, where the connections between data points matter as much as the data itself. Apache AGE lets you write queries in openCypher, a popular language designed specifically for graph data, alongside standard SQL in the same database session. Because it is a PostgreSQL extension rather than a standalone product, you get all the existing features and reliability of PostgreSQL along with the graph layer. Organizations already running PostgreSQL can add graph querying without switching to a different system or migrating their data. Installation involves setting up a compatible version of PostgreSQL first (versions 11 through 18 are supported), then building and installing the AGE extension from source or pulling a pre-built Docker image. After installation, each database connection loads the extension with a few setup commands before graph queries can run. The project is part of the Apache Software Foundation and is open source. Documentation for installation, built-in functions, and Cypher query syntax is available on the project's official site.

Copy-paste prompts

Prompt 1
Using Apache AGE on PostgreSQL, write an openCypher query that finds all second-degree connections from a given user node in a social graph stored in AGE.
Prompt 2
Show me how to install the Apache AGE extension on PostgreSQL 15, load it in a database session, and create a graph with Person nodes and KNOWS edges using openCypher.
Prompt 3
I have a PostgreSQL table of transactions and want to detect fraud by finding circular payment paths. Show me how to model this as a graph in Apache AGE and write the openCypher query to find cycles.
Prompt 4
How do I run Apache AGE using the official Docker image? Show the docker run command and how to connect and run a basic openCypher CREATE and MATCH query.

Frequently asked questions

What is age?

Apache AGE adds graph database features to PostgreSQL, letting you store and query connected data using the openCypher language alongside regular SQL, no second database required.

What language is age written in?

Mainly C. The stack also includes C, PostgreSQL, openCypher.

What license does age use?

Open source under Apache 2.0, use freely for any purpose including commercial, modify and distribute with attribution.

How hard is age to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is age for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.