Files
Baradb/docs/de/storage.md
T
dimgigov c95bc4cd44
CI / test (push) Has been cancelled
CI / verify (push) Has been cancelled
docs: synchronize documentation across all languages
- Add mcp.md to: bg, fa, ru, tr, zh, ar
- Add index.md to Bulgarian (bg)
- Add 24 missing German (de) documentation files

Translations for all supported languages now complete.
2026-05-17 16:29:28 +03:00

1.6 KiB

Speicher-Engines

BaraDB bietet mehrere Speicher-Engines, optimiert für verschiedene Zugriffsmuster.

LSM-Tree (Key-Value)

Die primäre Speicher-Engine mit write-optimierter Append-only Log-Struktur.

Verwendung

import barabadb/storage/lsm

var db = newLSMTree("./data")
db.put("key1", cast[seq[byte]]("value1"))
let (found, value) = db.get("key1")
db.close()

Komponenten

  • MemTable: In-Memory sortierter Puffer
  • WAL: Write-Ahead Log für Dauerhaftigkeit
  • SSTable: Sortierte String-Tabellen auf Disk
  • Bloom-Filter: Probabilistische Mengenmitgliedschaft
  • Compaction: Size-tiered Strategie mit Level-Management
  • Page-Cache: LRU-Cache mit Trefferraten-Verfolgung

B-Tree Index

Geordneter Index für Bereichsabfragen und Point-Lookups.

Verwendung

import barabadb/storage/btree

var btree = newBTreeIndex[string, string]()
btree.insert("key1", "value1")
let values = btree.get("key1")
let range = btree.scan("key_a", "key_z")

Write-Ahead Log (WAL)

Sichert Dauerhaftigkeit von Schreiboperationen.

import barabadb/storage/wal

var wal = newWAL("./wal")
wal.append("txn1", "SET key1 value1")
wal.flush()

Bloom-Filter

Probabilistische Datenstruktur für schnelle negative Lookups.

import barabadb/storage/bloom

var filter = newBloomFilter(10000, 0.01)
filter.add("key1")
if filter.mightContain("key1"):
  echo "possibly exists"

Memory-mapped I/O

Effizienter Dateizugriff mittels mmap.

import barabadb/storage/mmap

var mapped = mmapFile("./data/file.dat")
let data = mapped.read(0, 100)