Title: Exploring Kuzu v0.136: The Latest Advancements in Graph Database Technology
Introduction
The world of graph databases has been rapidly evolving, and Kuzu is at the forefront of this innovation. The latest release, Kuzu v0.136, is a significant milestone in the journey of this open-source graph database. In this blog post, we'll dive into the exciting new features and improvements that come with Kuzu v0.136.
What is Kuzu?
For those new to Kuzu, it's an open-source graph database designed to efficiently store and query large-scale graph data. Built from the ground up with a focus on performance, scalability, and ease of use, Kuzu has been gaining popularity among developers and data scientists working with complex, interconnected data.
Kuzu v0.136: What's New?
The v0.136 release of Kuzu brings several notable enhancements and features that further solidify its position as a leading graph database solution. Some of the key highlights include:
Key Features of Kuzu v0.136
Here are some of the key features that make Kuzu v0.136 an exciting release:
Use Cases for Kuzu v0.136
Kuzu v0.136 is suitable for a variety of use cases, including:
Conclusion
Kuzu v0.136 is a significant release that showcases the project's commitment to delivering a high-performance, scalable, and easy-to-use graph database solution. With its improved query performance, enhanced data import and export capabilities, and expanded Cypher support, Kuzu v0.136 is an exciting development for anyone working with graph data. Whether you're a developer, data scientist, or researcher, Kuzu v0.136 is definitely worth exploring.
Getting Started with Kuzu v0.136
To learn more about Kuzu v0.136 and get started with the project, check out the following resources: kuzu v0 136 full
docker pull kuzudb/kuzu:v0.136-full
docker run -it kuzudb/kuzu:v0.136-full
To justify upgrading to the kuzu v0 136 full, consider these community-sourced benchmarks (tested on AWS c5.4xlarge, 100GB synthetic social graph):
| Operation | Kuzu v0.128 (beta) | Kuzu v0.136 Full | Improvement | | :--- | :--- | :--- | :--- | | 2-Hop Neighbor Query | 1.4 seconds | 0.9 seconds | 36% faster | | Bulk Insert (1M edges) | 45 seconds | 32 seconds | 29% faster | | Cold Start Load Time | 12 seconds | 8 seconds | 33% faster | | Recursive Path (5 hops) | Timeout (30s+) | 2.3 seconds | Stable |
The "full" package’s improved query planner makes recursive analytical queries actually usable in production.
conn.execute("CREATE (:Person name: 'Alice', age: 30)") conn.execute("CREATE (:Person name: 'Bob', age: 25)") conn.execute("MATCH (a:Person name: 'Alice'), (b:Person name: 'Bob') CREATE (a)-[:Knows since: 2020]->(b)")
The easiest method is via PyPI. Ensure you have Python 3.8 to 3.11 installed:
pip install kuzu==0.1.36
Note: The full functionality is included in the standard pip package as of this version; no separate pip install kuzu-full exists.
import kuzu
# Create an in‑memory database instance
db = kuzu.Database() # no path => in‑memory only
conn = kuzu.Connection(db)
# Define schema (vertices = Person, edges = KNOWS)
schema = """
CREATE NODE TABLE Person (
id INT PRIMARY KEY,
name STRING,
age INT,
city STRING
);
CREATE REL TABLE KNOWS (
FROM Person,
TO Person,
since INT
);
"""
conn.execute(schema)
# Insert a few rows (bulk insert is faster, but this shows the API)
people = [
(1, "Alice", 31, "Berlin"),
(2, "Bob", 27, "Paris"),
(3, "Carol", 45, "Tokyo")
]
for p in people:
conn.execute(f"INSERT INTO Person VALUES p")
conn.execute("INSERT INTO KNOWS VALUES (1,2,2015), (2,3,2019), (1,3,2020)")
Python:
pip install kuzu --upgrade
Node.js:
npm install kuzu@latest
C++ (Source):
git clone https://github.com/kuzudb/kuzu.git
cd kuzu
git checkout v0.13.6
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc)
make install
| Dataset | #Vertices | #Edges | Query | Avg latency (ms) | Speed‑up vs Neo4j | |---------|-----------|--------|-------|------------------|-------------------| | Social‑Network‑1B | 1 B | 5 B | 2‑hop friend‑recommendation | 3.2 | 5.8× | | Citation‑Graph‑500M | 500 M | 2 B | PageRank (10 iterations) | 12.5 | 4.1× | | Road‑Network‑200M | 200 M | 300 M | Shortest‑path (Dijkstra) | 1.1 | 3.9× |
All tests run on a 32‑core AMD EPYC 7542 (2.8 GHz) with 256 GB RAM, using the Hybrid storage engine and multi‑threaded execution.
Takeaway: Kuzu’s design (row‑store for hot vertices + column‑store for edges) yields sub‑millisecond latency even on graphs that would push conventional stores into the seconds‑range.
Why are developers excited about this specific tag? Here are three real-world scenarios where the "full" feature set shines:
[:TRANSFERS* .amount > 10000]), analysts can find circular money flows. V0.136’s memory management handles millions of transactions where v0.135 crashed.