PrinzipDer Oracle Datenbank Cache ist ein Schreib-Lese-Cache für die Nutzdaten. Er hat die gleiche Blockstruktur wie die Datendateien. Die Trefferquote des Cache hat eine große Aussagekraft. Schlechte Trefferquoten (kleiner 95%) bedeuten immer Performanceprobleme aufgrund von IO-Operationen. Die Größe des Cache wird durch den Initialisierungsparameter DB_BLOCK_BUFFERS in Anzahl Blöcken angegeben. Die Gesamtgröße ergibt sich durch DB_BLOCK_BUFFERS * DB_BLOCK_SIZE. Die Blockgröße wird beim Anlegen der Datenbank festgelegt und kann nachträglich nicht mehr verändert werden. DB_BLOCK_BUFFERS wird beim Start der Datenbank-Instanz gelesen. Cache-GrößeDie sinnvolle Größe für den Datencache ist vom Einzelfall abhängig. Mehrere Hundert Megabyte bei einem Produktivsystem von einigen Gigabyte Nutzdaten sind durchaus empfehlenswert. Trefferquoteset serveroutput on declare dbg number; cg number; begin select value into dbg select value into cg select value into pr dbms_output.put_line('db block gets '||to_char(dbg,'999G999G999')); dbms_output.put_line('consistent gets '||to_char(cg,'999G999G999')); dbms_output.put_line('physical reads '||to_char(pr,'999G999G999')); dbms_output.put_line('------------------------------'); dbms_output.put_line( end; Stichwörter Datenbank database Cache datencache DB_BLOCK_FUFFERS Trefferquote cache miss hit |