Die Grenzen von Planning Analytics erkunden: Warum es sinnvoll ist, sich selbst herauszufordern

von | 12.10.2023 | Data Engineering

Warum sollte gelegentlich in Erwägung gezogen werden, sich selbst auf die Probe zu stellen? Worte und Ideen bleiben oft nur Konstrukte der eigenen Vorstellungskraft, bis sie tatsächlich in die Tat umgesetzt werden. In der heutigen Zeit bietet uns die verfügbare Technologie zahlreiche Möglichkeiten, unsere eigenen Potenziale zu realisieren. Oft reicht nur ein kleiner Funke 🔥 aus, um die Leidenschaft eines IT-Enthusiasten zu entfachen.

Dies war auch der Fall bei unserer kürzlich besiegelten Partnerschaft mit OLAPLINE GmbH, die einen einzigartigen Wissensaustausch ermöglichte. Innerhalb weniger Stunden konnten wir auf einem anspruchsvollen technischen Niveau unsere bisherigen Erfolge im Bereich IBM Planning Analytics bzw. TM1 und das dazugehörige Ökosystem präsentieren und diskutieren. Solche Gelegenheiten kommen nicht allzu oft vor. Eine Frage, die uns Henri gestellt hat, beschäftigte mich besonders:

„Habt ihr schon einmal versucht, TM1 in einem Container auszuführen?“

Henri Stenzel

Geschäftsführer, OLAPLINE GmbH

Ehrlich gesagt, hatten wir das bisher noch nicht versucht. Aber warum eigentlich nicht?

  • Lag es an fehlender Zeit?
  • War es die nicht vorhandene Notwendigkeit?
  • Mangelte es am Nutzen?

Ich kann mir vorstellen, dass dieses Thema viele Fragen und Diskussionen auslöst. Als uns Henri aber seine Lösung präsentierte und uns die Docker- und Compose-Dateien schickte, war ich überzeugt, dass wir es auch mit seiner Unterstützung schaffen können. Warum also nicht versuchen?

Gesagt, getan – unser Plan sah wie folgt aus: Wir wollten klein anfangen und schrittweise erkunden, was möglich ist. Im ersten Schritt bringen wir die Linux-basierte Variante von IBM Planning Analytics Local in einem Container zum Laufen. Unser Container basiert auf der CentOS Linux-Distribution, die von Red Hat Enterprise Linux als Open Source zur Verfügung gestellt wird.

Dockerfile

  FROM centos:stream9
  
  RUN yum -y install libstdc++ libstdc++.i686 motif libXm.so.4 libXtst 
  RUN yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel 
  ENV JAVA_HOME="/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.362.b09-4.el9.x86_64" 
  
  RUN mkdir /app COPY /opt/ibm/cognos /app/cognos

Nun müssen wir noch einige relevante Bibliotheken installieren und wichtige Umgebungsvariablen setzen. Wir legen einen entsprechenden Ordner im Container an und kopieren die Dateien von IBM Planning Analytics nach einer erfolgreichen Installation dorthin. Alternativ kann die Installation auch im Container durchgeführt werden. Hierfür wird die unbeaufsichtigte Installation für IBM Cognos-Komponenten mithilfe der .ats-Datei gestartet.

Dockerfile

  RUN chmod +x /app/cognos/tm1_64/bin64/startup_tm1s.sh 
  ENV TM1_PATH="/app/cognos/tm1_64/bin64" 
  
  ENTRYPOINT ["sh", "/app/cognos/tm1_64/bin64/startup_tm1s.sh","/app/cognos/tm1_64/samples/tm1/24Retail"]

Der Container ist jetzt einsatzbereit und kann über Docker, Podman oder in einer Azure Container App ausgeführt werden. Nach dem Testen verschiedener Möglichkeiten, ist es uns gelungen, TM1 Server Version 11 in der Azure Container-Umgebung nutzen zu können. Das Besondere daran ist, dass wir den internen IBM HTTPPortNumber auf die Ports 443 bzw. 80 mappen und über eine benutzerfreundliche URL einen einfachen Zugriff auf die IBM REST-API haben. Sobald dann alles eingerichtet ist, können Tools wie IBM Planning Analytics Workspace, IBM watsonx oder Cubewise Arc verwendet werden, um auf das Datenmodell zuzugreifen. Aber auch Tools wie unser DAL und TM1Py ❤️ in Kombination mit einem JupyterLab-Container können problemlos von Data Scientists genutzt werden.

PAL on Jupyterlab
Planning Analytics Local on watsonx

Natürlich sind wir noch bei den ersten Versuchen, TM 1 im Container laufen zu lassen, aber wollen trotzdem allen TM1- Enthusiasten schon die Möglichkeiten zeigen, die sich bieten. Wir möchten die Idee von Manny Perez weiterführen und neue Wege in der Bereitstellung und Nutzung dieser Technologie im Sinne echter Innovation gehen – und uns selbst fordern, komplexe Strukturen einfach zu verstehen und anzuwenden. 

Wir haben noch viele Ideen, wie die Integration von ODBC-Treibern in unsere Container und die Nutzung der ExecuteHttpRequest-Funktion in unseren Linux-Containern. Die ODBC-Treiber würden den Zugriff auf verschiedene Datenbanken erleichtern, während die ExecuteHttpRequest-Funktion die Interaktion mit externen Diensten und APIs ermöglicht. Diese Erweiterungen würden unsere Container-Infrastruktur vielseitiger und flexibler machen, um Daten zu verwalten und mit verschiedenen Plattformen zu kommunizieren.

Alexander Gusser

Alexander Gusser

Vereinbaren Sie jetzt einen Termin für ein persönliches Gespräch.

Weitere Beiträge

Nehmen Sie Kontakt auf

GMC² GmbH
Joseph-Schumpeter-Allee 29
53227 Bonn

info@gmc2.de
+49 228 30497700

7 + 6 =

Hinweis: Die abgesendeten Daten werden nur zum Zweck der Bearbeitung Ihres Anliegens verarbeitet. Sie können Ihre Einwilligung für die Zukunft jederzeit per E-Mail widerrufen. Weitere Informationen finden Sie in unserer Datenschutzerklärung.

Datenschutz
GMC² GmbH, Inhaber: Holger Gerhards (Firmensitz: Deutschland), verarbeitet zum Betrieb dieser Website personenbezogene Daten nur im technisch unbedingt notwendigen Umfang. Alle Details dazu in der Datenschutzerklärung.
Datenschutz
GMC² GmbH, Inhaber: Holger Gerhards (Firmensitz: Deutschland), verarbeitet zum Betrieb dieser Website personenbezogene Daten nur im technisch unbedingt notwendigen Umfang. Alle Details dazu in der Datenschutzerklärung.