Teide Documentation
One Engine. Tables and Graphs.
TeideDB is a high-performance columnar engine with native graph pattern matching (SQL/PGQ), vector similarity search, and graph algorithms — all in one SQL query.
01
SQL Engine
Full SQL with aggregations, joins, window functions, CTEs. DuckDB-compatible syntax.
02
Graph Queries (SQL/PGQ)
CREATE PROPERTY GRAPH, MATCH patterns, variable-length paths, shortest path — ISO SQL:2023 standard.
03
Vector Search
Cosine similarity, euclidean distance, KNN search over F32 embedding columns. HNSW index for million-scale.
04
Graph Algorithms
PageRank, connected components, weighted Dijkstra, Louvain community detection — all as C engine kernels.
05
PgWire + REPL
Connect with psql, DBeaver, or any Postgres client. Interactive REPL with syntax highlighting.
06
Rust API
Embed TeideDB with Context, Table, Graph, Column, Rel, and HnswIndex types.
Quick Example
-- Load data and define a property graph
CREATE TABLE persons AS SELECT * FROM read_csv('persons.csv');
CREATE TABLE friendships AS SELECT * FROM read_csv('friendships.csv');
CREATE PROPERTY GRAPH social
VERTEX TABLES (persons LABEL Person)
EDGE TABLES (friendships
SOURCE KEY (src) REFERENCES persons (id)
DESTINATION KEY (dst) REFERENCES persons (id)
LABEL Knows);
-- Graph pattern matching + SQL analytics in one query
SELECT person, connections FROM GRAPH_TABLE (social
MATCH (a:Person)-[:Knows]-(b:Person)
COLUMNS (a.name AS person, COUNT(b.id) AS connections)
) ORDER BY connections DESC LIMIT 10;