Oracle Database 23ai Free auf Apple Silicon

Aktuell gibt es keine Oracle Database 23ai Free für Linux on ARM. Da ich einen Apple Mac mit M3 CPU nutze, ist dies ein großes Problem. Nachdem es nicht immer möglich ist auf einen Rechner mit Intel CPU zuzugreifen, habe ich nach einer Lösung gesucht, die auch für Apple Silicon funktioniert. Aktuell dürfte UTM Version 4.5.4 (100) die beste Lösung sein.

Oracle Virtual Box gibt es für ARM noch nicht und Parallels unterstützt nur Virtualisierung – und keine Emulierung.

Die Installation von Oracle Linux 8 und Oracle Database 23ai Free Edition geht problemlos, wenn auch etwas langsamer als gewohnt (im Vergleich zu Oracle Linux 8 und Oracle 19.19 für ARM).

Die Emulation von Intel x86_64 auf der ARM CPU hat definitiv seinen Performance-Preis.
Der CPU Single Thread Benchmark liefert einen Wert von knapp 21 Sekunden, statt wie gewohnt knapp über 2 Sekunden für die native ARM Version.

Beim I/O Calibrate (VM mit 2 Cores, 8GB Memory) bekommt man ebenfalls deutlich geringere Werte, als mit der nativen ARM Software:

Instance Parameter: FILESYSTEMIO_OPTIONS=NONE
max_iops = 81092
latency  = 0
max_mbps = 3524

Instance Parameter: FILESYSTEMIO_OPTIONS=SETALL
max_iops = 24177
latency  = .562
max_mbps = 2697

Siehe auch meinen Block zu FILESYSTEMIO_OPTIONS.

Das ist immer noch ausreichend für ein Test-Environment. Gefühlt ist die Performance besser als eine „optimierte“ VM auf der QNAP NFS Storage. Am Besten ist aber die Möglichkeit, eine Oracle 23ai Datenbank jetzt auch mit einem Apple Silicon Rechner betreiben zu können, ohne von anderen Resourcen abhängig zu sein.

Stellt man in der Konfiguration der VM den Device Type von IDE auf VIRTIO um und installiert die notwendigen Treiber – hier das Beispiel für Oracle Linux 8:

dnf -y install qemu-guest-agent.x86_64 libvirt-daemon-driver-qemu.x86_64 
systemctl enable --now qemu-guest-agent

verbessert sich die I/O Performance auf

Instance Parameter: FILESYSTEMIO_OPTIONS=SETALL
max_iops = 31274
latency  = 1.396
max_mbps = 7834

Allerdings verdoppelt sich die I/O Latency dadurch von ca. 0.6ms auf 1.4ms.

Nachtrag vom Mo, 16. September 2024: Oracle hat im Rahmen der CloudWorld die Oracle 23ai Free Edition auch für ARM CPUs unter Oracle Linux 8 zur Verfügung gestellt. Mit dem hier beschriebenen Weg kann man aber auch andere Oracle Datenbank Versionen für Linux x86 auf einem Apple MAC zur Verfügung stellen