MDX Profiler

“Die Anwendung ist sooooo langsam!”. Jeder hat sicherlich schon das Jammern und Wehklagen von Softwareanwendern gehört. Dieses subjektive Gefühl der Benutzer, mit einer langsamen Applikation arbeiten zu müssen, sollte sehr ernst genommen werden. Der Aufwand, in komplexen Anwendungen nach den Ursachen für lange Laufzeiten zu forschen, ist jedoch langwierig und sehr mühselig. Oftmals ist es nur eine von vielen hundert Abfragen, die das System ausbremst. Es bedarf daher einer professionellen Unterstützung bei der Suche nach Schwachstellen einer Anwendung.
In Wikipedia kann man nachlesen: “Ein Profiler hilft dem Entwickler durch Analyse und Vergleich von laufenden Programmen die Problembereiche aufzudecken. Daraus kann man Maßnahmen zur strukturellen und algorithmischen Verbesserung des Quellcodes ableiten.” In allen Microsoft SQL-Server Editionen ab Version 2000 wird so ein Profiler mitgeliefert.
Im ersten Abschnitt dieses Beitrags wird gezeigt, wie der Profiler konfiguriert und an eine SQL-Server Tabelle angebunden wird. Im zweiten Teil wird kurz auf die Inhalte der Log-Tabelle eingegangen und das daraus resultierende Analysemodell für DeltaMaster besprochen. Zum Schluss sollen einige Beispielberichte und -analysen das Potential dieser Überwachungsanwendung aufzeigen. weiterlesen…

Kleine Helfer-Prozeduren zur Modelldokumentation

Wer hat beim Thema Projektdokumentation noch nie von Heinzelmännchen geträumt, die in der Nacht kommen und die noch nicht erledigte Arbeit blitzschnell erledigen? Da solche flinken Gesellen sehr selten sind, muss man nach Alternativen suchen. Helfen können einige Prozeduren, die sich im DeltaMasterModeler verstecken und auf den Namen “P_Model_Tool_Docu” hören.
Zu welcher Measuregroup gehört der Wert “Umsatz_Fix_Fokus”? Ist die Dimension “Geo” eine Attributdimension? In welcher Granularität werden die Dimensionen in welcher Measuregroup verwendet? Sobald man sich intensiv im DeltaMaster mit Planung, Reporting und Analyse beschäftigt, werden solche detaillierten Informationen über das Analysemodell benötigt. Guter Rat wird dann teuer – oder es gibt eine ausführliche, aktuelle Dokumentation, die solche Fragen beantwortet.
Im Folgenden wird gezeigt, wie in wenigen Schritten eine solche technische Dokumentation erstellt werden kann. weiterlesen…

DeltaMaster SQL-Durchgriff optimieren

Detailinformationen wie z.B. Rechnungsnummern oder Rechnungstexte gehören nicht in OLAP-Datenbanken. Die entstehenden Dimensionen würden sehr groß und unhandlich und sie würden das Analysemodell für Abfragen deutlich langsamer machen. Dennoch werden die Informationen bei Auswertungen gelegentlich benötigt. Sie werden daher relational in der Faktentabelle vorgehalten. Im DeltaMasterModeler lassen sich diese Spalten einfach als sogenannte „Info-Felder“ anlegen. Der Zugriff auf die Daten im DeltaMaster erfolgt dann über das Analysewerkzeug „SQL-Durchgriff“.
Probleme mit dem SQL-Durchgriff gibt es, wenn für die Benutzer in der OLAP-Datenbank ein Berechtigungskonzept hinterlegt ist oder wenn eine Tabelle in mehrere Partitionen aufgeteilt wird. Dieser Beitrag beschreibt, wie in wenigen Schritten auch der SQL-Durchgriff im DeltaMaster gesichert werden kann. Mit derselben Methode können auch partitionierte Faktentabellen einfacher für den Benutzer zugänglich gemacht werden. weiterlesen…

Ticketsystem für DeltaMaster-Projekte, Teil I

Während und vor allem nach definierten Projektphasen stellt sich die Frage, wie mit Ergänzungen, Korrekturen und Erweiterungen systematisch umgegangen werden soll. Oftmals werden Anforderungen, die von Kundenseite vorgebracht werden, per E-Mail verfasst und an das Projektteam versendet. Dort werden die Fälle gesammelt und am nächsten Projekttermin abgearbeitet. Häufig ist auch eine Excel-Liste vorhanden, die neue Anforderungen und Änderungswünsche auflistet. In beiden Fällen ist es schwierig, den Überblick zu behalten. Ein systematische Überwachung der Bearbeitung, der Bearbeitungsdauer sowie der -qualität ist hier kaum möglich. Er recht ist es schwierig, Prozessabläufe abzubilden und durch Zwangssteuerung über Workflows zu garantieren.
In diesem Beitrag wird ein Ticketsystem vorgestellt, dass auf Microsoft SQL Server aufsetzt und Delta-Master als Eingabefrontend nutzt. Damit ist es möglich, Anfragen zu erfassen und zu Kategorisieren; sie können priorisiert einem Bearbeiter zugewiesen werden. Eine Verfolgung des Bearbeitungsstatus ist jederzeit möglich und für alle sichtbar.
Im ersten Teil geht es um das Datenmodell, die Datenerfassung und die Steuerung der Arbeitsprozesses. Im zweiten Teil, der in einigen Wochen an dieser Stelle veröffentlicht wir, steht dann das Controlling dieser Anwendung im Vordergrund. weiterlesen…

Überwachung von Planungsanwendungen

Wer Microsoft SQL Server in produktiven Planungsanwendungen einsetzt, kennt solche Fragestellungen:
 Werden gerade Plandaten eingegeben? Wenn ja, von wem?
 Wie viele Datensätze werden je Dateneingabe erzeugt?
 Wie groß sind momentan die Rückschreibetabellen?
 Funktioniert der Rückverdichtungsprozess fehlerfrei?
 Wie groß sind die Archiv- und die Rückverdichtungstabellen?
In diesem Beitrag wird gezeigt, wie in einer DeltaMaster-Anwendung, die relational auf eine Systemtabelle des SQL-Servers zugreift und diese archiviert, diese Fragen beantwortet werden können. weiterlesen…

Vorgänger und Nachfolger

Schwer zu verarbeitende Quelldaten in ungünstigen Formaten wurden bereits mehrfach in diesem Blog diskutiert. Bei der Konvertierung von Excel-Kreuztabellen hilft ein kluges Tool, bei der Nutzung des PIVOT- und UNPIVOT-Operators reicht ein Befehl. Hier soll nun ein SQL-Statement präsentiert werden, welches bei der Suche von zeitlichen Vorgänger- und Nachfolgerdatensätzen wertvolle Dienste leistet. weiterlesen…

Kundenartikelbezeichnungen

In OLAP-Datenbanken beschreiben Attribute ein Dimensionselement näher. So kann z.B. einem Artikel eine Bezeichnung zugeordnet werden. In der Praxis gibt es die Anforderung, dass für Analysen und Berichte, die extern zur Verfügung gestellt werden (z.B. für Kunden), nicht die eigenen (Verkaufs-) Artikelnummern und Texte, sondern die individuellen (Einkaufs-) Nummern und Bezeichnungen des Kunden angezeigt werden sollen.
Um die Anforderung in einer OLAP-Datenbank zu erfüllen, müsste je Kunde ein Attribut in die Artikeldimension aufgenommen werden – bei einem großen und wachsenden Kundenstamm eine unlösbare Aufgabe. Dieser Artikel beschreibt eine einfache Lösung, wie die vorhandenen Bordmittel im DeltaMaster genutzt werden können, um für jeden Kunde dynamisch die richtigen Artikelattribute anzuzeigen. weiterlesen…

Historische Betrachtung von Bestandswerten

Im Beitrag „Bestandsbetrachtungen“ konnten wir schon erfahren, dass Bestandswerte in OLAP-Datenbanken eine besondere Modellierung erfordern. Darin wird beschrieben, wie in OLAP-Modellen ein aktueller Bestandswert berechnet und angezeigt werden kann. Doch interessiert den Betriebswirt nicht nur, wie hoch z.B. der aktuelle Auftragsbestand ist. Er benötigt, um die Größe einzuordnen und zu vergleichen, die historische Entwicklung dieses Wertes.
Gelegentlich ist eine Berechnung historischer Bestandswerte gar nicht möglich, weil die dafür notwendige Datenbasis im ERP-System nicht vorhanden ist. Im ersten Abschnitt wird daher beschrieben, wie man leicht selbst eine eigene Historie der Bestandsdaten aufbauen kann. Sind im ERP-System alle notwendigen Informationen zu einer Nachberechnung der historischen Bestandswerte vorhanden, kann die Bestandsgröße auch ohne eigene Datenhaltung berechnet werden. Ein Beispiel dazu findet sich im zweiten Abschnitt. weiterlesen…

DeltaMaster Lizenzmanagement

„Alle verfügbaren Lizenzen sind zur Zeit in Verwendung.“ Diesen Hinweis beim Programmstart von DeltaMaster ist sicherlich einigen Benutzern bekannt. Die vorhandenen Mehrbenutzerlizenzen sind von den Kollegen belegt, ein Programmstart ist somit nicht möglich.
Welche Abteilung nutzt DeltaMaster intensiv? In welcher Lizenzstufe (Miner/Pivotizer/Reader) werden Benutzer oft abgewiesen, weil zu wenige Lizenzen vorhanden sind? Diese und andere Fragestellungen über die Lizenznutzung der Softwaresuite DeltaMaster soll dieser Artikel klären, indem in vier Schritten beschrieben wird, wie die Lizenzbelegung aufgezeichnet und anschließend mit DeltaMaster ausgewertet werden kann.
Die einzelnen Schritte zeigen den manuellen Weg zur Lizenzauswertung. Im hier verfügbaren Download auf der Blog-Seite sind alle unten beschriebenen Vorgänge in einem Projektpaket zusammengefasst. Im letzten Abschnitt wird dieses Paket beschrieben. weiterlesen…

Export von OLAP-Daten in eine SQL-Tabelle

Der gewöhnliche Weg von betriebswirtschaftlichen Daten in BI-Anwendungen ist weitgehend be-kannt: Aus Vorsystemen werden Ist-Daten extrahiert, oftmals in relationalen Datenbanken zwischengespeichert, angereichert und verarbeitet. Danach werden die Daten in OLAP-Datenbanken importiert und den Anwendern für Analyse, Planung und Berichterstattung in einem Frontend (z.B. Bissantz DeltaMaster) bereitgestellt (vgl. Abbildung 1). In diesem Artikel wird nun beschrieben, wie, quasi entgegengesetzt, diese Daten wieder aus einer MS Analysis Services 2005/2008 (OLAP-)Datenbank über die OLE DB Schnittstelle direkt in eine MS SQL Server 2005/2008 Tabelle exportiert werden können. weiterlesen…