-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathhome.rdx
More file actions
156 lines (126 loc) · 6.85 KB
/
Copy pathhome.rdx
File metadata and controls
156 lines (126 loc) · 6.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
---
title: Replace 5 databases with 1 universal engine
description: NodeDB natively combines relational, vector, graph, document, columnar, key-value, full-text, and scientific array data in one Rust binary. Your existing PostgreSQL client just works.
layout: landing
---
<Head>
<link rel="preload" href="/assets/fonts/inter-latin.woff2" as="font" type="font/woff2" crossorigin />
<link rel="preload" href="/assets/fonts/jetbrains-mono-latin.woff2" as="font" type="font/woff2" crossorigin />
<meta property="og:type" content="website" />
<meta property="og:site_name" content="NodeDB" />
<meta property="og:title" content="NodeDB — Replace 5 databases with 1 universal engine" />
<meta property="og:description" content="Relational, vector, graph, document, columnar, and scientific array data — in one Rust binary. Your existing Postgres client just works." />
<meta property="og:image" content="https://nodedb.dev/assets/nodedb.png" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" />
<meta property="og:image:alt" content="NodeDB — eight data engines in one Rust binary" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="NodeDB — Replace 5 databases with 1 universal engine" />
<meta name="twitter:description" content="Relational, vector, graph, document, columnar, and scientific array data — in one Rust binary. Your existing Postgres client just works." />
<meta name="twitter:image" content="https://nodedb.dev/assets/nodedb.png" />
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "NodeDB",
"applicationCategory": "DatabaseApplication",
"operatingSystem": "Linux, macOS, Windows, iOS, Android, Web",
"description": "Distributed hybrid database with eight peer engines plus Graph and Full-Text Search overlays, in a single Rust binary.",
"url": "https://nodedb.dev",
"offers": { "@type": "Offer", "price": "0", "priceCurrency": "USD" }
}
</script>
</Head>
<Banner id="ph-launch" persist="session">
🚀 **Featured on Product Hunt.** [See the launch thread →](https://www.producthunt.com/products/nodedb)
</Banner>
<LandingNav logo="/assets/logo.svg" github="https://github.com/NodeDB-Lab/nodedb" discord="https://discord.gg/s54gDMVc7B" />
<LandingHero
ph-kicker="Featured on"
producthunt="https://www.producthunt.com/products/nodedb"
github="https://github.com/NodeDB-Lab/nodedb"
discord="https://discord.gg/s54gDMVc7B"
title="Replace 5 databases with"
accent="1 universal engine."
sub="Stop wrestling with fragmented data silos. NodeDB natively combines relational, vector (AI), graph, document, columnar, and scientific array data into a hyper-efficient Rust architecture. Your existing PostgreSQL client just works."
/>
<Section class="ndb-hero-code">
<CodeWindow snippet="graphrag-fusion" title="GraphRAG · vector search + graph expansion · one query" lang="sql" />
Vector DB + graph DB + ranker, fused in one query. No pipelines. No Python glue. This is GraphRAG at the database layer.
</Section>
<Section class="ndb-before-after">
## The stack you were going to build
Most AI product teams ship with Postgres + a vector DB + a graph DB + a cache + a search engine. That's five systems to deploy, five bills, five failure modes, and a mountain of glue code. NodeDB is one.
<FeatureGrid class="ndb-ba-grid">
<Feature title="Before">
5 services, your ops team, 3am pages
- **Postgres** for users, orders, billing
- **Pinecone / Weaviate** for embeddings
- **Neo4j** for social graph & recommendations
- **Redis** for sessions & cache
- **Elasticsearch** for product search
- **TileDB / Zarr** for scientific arrays (genomics, climate, earth obs)
- ⚠️ Glue code, dual writes, sync drift, cross-service joins in your app layer
</Feature>
<Feature title="After">
One connection string
- **NodeDB** — relational tables
- **NodeDB** — vector index with HNSW + PQ
- **NodeDB** — property graph with 13 algorithms
- **NodeDB** — key-value with O(1) hash lookups
- **NodeDB** — full-text search with BM25
- **NodeDB** — ND sparse arrays for genomics, climate, earth obs
- **Bitemporal** on the engines that need it — audit, time-travel, GDPR-safe erasure
- **RLS + RBAC + audit log + tenant isolation** — multi-tenant SaaS without writing row filters
- ✨ One SQL planner joins them natively. Ship the app, not the plumbing.
</Feature>
</FeatureGrid>
</Section>
<Section bg="muted">
## What NodeDB Replaces
The combination of PostgreSQL + pgvector + Redis + Neo4j + ClickHouse + Elasticsearch — unified into one binary with shared storage and zero network hops between engines.
| Engine | Purpose | Replaces |
| ---------------- | ------------------------------ | ------------------- |
| Vector | Semantic search, RAG, recs | pgvector, Qdrant |
| Graph | Relationships, GraphRAG | Neo4j |
| Document | Flexible or strict schemas | MongoDB, PostgreSQL |
| Columnar | Analytics, timeseries, spatial | ClickHouse, DuckDB |
| Key-Value | Sessions, counters, caches | Redis, DragonflyDB |
| Full-Text Search | BM25, fuzzy, hybrid fusion | Elasticsearch |
| Array | ND sparse scientific data | TileDB, SciDB, Zarr |
| CRDT | Offline sync, edge devices | Custom sync layers |
</Section>
<Section class="ndb-sql-showcase">
## Cross-Engine Queries in Standard SQL
```sql
-- Vector search with metadata pre-filtering
SELECT title, vector_distance(embedding, $query_vec) AS score
FROM articles WHERE category = 'ml'
AND id IN (SEARCH articles USING VECTOR(embedding, $query_vec, 10));
-- Hybrid BM25 + vector, fused with Reciprocal Rank Fusion
SELECT title, rrf_score(
vector_distance(embedding, $query_vec),
bm25_score(body, 'distributed database')
) AS score FROM articles LIMIT 10;
-- Spatial + vector in one statement
SELECT name FROM restaurants
WHERE ST_DWithin(location, ST_Point(-73.99, 40.75), 2000)
AND embedding <-> $query_vec LIMIT 10;
```
</Section>
<Section class="ndb-faq">
## The questions you're about to ask
<Faq />
</Section>
<Section id="get-started" class="ndb-final">
<CTA title="Ship AI products, not plumbing." description="NodeDB is in public preview and already running in real projects. Pull the image, point any Postgres client at it, and start building." />
<CodeWindow snippet="quickstart" title="run it in 30 seconds" lang="bash" />
Pre-1.0 and moving fast — follow the [road to 1.0](https://github.com/orgs/NodeDB-Lab/projects/7).
<WaitlistForm
action="https://assets.mailerlite.com/jsonp/2289342/forms/185571144953234582/subscribe"
github="https://github.com/NodeDB-Lab/nodedb"
quickstart="/docs/introduction/quickstart"
discord="https://discord.gg/s54gDMVc7B"
producthunt="https://www.producthunt.com/products/nodedb"
/>
</Section>