Oracle Datenbank EE Lizenzen optimal nutzen

Egal ob man eine CPU Core- oder benutzerbasierte Lizenz nutzt, gibt es einige Punkte zu beachten um das Optimum aus der Lizenz zu holen.

Es beginnt mit der Auswahl der passenden Hardware – in dem Beispiel beziehen wir uns auf CPU Core Lizensierung. Abhängig von den genutzten Hardwareplattform und CPU (Intel und AMD, IBM Power, Sparc,…) muss man in der Oracle Processor Core Factor Table nachsehen, welcher Lizenzfaktor zur Anwendung kommt. Bei einer (zugegeben schon älteren) SPARC T3 CPU liegt dieser bei 0.25, bei gängigen Intel & AMD CPUs bei 0.5 und bei IBM Power CPUs bei 1. Unter der Annahme, dass wir jeweils 8 Cores nutzen, benötigt man folgende Oracle CPU Core Lizenzen:

  • Sparc T3: 2 CPU Core Lizenzen
  • Intel/AMD: 4 CPU Core Lizenzen
  • IBM Power: 8 CPU Core Lizenzen

Das macht einen großen Unterschied in den Lizenzkosten und der Kosteneffizient.

Die nächste Überlegung ist, wo die Datenbank betrieben wird: im eigenen Rechenzentrum oder in der Cloud. Auch hier gibt es ein Dokument zu berücksichtigen: Licensing Oracle Software in the Cloud Computing Environment. Nutzt man Intel CPUs mit Hyperthreading, so zählen onPremise und in der Oracle Cloud die Hyperthreads nicht für die Berechnung des CPU Core Faktors. Nutzt man beispielsweise einen Intel® Xeon® Gold 6334 Processor mit 8 Cores plus Hyperthreading, sieht man am Betriebssystem zwar 16 Cores, für die Lizensierung zählen aber nur die 8 Cores. Damit benötigt man nur 4 CPU Core Lizenzen. In der Oracle Cloud ist Hyperthreading immer aktiv. Setzt man jedoch auf die Amazon oder Microsoft Cloud, so gelten folgende Regeln:

  • ist Hyperthreading aktiviert, sind zwei vCPUs gleich einer Lizenz
  • ist Hyperthreading deaktiviert, zählt eine vCPU für eine Lizenz

Das bedeutet: der Lizenzfaktor laut Oracle Processor Core Factor Table kommt nicht zum Einsatz, jede Core muss mit einer Oracle CPU Lizenz unterlegt sein.

Letzter Punkt ist der Vergleich der CPU Leistung der verschiedenen CPUs. Im Artikel Oracle Datenbank CPU Performance im Vergleich findet man eine einfache Möglichkeit die für Oracle nutzbare CPU Performance grob zu ermitteln. Natürlich spielen auch andere Faktoren wie der verfügbare Hauptspeicher, die I/O Bandbreite und die Storage Performance eine Rolle. Für die Oracle Lizensierung ist jedoch die CPU Performance das ausschlaggebende Kriterium. Vergleicht man einige CPUs (kürzere Laufzeit = besser):

  • IBM Power 9 CPU mit 3.4GHz: Laufzeit ca 5.4-5.7 Sekunden
  • SPARC M8 CPU bei 5GHz: Laufzeit ca 4 Sekunden
  • Cloud Provider CPUs (viele Cores, bei knapp über 2GHz): ca. 7 Sekunden
  • aktuelle Intel Xeon CPU mit 3.6GHz: ca 2,5 Sekunden

ist leicht zu erkennen, dass je nach CPU pro Core knapp ein Faktor 3 zwischen der schnellsten und der langsamsten CPU liegt. Man kann durch den Einsatz einer CPU mit der benötigten Anzahl an Cores und möglichst hoher Taktrate somit deutlich mehr Rechenleistung abrufen.

Wie wirkt sich das in der Praxis aus?

Nehmen wir an, wir wollen eine Datenbank, die aktuell auf einem Server mit SPARC M8 CPU bei 5GHz läuft und dabei 8 Cores benötigt (aufpassen, wirklich Cores und nicht Threads!), ablösen. Für die 8 Cores benötigt man auf Grund der Oracle Processor Core Factor Table nur 4 Oracle CPU Lizenzen.

Bei einem Wechsel auf eine IBM Power 9 benötigt man rund 12 Cores (8 Cores / 4 Sek * 6 Sek = 12 Cores). Siehe Laufzeiten von der Liste oben. Da der Core Faktor bei IBM Power bei 1 liegt, wären auf einmal 12 Oracle Lizenzen nötig! Damit würde sich der Oracle CPU Lizenz Footprint verdreifachen!

Bei einem Wechsel auf eine aktuelle Intel Xeon CPU wären aber 6 Cores (8 Cores / 4 Sek * 2,5 Sek = 5 Cores) mehr als ausreichend und man würde von den 4 Oracle CPU Lizenzen nur 3 benötigen.

Geht man in die Oracle Cloud mit „Bring your own License“, benötigt man ca. 14 Cores (8 Cores / 4 Sek * 7 Sek = 14 Cores). Abhängig von der Applikation und den SQL Offloading Funktionalitäten möglicherweise auch etwas weniger. Trotzdem wird man auch hier zusätzliche Oracle Lizenzen benötigen.

Wechselt man jedoch in die Cloud von Amazon oder Microsoft, benötigt man wirklich 14 Cores und somit 14 Oracle CPU Lizenzen!

Wie schon weiter oben erwähnt: bei diesen Betrachtungen wurden andere Faktoren wie Hauptspeicher, Storage und I/O Bandbreite nicht berücksichtigt.

Auch wenn es möglicherweise nicht als sexy gilt, kann man bei der richtien CPU Auswahl im eigenen Rechenzentrum mit Abstand das Meiste aus seiner Oracle Datenbank Enterprise Edition herausholen.

Referenzen

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.