Migliore risposta
“RDBMS” – Relation Database Management System. Questa è la più comune delle applicazioni di database e può essere trovata in molte forme: Sistemi di prenotazione; sistemi di registrazione dei soci di club, compreso il monitoraggio dei pagamenti delle quote; gestione di clienti / potenziali clienti, in particolare nelle organizzazioni di vendita e marketing. Se hai una “tessera club” da Target, Best Buy o qualsiasi altro negozio, stanno monitorando le tue abitudini di acquisto in un RDBMS.
Quando hai la necessità di archiviare e recuperare i dati e desideri flessibilità per recuperarlo in una forma particolare, e solo i dati che richiedi, vorrai un RDBMS. Quando desideri monitorare le attività dei tuoi clienti / potenziali clienti o di chiunque altro, avrai bisogno di una tabella di audit collegata ai tuoi clienti, e questo è il lavoro di un RDBMS.
Spero che questo ti aiuti.
Risposta
Avendo aiutato a programmare un paio nel corso degli anni, ecco alcuni link utili relativi a questo argomento:
https://www.quora.com/What-are-the-various-components-of-a-database/answer/Greg-Kemnitz
La risposta di Greg Kemnitz a Come si può tentare di scrivere un motore di database in miniatura come SQLite?
La risposta di Greg Kemnitz a In quale lingua viene creato un database? Come viene creato un database?
In breve, è fattibile per un individuo, ma è un progetto piuttosto grande, anche se si tratta di un DB funzionalmente “limitato” come un DB per dispositivi incorporati. Anche i sottosistemi di un motore di database, come le API lato applicazione, il parser di query, lottimizzatore di query, il gestore dei metadati o il motore di archiviazione, hanno livelli allinterno di livelli che finiscono per essere grandi affari per DB relazionali di livello aziendale spesso con team di persone che lavorano su ogni sottosistema.
- Quanto sei ambizioso con questo progetto? È un progetto di apprendimento personale? Vuoi implementare un nuovo RDBMS di livello aziendale? Vuoi implementare qualche caratteristica o idea interessante che sia unestensione di RDBMS esistente?
Una volta che hai trovato alcune risposte a quanto sopra, passerai ad alcune “tecniche “Pensieri:
- Cosa vuoi che faccia esattamente il tuo RDBMS?
- Cosa vuoi che NON faccia, almeno inizialmente? Un design modulare per i livelli inferiori del tuo motore è buono, poiché cercare di affrontare le transazioni ACID e il corretto ripristino in caso di incidente al primo giro può essere difficile. Il tuo primo motore di archiviazione potrebbe essere semplice in quanto vorresti implementare i livelli più alti del sistema al punto da poter giocare con esso e quindi implementare un motore di archiviazione “adulto” in un secondo momento.
- In quale lingua è meglio codificato? Un progetto di apprendimento personale può essere svolto in qualsiasi lingua, ma se hai ambizioni aziendali per il tuo progetto, devi codificarlo in un linguaggio “performante” come C, C ++, Rust o GoLang. La maggior parte degli RDBMS sono stati codificati in C o C ++.