Oracle Datenbank SE2 Lizenz optimal nutzen

Oracle hat die Standard Edition 2 mittels CPU Caging auf 16 Cores limitiert. Damit darf die Datenbank auch auf CPUs laufen, die mehr als 16 Cores bereit stellen. Wenn der Server zwei CPUs eingebaut hat, muss man 2 Lizenzen für die Oracle Datenbank SE2 besitzen, auch wenn man nicht mehr als 16 Cores nutzen kann.

Somit stellt sich folgende Frage:

Worauf soll man achten um möglichst viel Nutzen aus der Lizenz ziehen zu können?

  • Damit Sie nur eine Lizenz benötigen, sollten Sie einen Server einsetzen in dem nur ein CPU Sockel bestückt ist. Der Server darf maximal zwei CPU Sockel besitzen, wovon einer unbestückt sein kan.
  • Setzen Sie auf CPUs mit möglichst hoher Taktrate, beispielsweise:
    • Intel® Xeon® Gold 6246R Processor – 16 Cores @ 3.4GHz mit Turbo auf 4.1GHz
    • Intel® Xeon® Gold 6346 Processor – 16 Cores @ 3,1GHz mit Turbo auf 3.6GHz
    • AMD EPYC™ 73F3 – 16 Cores 3.5GHz
  • Deaktivieren von Intel HyperThreading bzw. AMD SMT damit die Oracle Prozesse immer echte Cores mit voller Performance nutzen können. Das Oracle CPU Caging nimmt keine Rücksicht auf HT und SMT! Diese werden als vollständige Cores gewertet.
  • Ausreichend Hauptspeicher für die Datenbank vorsehen. Dadurch wird nicht nur die Laufzeit der SQL Verarbeitungen reduziert, sondern auch das Storage System von unnötigen Leseoperationen befreit. Im Internet findet man leider viele veraltete Empfehlungen zu diesem Thema. Aktuell sollte man versuchen die folgenden Performanzeckdaten einzuhalten:
    • Bei OLTP Datenbanken sollte die Cache-Hit Ration >= 99% sein, das Verhältnis von READ zu WRITE I/O Requests auf Datenbank Files sollte bei unter 1:1 liegen. Das bedeutet, dass man weniger Read wie Write I/Os benötigt. Informationen dazu finden man in in der View V$IOSTAT_FILE.
    • Bei DWH Datenbanken kann man in der Regel keine Cache-Hit Ration empfehlen, da es hier stark davon abhängt ob bei den Verarbeitungen normale IO Requests oder Direct Read/Write Requests genutzt werden. Hier hilft nur die Spalte ESTD_PCT_OF_DB_TIME_FOR_READS in der View V$DB_CACHE_ADVICE als Hinweisgeber. Die Werte geben einen Anhaltspunkt wie viel Zeit für lesende I/Os benötigt werden. Im Idealfall hat man hier niedrige einstellige Werte, wenn es mehr als 10-20% sind, benötigt die Datenbank mehr Buffer Cache (mehr Hauptspeicher).

Wenn man diese Punkt berücksichtigt, bietet die Oracle Datenbank Standard Edition für die meisten Anwendungsfälle ausreichend Leistung/Performanz.

Weitere interessante Artikel zu Oracle SE2

Schreibe einen Kommentar

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.