Es kann sich lohnen, wenn Ihre Datenbank E/A-gebunden ist. Wenn es CPU-gebunden ist, wird ein RAM-Laufwerk keinen Unterschied machen.
Aber zuerst einmal sollten Sie sicherstellen, dass Ihre Datenbank richtig abgestimmt ist, können Sie riesige Leistungsgewinne auf diese Weise erhalten, ohne irgendwelche Garantien zu verlieren. Sogar eine RAM-basierte Datenbank funktioniert schlecht, wenn sie nicht richtig eingestellt ist. Siehe PostgreSQL wiki on this, hauptsächlich shared_buffers, effective_cache_size, checkpoint_ *, default_statistics_target
Zweitens, wenn Sie Datenträger-Puffer synchronisieren vermeiden wollen auf jeden begehen (wie codeka in seinem Kommentar erklärt), deaktivieren Sie die synchronous_commit Konfigurationsoption. Wenn die Stromversorgung Ihres Computers unterbrochen wird, gehen einige aktuelle Transaktionen verloren, die Datenbank bleibt jedoch zu 100% konsistent. In diesem Modus wird RAM verwendet, um alle Schreibvorgänge, einschließlich Schreibvorgänge im Transaktionsprotokoll, zu puffern. Mit sehr seltenen Checkpoints, großen shared_buffers und wal_buffers kann es tatsächlich Geschwindigkeiten nahe denen eines RAM-Laufwerks erreichen.
Auch Hardware kann einen großen Unterschied machen. 15.000 RPM-Festplatten können in der Praxis dreimal so schnell sein wie billige Laufwerke für Datenbank-Workloads. RAID-Controller mit batteriegepuffertem Cache machen ebenfalls einen wesentlichen Unterschied.
Wenn das immer noch nicht genug ist, dann kann es sinnvoll sein, in flüchtigen Speicher zu konvertieren.
Sind die Daten (meistens) schreibgeschützt oder schreibgeschützt? –
@codeka Über 50/50 – orokusaki