This commit is contained in:
paulhorn
2026-06-20 18:39:03 +02:00
parent f9f96879f9
commit 2caccc2606
21 changed files with 45 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
# ADR-001: HTAP via Delta-Merge (HANA-inspired)
**Status:** Accepted
## Decision
PaulDB implements HTAP through a Delta (Row-Store) + Main (Column-Store) split,
merged periodically - mirroring SAP HANA's architecture.
## Rationale
Single-store systems force a choice between OLTP and OLAP performance.
The Delta-Merge pattern allows both: fast writes land in Delta (row-optimized),
analytics scan Main (column-optimized, compressed).
## Consequences
- Every query must union Delta + Main results.
- A merge worker must run periodically.
- The C ABI boundary (storage.h) cleanly separates both stores.
View File
+1
View File
@@ -0,0 +1 @@
/* delta_merge.cpp - Engine Logic (C++) */
+1
View File
@@ -0,0 +1 @@
/* executor.cpp - Engine Logic (C++) */
+1
View File
@@ -0,0 +1 @@
/* mvcc.cpp - Engine Logic (C++) */
+1
View File
@@ -0,0 +1 @@
/* query_router.cpp - Engine Logic (C++) */
+6
View File
@@ -0,0 +1,6 @@
#include <cstdio>
int main() {
std::printf("PaulDB starting...\n");
return 0;
}
+1
View File
@@ -0,0 +1 @@
/* ast.cpp - SQL Frontend (C++) */
+1
View File
@@ -0,0 +1 @@
/* parser.cpp - SQL Frontend (C++) */
+1
View File
@@ -0,0 +1 @@
/* planner.cpp - SQL Frontend (C++) */
+1
View File
@@ -0,0 +1 @@
/* tokenizer.cpp - SQL Frontend (C++) */
+2
View File
@@ -0,0 +1,2 @@
/* arena.c - Storage Engine (C) */
#include "pauldb/storage.h"
+2
View File
@@ -0,0 +1,2 @@
/* btree.c - Storage Engine (C) */
#include "pauldb/storage.h"
+2
View File
@@ -0,0 +1,2 @@
/* buffer_pool.c - Storage Engine (C) */
#include "pauldb/storage.h"
+2
View File
@@ -0,0 +1,2 @@
/* free_space_map.c - Storage Engine (C) */
#include "pauldb/storage.h"
+2
View File
@@ -0,0 +1,2 @@
/* heap.c - Storage Engine (C) */
#include "pauldb/storage.h"
+2
View File
@@ -0,0 +1,2 @@
/* page.c - Storage Engine (C) */
#include "pauldb/storage.h"
+2
View File
@@ -0,0 +1,2 @@
/* wal.c - Storage Engine (C) */
#include "pauldb/storage.h"
View File
View File
View File