Mediane, Modi, Perzentile und OLAP


9

Ich bin ein Neuling, der versucht, meinen Kopf um OLAP zu wickeln, und ich habe ein paar Fragen.

  • Frage 1: Kann ein OLAP-Cube Mediane, Modi und Perzentile speichern?
  • Frage 2: Kann eine vom Benutzer geschriebene MDX-Abfrage eine Zusammenfassung der Daten auf Zeilenebene zurückgeben? (Beispiel:% Transaktionen> 100 USD). Oder muss der Würfel-Designer dies dem Würfel hinzufügen?
  • Frage 3: Bieten OLAP-Produkte jetzt Mechanismen für den Zugriff auf Daten auf Zeilenebene? Welche?

Unsere IT-Abteilung bittet um Feedback zu den Problemen, die wir mit einem bestimmten MS Analsis Services ROLAP-Cube haben. Wir haben keinen Zugriff auf die dahinter stehende relationale Datenbank und müssen Berechnungen durchführen, die derzeit nicht als Kennzahlen im Cube verfügbar sind.

Lassen Sie mich sehen, ob ich dieses Recht habe.

  1. Ein Würfel kann Statistiken für Anzahl, Mittelwert, Proportionen und Standardabweichungen liefern.
  2. Können wir eine MDX-Abfrage schreiben, um eine bestimmte Statistik in einer vom Cube-Designer bereitgestellten Kennzahl nicht zu berücksichtigen? Oder müssen sie den Cube ändern, um ihn aus den Daten auf Zeilenebene vorab zu berechnen?
  3. Ein Würfel kann keine Statistiken wie Mediane, Modi oder Perzentile bereitstellen, da diese Statistiken nicht richtig aggregieren.

Ich lese Leland Wilkinsons The Grammar of Graphics und in seinem Kapitel über Data Mining und OLAP, sagt er

Diese [Würfeloperationen] funktionieren gut mit Statistiken wie Zählungen, Mittelwerten, Proportionen und Standardabweichungen. Einfache Aggregationen über Unterklassen können berechnet werden, indem Summen, Quadratsummen und andere Begriffe verarbeitet werden, die in linearen Funktionen kombiniert werden, um grundlegende zusammenfassende Statistiken zu erstellen.

Sie funktionieren nicht richtig mit Statistiken wie Median, Modus und Perzentilen, da das Aggregat dieser Statistiken nicht die Statistik ihrer Aggregate ist. Der Median der Mediane ist beispielsweise nicht der Median des Aggregats.

Er fügt hinzu:

In letzter Zeit ist jedoch ein komplexeres ROLAP-Modell entstanden. Durch verschiedene Technologien ist es möglich, statistischen Algorithmen über das relationale Modell in Echtzeit Zugriff auf Rohdaten zu gewähren. Dieser Ansatz ist vielversprechender als die starren Aggregationen, die Strukturen wie Datenwürfel bieten.

In der elegantesten Form dieser Architektur können Anwendungen Remoteverbindungen anfordern, um Informationen zu ihren Datenverarbeitungsmethoden bereitzustellen und abhängig von den zurückgegebenen Informationen geeignete Maßnahmen zu ergreifen. In dieser Form kann die Komponentenarchitektur das wahre Versprechen des verteilten Rechnens erfüllen: Design und Ausführung, die unabhängig von Standort, Betriebssystem oder Sprache sind.

Das wurde um 2005 geschrieben. Ist jemandem bekannt, dass Produkte diese Methode verwenden, um Datenzugriff auf Zeilenebene zu ermöglichen?


1
Keine Abnehmer? Irgendwelche Vorschläge, wie man die Frage verbessern kann, um eine Antwort zu erhalten?
Tommy O'Dell

Antworten:


5

So beantworten Sie Ihre Fragen in der Reihenfolge:

  1. Der Cube speichert keine Mediane, Modi (oder sogar Durchschnittswerte), aber Sie können Abfragen schreiben, die sie berechnen, und sie als berechnete Kennzahlen in den Cube einbetten. Die Möglichkeit, diese Art der Berechnung einzubetten, ist eines der wichtigsten Alleinstellungsmerkmale der OLAP-Technologie.
  2. Wenn Sie eine Dimension haben, die einzelne Zeilen identifizieren kann (dies kann eine entartete oder 'Fakt'-Dimension sein, die von einem Bezeichner in der Faktentabelle abgeleitet ist), können Sie eine Abfrage basierend auf einzelnen Zeilen durchführen. OLAP funktioniert jedoch in Bezug auf Dimensionen und Aggregate. Daher benötigen Sie eine Dimension, mit der einzelne Zeilen identifiziert werden können (wobei ein Aggregat aus einem Wert besteht).
  3. Jedes OLAP-Tool kann das tun, was in (2) beschrieben ist, und es unterstützt im Allgemeinen einen Mechanismus, der als "Drillthrough" bezeichnet wird, bei dem der Cube ein Bordereaux der Transaktionsdaten zurückgibt, die einem bestimmten Slice zugrunde liegen, in das Sie einen Drillthrough durchführen.

Wenn Sie Berechnungen durchführen möchten, die nicht direkt im Cube-Skript verfügbar sind, können Sie mit vielen OLAP-Tools wie dem späten, beklagten ProClarity Abfragen mit benutzerdefinierten MDX-basierten Berechnungen formulieren. Sofern der Cube nicht über die Informationen verfügt, die Sie für die eigentlichen Berechnungen benötigen, sollten die benutzerdefinierten MDX-Berechnungen alle erforderlichen Berechnungen unterstützen können.

Obwohl OLAP-Abfragen traditionell mit statistischen Abfragen in ihrer Gesamtheit verknüpft sind, ist es bei einer Dimension, die einen Drilldown bis ins Detail ermöglicht, durchaus möglich, Abfragen zu formulieren, mit denen Mediane, Perzentile oder Histogrammabfragen berechnet werden, aus denen Modi abgeleitet oder berechnet werden können.

Dies ist beispielsweise ein Beispiel für eine Pareto-Analyse- Abfrage, die auf Rankings basiert.

Viele Cube-Produkte können in einem hybriden oder relationalen OLAP-Modus betrieben werden, in dem die Daten nicht selbst gespeichert, sondern aus einer zugrunde liegenden Datenbank abgefragt werden. Darüber hinaus können reine ROLAP-Tools wie Business Objects, Report Builder oder Discoverer aus einer zugrunde liegenden Datenbank abfragen und zeilenweise arbeiten. Es fehlt ihnen jedoch in der Regel die Raffinesse dedizierter OLAP-Produkte, und sie verfügen nicht über zahlreiche statistische Analysefunktionen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.