Skip to content

Commit f0cb29f

Browse files
committed
docs: regenerate architecture diagram with full system overview
New diagram covers Client SDK, SQL Frontend, CF Worker, all three Durable Objects, Zig WASM engine, pull-based operator pipeline, and R2 storage layer with format support.
1 parent fc4c33f commit f0cb29f

File tree

4 files changed

+1216
-3104
lines changed

4 files changed

+1216
-3104
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
2+
const d = new Diagram({ theme: "sketch" });
3+
4+
const client = d.addBox("Client SDK", { row: 0, col: 1, color: "frontend" });
5+
const sql = d.addBox("SQL Frontend", { row: 0, col: 3, color: "frontend" });
6+
const worker = d.addBox("CF Worker", { row: 1, col: 2, color: "backend" });
7+
const master = d.addBox("MasterDO", { row: 2, col: 0, color: "orchestration" });
8+
const queryDO = d.addBox("QueryDO", { row: 2, col: 2, color: "orchestration" });
9+
const fragDO = d.addBox("FragmentDO", { row: 2, col: 4, color: "orchestration" });
10+
const wasm = d.addBox("Zig WASM Engine", { row: 3, col: 2, color: "ai" });
11+
const scan = d.addBox("Scan", { row: 4, col: 0, color: "cache" });
12+
const filter = d.addBox("Filter", { row: 4, col: 1, color: "cache" });
13+
const agg = d.addBox("Agg", { row: 4, col: 2, color: "cache" });
14+
const sort = d.addBox("Sort", { row: 4, col: 3, color: "cache" });
15+
const proj = d.addBox("Project", { row: 4, col: 4, color: "cache" });
16+
const r2 = d.addBox("R2 Storage", { row: 5, col: 1, color: "storage" });
17+
const fmt = d.addBox("Parquet/Lance/Iceberg", { row: 5, col: 3, color: "storage" });
18+
19+
d.connect(client, worker, "query");
20+
d.connect(sql, worker, "SQL");
21+
d.connect(worker, master, "register");
22+
d.connect(worker, queryDO, "query");
23+
d.connect(queryDO, fragDO, "fan-out");
24+
d.connect(queryDO, wasm, "decode");
25+
d.connect(wasm, scan, "pull");
26+
d.connect(scan, filter);
27+
d.connect(filter, agg);
28+
d.connect(agg, sort);
29+
d.connect(sort, proj);
30+
d.connect(scan, r2, "read");
31+
d.connect(r2, fmt);
32+
33+
return d.render({ format: ["excalidraw", "svg", "png"], path: "/Users/steven_chong/Downloads/repos/querymode/docs/architecture/querymode-architecture" });

0 commit comments

Comments
 (0)