Overview¶
AkasicDB is an integrated graph, vector, and relational DBMS for enterprise AI. It processes graph, vector, and relational data together within a single database, enabling AI applications to be built without a separate AI-specific database or complex data pipelines.
AkasicDB is compatible with the existing PostgreSQL ecosystem and provides libraries and tools for AI development. It can also build knowledge graphs from existing table data within a single database.
Key Features¶
Integrated Search and Query Processing¶
AkasicDB executes vector search, graph traversal, and SQL predicates together within a single query.
Instead of combining separate query results at the application layer, users can perform unified search over vector, graph, JSON, relational, and text data in a single engine. This enables AI agents and LLMs to use enterprise data safely and consistently.
Integration with the Existing Ecosystem¶
AkasicDB supports LangChain integration for agentic AI applications. PostgreSQL compatibility allows AkasicDB to work with existing tools, libraries, and operational environments.
Knowledge Graph Extraction from Relational Data¶
AkasicDB enables users to derive knowledge graphs directly from relational tables using SQL. It lets users model the structure and relationships already present in relational data as graphs, without requiring data conversion or migration. This reduces the time and cost needed for initial deployment.
Core Technologies¶
Triple Storage¶
AkasicDB’s triple storage is an integrated storage architecture designed to process graph, vector, and relational workloads within a single logical database. AkasicDB uses workload-specific execution paths for graph traversal, vector search, and relational lookup, while exposing them through a single, consistent DBMS interface.
This reduces the burden of data movement and duplicate management while providing the performance and consistency required for various AI workloads.
Traversal-Join-Similarity Operator¶
In traditional approaches that split complex queries across multiple databases, developers must decide the execution order for vector search, graph traversal, and SQL lookup themselves, which can lead to inefficient data access.
Based on the Traversal-Join-Similarity operator, AkasicDB optimizes vector search, graph traversal, and SQL lookup as a single query plan. This allows AkasicDB to generate efficient query plans without requiring changes to application logic.
Comparison with other PostgreSQL Extensions¶
There have been continuous efforts to extend relational DBMSs with graph query or vector search capabilities, such as Apache AGE and pgvector. However, simply adding graph or vector capabilities on top of a relational data model and optimization structure can limit query-performance optimization when data volumes are large or queries are complex.
AkasicDB, however, handles graph, vector, and relational workloads within an integrated execution model, with an architecture and optimization framework beyond conventional extension-based approaches.
Comparison with Apache AGE¶
| Feature | AkasicDB | Apache AGE |
|---|---|---|
| Graph storage model | Stores graph topology in a dedicated graph format | Represents graphs using relational tables |
| Graph traversal model | Performs graph traversal with native traversal operations | Performs graph traversal through relational join operations |
| Graph definition flexibility | Provides high flexibility through SQL-based graph definitions | — |
Comparison with pgvector¶
| Feature | AkasicDB | pgvector |
|---|---|---|
| Dimension limit | Up to 65,535 | Up to 2,000 |
| Index storage model | Uses dedicated disk and memory structures for index management | Uses PostgreSQL’s built-in storage |
| SIMD optimization | Selects CPU-specific implementations dynamically at runtime | Uses static CPU dispatch on Linux x86-64 |
| WAL support | Full WAL support for data; index WAL support in progress | Full WAL support for data and indexes |
| Filtered vector search | Fully supported through the VBASE approach | May return fewer results when filters are applied |