Oracle und DirectIO

Die Oracle Datenbank ist sehr komplex. Sie bietet eine Vielzahl von Möglichkeiten zu ‘tunen’. DirectIO ist nur eine Maßnahme.
Nun was hat es mit dem ‘DirectIO’ auf sich? – Es soll den Filesystemcache des Betriebssystems umgehen, was dann doppeltes Puffern umgeht und Oracle allen das Zwischenspeichern der Daten überlässt.

Nun – nicht jedes Dateisystem unterstützt diese Option. folgende Systeme sind jedoch nicht nur oft verbreitet, sondern auch fähig mit dieser Option zu arbeiten:

  • ReiserFS (‘notail’ mount!)
  • ext2
  • ext3
  • NFS

In der ‘INIT.ORA’ kann der Parameter ‘filesystemio_options=directio‘ für die Aktivierung sorgen. Diese Option ermöglicht allerdings “nur” das synchrone IO – Für den asynchronen Zugriff muss der Parameter wie folgt aussehen:
filesystemem_option=setall

(Oracle 9i kennt diese Optionen nicht per default nicht – Bei Oracle 10g R2 ist es bereits mitkompiliert – es muss also nur noch aktiviert werden.)

Es hat sich bei Tests gezeigt, dass die Leistung bei Schreibzugriffen der einzelnen Prozesse etwas zurückgeht. Um diesen Umstand auszugleichen sollte der Parameter “db_writer_processes” auf die Anzahl der vorhandenen Prozessoren – mindestens aber auf 4 gesett werden.

Dieser Beitrag wurde unter Datenbank abgelegt und mit , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: KEINE!!! :-P