Ridge DB Architettura

Ridge è un database a nodo singolo delimitato progettato per proprietà deterministica, ripristino e limiti espliciti. Gli stessi contratti di archiviazione, schema, transazione e SQL sono condivisi dal servizio API incorporato e pgwire.

Per il processo completo e la visualizzazione dei limiti di attendibilità, vedere la Ridge architettura di esecuzione ed è interattivo Archify mappa.

Modelli di processo

Modello Utilizzare
Libreria ridge incorporata Un processo seed possiede l'accesso al database
ridged Servizio pgwire di loopback per strumenti e driver delle applicazioni
Ridge Admin Interfaccia utente del browser locale il cui backend seed possiede pgwire e SSH

ridged non è destinato all'ascolto su un'interfaccia pubblica. Raggiungi un servizio di loopback remoto tramite verificato SSH direct-tcpip.

Stoccaggio

Ricorsivo persistente B+Trees archiviare dati di catalogo, tabella, intestazione versione, versione e indice. Le righe e gli schemi di seconda generazione contengono identificatori stabili, metadati di tipo, limiti e checksum. Gli indici generali utilizzano chiavi composte ordinate; le voci derivate possono essere ricostruite dallo stato impegnato autorevole.

Ogni limite configurato fa parte del comportamento. Righe, messaggi, set di risultati, chiavi di indice o strutture non supportate di grandi dimensioni restituiscono un errore esplicito anziché crescere senza limiti.

Durabilità e recupero

Ridge utilizza un CRC-32 logico WAL. Il commit rende persistente la transazione prima che la pubblicazione venga confermata. Recupero:

  1. convalida WAL framing, sequenza e checksum;
  2. ignora il lavoro inedito o non impegnato;
  3. riproduce le transazioni impegnate in modo idempotente;
  4. ripara una coda strappata supportata;
  5. ricostruisce teste e indici derivati;
  6. rifiuta la corruzione a metà registro.

Questo non è un contratto di recupero logico PostgreSQL fisico WAL compatibilità.

MVCC e transazioni

Ridge mantiene transazioni persistenti e identificatori di commit oltre a una filigrana di commit visibile. Gli snapshot di lettura ripetibile e bloccati con aggiornamento delle istruzioni di lettura confermata utilizzano le stesse regole di visibilità per scansioni, chiavi, indici, SQL, backup e pgwire.

Gli scrittori disgiunti possono mettere in scena contemporaneamente. La convalida della testa prevista e della chiave univoca produce conflitti deterministici quando lo stato si sovrappone. Le transazioni atomiche multitabella forniscono operazioni di lettura e scrittura e rollback delle istruzioni. SELECT ... FOR UPDATE utilizza il blocco non bloccante limitato e restituisce SQLSTATE 55P03 in caso di conflitto.

Vuoto e manutenzione

Vacuum protegge l'istantanea live più vecchia, ricabla le catene di versioni conservate e riutilizza le pagine libere delimitate. La manutenzione di Online/incremental è limitata alle operazioni Ridge documentate. Non modificare direttamente i file di archiviazione.

Carichi di lavoro specializzati

I pacchetti v0.3 aggiungono canonical JSON, analisi e finestre limitate, archiviazione di serie temporali, ricerca full-text e ricerca vettoriale HNSW esatta e limitata. Questi sono Ridge-implementazioni limitate native, non livelli di compatibilità delle estensioni.

Prove

L'architettura è chiusa da crash, ripristino, migrazione, differenziale, isolamento, concorrenza, backup, vuoto e porte di riapertura. Vedi grove/apps/ridge/V3_CONTRACT.md, CAPABILITIES.mde i test runner V3 per i dettagli normativi.