Ridge Architettura di esecuzione

Questa pagina mappa il runtime condiviso da Ridge DB e Ridge Admin. Deriva dalla corrente ridged, ridge_pgwire, ridge_sql, ridge, e ridge-admin implementazioni piuttosto che da un modello di database generico.

Apri l'interattivo Archify diagramma

La mappa interattiva fornisce componenti ricercabili, tracciamento del percorso diretto, visualizzazioni guidate per il percorso di query principale, remoto SSH, durabilità e sicurezza, dark/light temi, navigazione tramite tastiera e SVG o esportazione raster.

Mappa del sistema

Browser
  │ HTTP on loopback
  ▼
Ridge Admin security gate
  │ authenticated API + workspace
  ▼
Ridge Admin services ──► four-connection pgwire pool
                              │
                              ├── local pgwire ─────────────────────┐
                              │                                     │
                              └── verified SSH direct-tcpip ────────┤
                                                                    ▼
                                                       ridged pgwire runtime
                                                                    │
                                                                    ▼
                                                       Ridge SQL session
                                                                    │
                                                                    ▼
                                                       Ridge core / MVCC
                                                                    │
                                                                    ▼
                                                       B+Trees + WAL + rows

Il percorso principale è intenzionalmente stretto. Il browser non riceve mai un socket di database o SSH credenziale. Sia il profilo locale che quello remoto convergono sullo stesso pgwire, SQL contratti di transazione e di stoccaggio.

Componenti di esecuzione

Componente Responsabilità Implementazione canonica
Interfaccia utente del browser Esploratore di oggetti, SQL spazi di lavoro, modifica dei dati, operazioni grove/apps/ridge-admin/static/
HTTP cancello di sicurezza Scambio di lancio una tantum, cookie di sessione, CSRF, controlli host e origine grove/apps/ridge-admin/src/main.sd, src/lib.sd
Servizi amministrativi Profili, metadati, SQL esecuzione, modifica, esportazione, diagnostica grove/apps/ridge-admin/src/main.sd
Pgwire piscina Quattro allacciamenti di proprietà, locazioni di spazi lavorativi, transazioni, cancellazioni grove/apps/ridge-admin/src/lib.sd, grove/libs/pg
SSH trasporto Verifica host noto, autenticazione, direct-tcpip, riconnessione e annullamento dei canali grove/libs/ssh, grove/apps/ridge-admin/src/main.sd
ridged filo pg Ascoltatore di loopback, TLS/password autenticazione, frammenti del reattore, code, cancellazione, coordinamento dell'archiviazione grove/libs/ridge_pgwire
Ridge SQL Analisi, classificazione, pianificazione, esecuzione preparata, risultato e limiti di lavoro grove/libs/ridge_sql
Ridge nucleo Catalogo, schemi, MVCC, transazioni, indici, conflitti, vuoto, backup e ripristino grove/libs/ridge
Stoccaggio durevole Ricorsivo B+Trees, logico CRC-32 WAL, codec row/schema di seconda generazione grove/libs/btree_store, grove/libs/wal, grove/libs/rowcodec

Flusso di query primaria

  1. Ridge Admin associa il suo server HTTP a 127.0.0.1 e fornisce al browser un token di frammento una tantum.
  2. Il browser scambia il frammento con un file HTTP-solo cookie di sessione e riceve un token CSRF per sessione.
  3. Il dispatcher HTTP convalida la dimensione della richiesta, il percorso, il metodo, l'host, l'origine, sessione, CSRF e il tipo di contenuto prima di richiamare un servizio.
  4. Uno spazio di lavoro SQL affitta una connessione di proprietà dal pool di quattro connessioni.
  5. I profili locali si connettono a ridged in loopback. I profili remoti inseriscono il file stesso protocollo client tramite un canale SSH direct-tcpip verificato senza aprire un listener di inoltro.
  6. Un frammento di reattore ridged convalida l'avvio, TLS/authentication, protocollo frame, istruzioni preparate, stato del portale, pressione di output e metadati di cancellazione.
  7. Il coordinatore dello storage instrada la richiesta limitata a a Ridge SQL sessione.
  8. Ridge SQL analizza e pianifica un'istruzione supportata, applica result/work limiti ed esegue attraverso il Ridge nucleo.
  9. Ridge si applica il nucleo MVCC visibilità, bloccaggio, vincoli, indici, WAL pubblicazione, B+Tree modifiche, checksum e fsync come richiesto.
  10. I risultati vengono restituiti tramite pgwire. Ridge Admin converte il protocollo limitato frames to JSON or CSV and returns them to the browser.

Una scrittura interrotta non viene mai riprodotta automaticamente. Ridge Admin contrassegna un risultato ambiguo come incerto e richiede la verifica dell'operatore.

Modello di concorrenza

Persistente ridged richiede almeno due lavoratori del seme. Divide parte del gruppo di lavoro in frammenti del reattore non bloccanti e mantiene la capacità per il lavoro di stoccaggio. Ogni frammento possiede il proprio ascoltatore, lastra di connessione, stato del protocollo, piani preparati, contropressione di output, token di cancellazione e un lettore di istantanee di sola lettura. I canali delimitati collegano i frammenti al coordinatore dello storage.

Il coordinatore preserva la proprietà delle transazioni, il raggruppamento dei commit, il drenaggio degli arresti e il routing delle cancellazioni. Le letture possono utilizzare snapshot indipendenti; le scritture durevoli continuano a passare Ridge regole di rilevamento e pubblicazione dei conflitti.

Ridge Admin utilizza spawn strutturato per connessioni HTTP delimitate e un gestore SSH di proprietà. Lo stato del server possiede il pool, i lease dell'area di lavoro, l'annullamento delle query attive, lo stato di riconnessione e la pulizia deterministica.

Dipendenze esterne

Dipendenza Utilizzo in fase di esecuzione Confine
OpenSSL 3 Contesto e connessione server ridged nativo TLS I/O Backend nativo esplicito collegato a libssl e libcrypto
Runtime del seed ospitato Socket, reattore di eventi, segnali, pianificazione attività, entropia, ora, file, blocchi e fsync Runtime specifico della piattaforma ABI
File system del sistema operativo File di database, WAL, catalogo, indici, istantanee, backup, registri, archivio profili Radici assolute controllate dall'operatore o dall'utente
Navigatore Presentazione, stato di vista di breve durata, bozze locali Non attendibile rispetto all'autorità di backend
SSH server e agente Identità dell'host, autenticazione, trasporto crittografato Verificato prima del traffico del database

Ridge non dipende da a PostgreSQL servitore. PostgreSQL la compatibilità è limitata al sottoinsieme di cavi lato client documentato.

Confini di sicurezza

Browser su Ridge Admin

Ridge Admin nel database

SSH confine

ridged confine

Confine di archiviazione

Contenimento del fallimento

Fallimento Comportamento di contenimento
Malformato HTTP o corpo sovradimensionato Errore HTTP digitato prima dell'invio del servizio
Frame pgwire non valido o protocollo non supportato Errore protocol/SQLSTATE limitato e pulizia della connessione
Saturazione o timeout della coda Rifiuto esplicito; nessuna crescita illimitata della coda
Cancellazione del cliente Indirizzato al proprietario shard/session prima della pubblicazione, ove possibile
Interruzione della rete durante la scrittura Risultato incerto; nessuna riproduzione automatica
Conflitto di transazione Conflitto deterministico senza pubblicazione parziale
Arresto del processo Riproduzione logica WAL impegnata; il lavoro inedito rimane invisibile
Corrotto WAL o backup Checksum/integrity fallimento invece di accettazione silenziosa
Ripristina la collisione o l'attraversamento Il ripristino offline rifiuta la destinazione

Non-obiettivi architettonici

Questa mappa non implica un multiutente remoto Ridge Admin servizio, generale PostgreSQL amministrazione, replica, clustering, partizionamento orizzontale, un listener di database pubblico, SCRAM, identità di certificato, completo PostgreSQL cataloghi o senza restrizioni driver/ORM compatibilità.

Provenienza del diagramma

L'artefatto interattivo è stato prodotto con Archify 2.12 in modalità Architettura utilizzando la presentazione statica Classic e il cancello di composizione Showcase. La sua fonte digitata è seed/docs/diagrams/ridge-runtime.architecture.json.

La mappa è supportata da prove mediante l'ispezione del repository, ma intenzionalmente non incorpora percorsi di repository privati come prova della fonte cliccabile. I file sorgente sopra elencati rimangono i punti di ancoraggio della revisione.