Qualsiasi DBMS può essere eseguito "in memoria". Considera l'uso di un ramdisk. Tuttavia, la maggior parte dei DBMS (quelli con SQL) non sono progettati per eseguire interamente in memoria e mettere molto di sforzo per ridurre al minimo l'IO del disco e il paging:un DBMS lavora molto duramente per mantenere caldi i "dati rilevanti" (in memoria e nella cache) -- L'IO è lento, lento.
Questo perché i dati del database sono spesso [ed storicamente sono stati] significativamente più grandi rispetto alla memoria principale. Questo e la memoria principale sono volatili :-) [I DBMS ACID eseguono molti lavori con la registrazione write-ahead - in un archivio non volatile - e altre tecniche per garantire che i dati non vengano mai danneggiati, anche in caso di arresto imprevisto. ]
Alcuni database, come SQLite, utilizzano lo stesso formato per il disco e gli archivi di memoria anche se supportano esplicitamente un archivio in memoria. Il supporto per altri back-end [in memoria] e l'ottimizzazione dell'utilizzo della memoria variano in base al provider.
Buona codifica.