Freigeben über


Definieren von Dimensionsgranularität innerhalb einer Measuregruppe

Benutzer möchten die Möglichkeit bekommen, Faktendaten mit einer anderen Granularität oder Spezifizierung für andere Zwecke zu dimensionieren. Verkaufsdaten für Händler- oder Internetverkäufe können z. B. für jeden Tag aufgezeichnet werden, wogegen Sollvorgaben für den Verkauf möglicherweise nur auf Monats- oder Quartalsebene vorhanden sind. In diesen Szenarios möchten Benutzer eine Time-Dimension mit einer anderen oder detaillierteren Auflösung für jede dieser verschiedenen Faktentabellen verwenden. Sie könnten zwar eine neue Datenbankdimension als Time-Dimension mit dieser anderen Auflösung definieren, doch bietet Microsoft SQL Server 2005 Analysis Services (SSAS) eine einfachere Lösung.

Wenn eine Dimension in einer Measuregruppe verwendet wird, basiert in SQL Server 2005 Analysis Services die Auflösung der Daten in dieser Dimension standardmäßig auf dem Schlüsselattribut der Dimension. Wenn beispielsweise eine Zeitdimension in einer Measuregruppe enthalten und die Standardauflösung der Zeitdimension täglich ist, ist die Standardauflösung der Dimension innerhalb der Measuregruppe täglich. Dies ist häufig angemessen, wie z. B. für die Measuregruppen Internet Sales und Reseller Sales in diesem Lernprogramm. Wenn allerdings solch eine Dimension in anderen Typen von Measuregruppen eingeschlossen wird (beispielsweise Vorgaben für den Verkauf oder Budget-Measuregruppe), ist eine monatliche oder vierteljährliche Auflösung angemessener.

Wenn Sie eine andere als die standardmäßige Auflösung für eine Cubedimension angeben möchten, ändern Sie das Granularitätsattribut für eine innerhalb einer bestimmten Measuregruppe verwendete Cubedimension auf der Registerkarte Dimensionsverwendung des Cube-Designers. Wenn Sie die Auflösung einer Dimension innerhalb einer bestimmten Measuregruppe zu einem anderen Attribut als dem Schlüsselattribut für diese Dimension ändern, müssen Sie sicherstellen, dass alle anderen Attribute in dieser Measuregruppe direkt oder indirekt mit dem neuen Granularitätsattribut verknüpft sind. Geben Sie dazu Attributbeziehungen zwischen allen anderen Attributen und dem Attribut an, das als Granularitätsattribut in der Measuregruppe angegeben ist. In diesem Fall definieren Sie zusätzliche Attributbeziehungen, anstatt Attributbeziehungen zu verschieben. Das als Granularitätsattribut angegebene Attribut wird effektiv zum Schlüsselattribut innerhalb der Measuregruppe für die verbleibenden Attribute in der Dimension. Wenn Sie Attributbeziehungen nicht entsprechend angeben, können von Analysis Services Werte nicht ordnungsgemäß aggregiert werden. Darauf wird in den Aufgaben in diesem Thema genau eingegangen.

Weitere Informationen finden Sie unter Dimensionsbeziehungen und Definieren einer regulären Beziehung und von Eigenschaften einer regulären Beziehung.

In den Aufgaben in diesem Thema fügen Sie eine Sales Quota-Measuregruppe hinzu und definieren die Granularität der Time-Dimension in dieser Measuregruppe als monatlich. Sie definieren dann Attributbeziehungen zwischen dem Monatsattribut und anderen Dimensionsattributen, um sicherzustellen, dass von Analysis Services Werte ordnungsgemäß aggregiert werden.

Hinzufügen von Tabellen und Definieren der Sales Quota-Measuregruppe

So fügen Sie Tabellen hinzu und definieren die Sales Quota-Measuregruppe

  1. Wechseln Sie zum Datenquellensicht-Designer für die Adventure Works DW-Datenquellensicht.

  2. Klicken Sie mit der rechten Maustaste an eine beliebige Stelle im Diagrammplaner-Bereich, klicken Sie auf Neues Diagramm, und geben Sie dann Sales Quotas als Namen für das neue Diagramm an. Weitere Informationen finden Sie unter Verwenden von Diagrammen in einer Datenquellensicht (Analysis Services).

  3. Ziehen Sie die Tabellen Employee, Sales Territory und Time aus dem Tabellen- in den Diagramm-Bereich.

  4. Fügen Sie die FactSalesQuota-Tabelle zum Diagramm-Bereich hinzu, indem Sie mit der rechten Maustaste auf eine beliebige Stelle im Diagramm-Bereich klicken und dann Tabellen hinzufügen/entfernen auswählen.

    Beachten Sie, dass die SalesTerritory-Tabelle über die Employee-Tabelle mit der FactSalesQuota-Tabelle verknüpft ist.

  5. Überprüfen Sie die Spalten in der FactSalesQuota-Tabelle, und sehen Sie sich dann die Daten in dieser Tabelle an.

    Beachten Sie, dass die Auflösung der Daten innerhalb dieser Tabelle das Kalenderquartal ist, also die niedrigste Detailebene in der FactSalesQuota-Tabelle.

  6. Ändern Sie im Datenquellensicht-Designer die FriendlyName-Eigenschaft der FactSalesQuota-Tabelle zu SalesQuotas.

  7. Wechseln Sie zum Cube-Designer für den Analysis Services Tutorial-Cube, und klicken Sie dann auf die Registerkarte Cubestruktur.

  8. Klicken Sie mit der rechten Maustaste an eine beliebige Stelle im Measures-Bereich, klicken Sie auf Neue Measuregruppe, klicken Sie auf SalesQuotas im Dialogfeld Neue Measuregruppe, und klicken Sie dann auf OK.

    Die Sales Quotas-Measuregruppe wird im Measures-Bereich angezeigt. Beachten Sie im Dimensionen-Bereich, dass auch eine neue Time-Cubedimension definiert ist, die auf der Time-Datenbankdimension basiert. Eine neue zeitbezogene Cubedimension wird definiert, weil für Analysis Services unbekannt ist, welche der vorhandenen zeitbezogenen Cubedimensionen mit der TimeKey-Spalte in der FactSalesQuota-Faktentabelle verknüpft werden sollen, die der Sales Quotas-Measuregruppe zugrunde liegen. Sie ändern dies später in einer anderen Aufgabe in diesem Thema.

  9. Erweitern Sie die Sales Quotas-Measuregruppe.

    Beachten Sie, dass drei neue Measures definiert sind.

  10. Wählen Sie im Measures-Bereich Sales Amount Quota aus, und legen Sie dann im Eigenschaftenfenster den Wert für die FormatString-Eigenschaft auf Currency fest.

  11. Wählen Sie das Sales Quotas Count-Measure aus, und legen Sie dann im Eigenschaftenfenster den Wert für die FormatString-Eigenschaft auf #,# fest.

  12. Löschen Sie das Calendar Quarter-Measure aus der Sales Quotas-Measuregruppe.

    Von Analysis Services wurde die dem Calendar Quarter-Measure zugrunde liegende Spalte als Spalte festgestellt, die Measures enthält. Diese Spalte und die CalendarYear-Spalte enthalten allerdings die Werte, die Sie zum Verknüpfen der Sales Quotas-Mesuregruppe mit der Time-Dimension später in diesem Thema verwenden werden.

  13. Klicken Sie im Measures-Bereich mit der rechten Maustaste auf die Sales Quotas-Measuregruppe, und klicken Sie dann auf Neues Measure. Weitere Informationen finden Sie unter Definieren und Konfigurieren eines Measures.

    Das Dialogfeld Neues Measure wird geöffnet, das die verfügbaren Quellenspalten für ein Measure mit dem Verwendungstyp Summe enthält.

  14. Wählen Sie im Dialogfeld Neues MeasureDistinct count in der Verwendung-Liste aus, überprüfen Sie, ob SalesQuotas in der Liste Quelltabelle ausgewählt ist, wählen Sie EmployeeKey in der Liste Quelltabelle aus, und klicken Sie dann auf OK.

    Beachten Sie, dass das neue Measure in einer neuen Measuregruppe namens Sales Quotas 1 erstellt wird. Distinct count-Measures in Microsoft SQL Server 2005 werden in ihren eigenen Measuregruppen erstellt, um die Verarbeitungsleistung zu optimieren.

  15. Ändern Sie die Name-Eigenschaft für das Employee Key Distinct Count-Measure zu Sales Person Count, und legen Sie dann den Wert für die FormatString-Eigenschaft auf #,# fest.

Durchsuchen der Measures in der Sales Quota-Measuregruppe nach Zeit

So durchsuchen Sie die Measures in der Sales Quota-Measuregruppe nach Zeit

  1. Klicken Sie im Menü Erstellen auf Analysis Services Tutorial bereitstellen.

  2. Klicken Sie nach dem erfolgreichen Abschluss der Bereitstellung auf die Registerkarte Browser im Cube-Designer für den Analysis Services Tutorial-Cube, und klicken Sie dann auf Verbindung wiederherstellen.

  3. Löschen Sie alle Hierarchien und Measures aus dem Daten-Bereich, und löschen Sie dann das Dimensionselement aus dem Filter-Bereich.

  4. Erweitern Sie die Sales Quotas-Measuregruppe im Metadaten-Bereich, und fügen Sie dann das Sales Amount Quota-Measure zum Datenbereich hinzu.

  5. Fügen Sie dem Spaltenbereich die benutzerdefinierte Sales Territories-Hierarchie in der Sales Territory-Dimension hinzu.

    Beachten Sie, dass die Sales Territory-Cubedimension weder direkt noch indirekt mit der Fact Sales Quota-Tabelle verknüpft ist, wie im folgenden Bild zu sehen.

    Sales Territory-Cubedimension

    In der nächsten Aufgabe in diesem Thema definieren Sie eine Referenzdimensionsbeziehung zwischen dieser Dimension und dieser Faktentabelle.

  6. Klicken Sie im Bereich Daten auf den Pfeil nach unten neben Sales Territory Group, und deaktivieren Sie dann alle Kontrollkästchen bis auf North America, um die Dimensionselemente, die in Sales Territory Group angezeigt werden, in North America zu ändern.

  7. Erweitern Sie im Metadaten-Bereich Time, und erweitern Sie dann Fiscal.

  8. Fügen Sie die Time.Fiscal Time-Benutzerhierarchie zum Zeilenbereich hinzu, klicken Sie dann auf den Pfeil nach unten neben Geschäftsjahr im Daten-Bereich, und deaktivieren Sie alle Kontrollkästchen bis auf FY 2004, um nur das Geschäftsjahr 2004 anzuzeigen.

  9. Erweitern Sie im Daten-Bereich FY 2004, erweitern Sie H1 FY 2004, erweitern Sie Q1 FY 2004, und erweitern Sie dann July 2003.

    Anstelle der Elemente July, 2003, August, 2003 und September, 2003 der Month-Ebene wird nur das Element July 2003 der Month-Ebene angezeigt, und anstelle aller 31 Tage wird nur das Element July 1, 2003 der Date-Ebene angezeigt. Zu diesem Verhalten kommt es, weil die Auflösung der Daten in der Faktentabelle auf der Quartalsebene und die Auflösung der Time-Dimension auf der täglichen Ebene liegt. Sie ändern dieses Verhalten später in der nächsten Aufgabe in diesem Thema.

    Beachten Sie auch, dass der Wert von Sales Amount Quota für die Monats- und Tagesebenen derselbe Wert wie für die Quartalsebene ist, nämlich $13,733,000.00. Dies liegt daran, dass sich die unterste Ebene der Daten in der Sales Quotas-Measuregruppe auf der Quartalsebene befindet. Sie ändern dieses Verhalten in Lektion 6.

    Das folgende Bild zeigt die Werte für Sales Amount Quota.

    Werte für Sales Amount Quota

Definieren der Dimensionsverwendungseigenschaft für die Sales Quotas-Measuregruppe

So definieren Sie die Dimensionsverwendungseigenschaften für die Sales Quotas-Measuregruppe

  1. Öffnen Sie den Dimensions-Designer für die Employee-Dimension, und fügen Sie dann das SalesTerritoryKey-Attribut basierend auf der SalesTerritoryKey-Spalte in der Employee-Tabelle als ausgeblendetes, nicht optimiertes und nicht sortiertes Attribut hinzu.

    Dieses Attribut muss die Sales Territory-Dimension mit den Sales Quotas- und Sales Quotas 1-Measuregruppen als referenzierte Dimension verknüpfen.

  2. Klicken Sie im Cube-Designer für den Analysis Services Tutorial-Cube auf die Registerkarte Dimensionsverwendung, und überprüfen Sie dann die Dimensionsverwendung innerhalb der Sales Quotas- und Sales Quotas 1-Measuregruppen.

    Beachten Sie, dass die Employee- und Time-Cubedimensionen mit den Sales Quotas- und Sales Quotas 1-Measuregruppen durch reguläre Beziehungen verknüpft sind. Beachten Sie außerdem, dass die Sales Territory-Cubedimension mit keiner dieser Measuregruppen verknüpft ist.

  3. Definieren Sie eine materialisierte referenzierte Beziehung zwischen der Sales Territory-Dimension und der Sales Quotas-Measuregruppe, wobei Employee als die Zwischendimension angegeben wird, Sales Territory Region als das Referenzdimensionsattribut und SalesTerritoryKey als das Zwischendimensionsattribut. (Die Schlüsselspalte für das Sales Territory Region-Attribut ist die SalesTerritoryKey-Spalte.)

  4. Wiederholen Sie den vorhergehenden Schritt für die Sales Quotas 1-Measuregruppe.

  5. Löschen Sie die Time-Cubedimension.

    Anstatt über vier zeitbezogene Cubedimensionen zu verfügen, verwenden Sie die Order Date-Cubedimension in der Sales Quotas-Measuregruppe als die Daten, gegen die Verkaufsvorgaben dimensioniert werden. Sie werden diese Cubedimension auch als die primäre Datendimension im Cube verwenden.

  6. Benennen Sie in der Dimensionen-Liste die Time (Order Date)-Cubedimension in Time (Date) um.

    Durch das Umbenennen der Order Date-Cubedimension in Date wird ihre Rolle als primäre Datendimension in diesem Cube für Benutzer leichter verständlich.

  7. Klicken Sie auf die Schaltfläche mit den drei Punkten () in der Zelle am Schnittpunkt der Sales Quotas-Measuregruppe und der Time (Date)-Dimension.

  8. Wählen Sie im Dialogfeld Beziehung definieren in der Beziehungstyp auswählen-Liste Regulär aus.

  9. Wählen Sie in der Granularitätsattribut-Liste Calendar Quarter aus.

    Beachten Sie, dass eine Warnung angezeigt wird, die Sie darauf hinweist, dass, weil Sie ein Nicht-Schlüssel-Attribut als Granularitätsattribut ausgewählt haben, Sie sicherstellen müssen, dass alle anderen Attribute direkt oder indirekt mit dem Granularitätsattribut verknüpft sein müssen, indem Sie als Elementeigenschaften angegeben werden.

    Das folgende Bild zeigt das Dialogfeld Beziehung definieren.

    Beziehung definieren (Dialogfeld)

  10. Verknüpfen Sie im Beziehung-Bereich des Dialogfeldes Beziehung definieren die Dimensionsspalten CalendarYear und CalendarQuarter aus der der Time (Date)-Cubedimension zugrunde liegenden Tabelle mit den CalendarYear- und CalendarQuarter-Spalten in der der Sales Quota-Measuregruppe zugrunde liegenden Tabelle, und klicken Sie dann auf OK.

    ms166573.note(de-de,SQL.90).gifHinweis:
    Calendar Quarter ist als Granularitätsattribut für die Time (Date)-Cubedimension in der Sales Quotas-Measuregruppe definiert, das Date-Attribut ist aber weiterhin das Granularitätsattribut für die Measuregruppen Internet Sales und Reseller Sales.
  11. Wiederholen Sie die vorhergehenden vier Schritte für die Sales Quotas 1-Measuregruppe.

    Das folgende Bild zeigt Calendar Quarter als das definierte Granularitätsattribut für die Time (Date)-Cubedimension für die Measuregruppen Sales Quotas und Sales Quotas 1.

    Calendar Quarter als Granularitätsattribut definiert

Definieren von Attributbeziehungen zwischen dem Calendar Quarter-Attribut und den anderen Dimensionsattributen in der Time-Dimension

So definieren Sie Attributbeziehungen zwischen dem Calendar Quarter-Attribut und den anderen Dimensionsattributen in der Time-Dimension

  1. Wechseln Sie zum Dimensions-Designer für die Time-Dimension, und klicken Sie dann auf die Registerkarte Dimensionsstruktur.

  2. Erweitern Sie im Attribute-Bereich die folgenden Attribute:

    • Calendar Quarter
    • Calendar Semester
    • Fiscal Quarter
    • Fiscal Semester

    Beachten Sie, dass, obwohl Calendar Year mit Calendar Quarter durch das Calendar Semester-Attribut verknüpft ist, die Fiscal-Kalenderattribute nur miteinander verknüpft sind. Sie sind nicht mit dem Calendar Quarter-Attribut verknüpft und werden deshalb nicht ordnungsgemäß in der Sales Quotas-Measuregruppe aggregiert.

  3. Ziehen Sie das Fiscal Quarter-Attribut zum <new attribute relationship>-Tag für das Calendar Quarter-Attribut.

    Es wird eine Warnmeldung angezeigt, die besagt, dass die Time-Dimension eine oder mehrere redundante Attributbeziehungen enthält, die möglicherweise das Aggregieren der Daten verhindern, wenn ein Nichtschlüsselattribut als Granularitätsattribut verwendet wird. In der Warnung wird vorgeschlagen, dass die Fiscal Quarter-Attributbeziehung zum Month Name-Attribut nicht erforderlich ist.

  4. Löschen Sie die Fiscal Quarter-Attributbeziehung zum Month Name-Attribut.

    Die vorherige Warnung wird nicht mehr angezeigt.

Durchsuchen der Measures in der Sales Quota-Measuregruppe nach Zeit

So durchsuchen Sie die Measures in der Sales Quota-Measuregruppe nach Zeit

  1. Klicken Sie im Menü Erstellen auf Analysis Services Tutorial bereitstellen.

  2. Klicken Sie nach dem erfolgreichen Abschluss der Bereitstellung auf die Registerkarte Browser im Cube-Designer für den Analysis Services Tutorial-Cube, und klicken Sie dann auf Verbindung wiederherstellen.

    Beachten Sie, dass das Sales Amount Quota-Measure ordnungsgemäß durch Sales Territory dimensioniert ist, weil die Sales Territory-Dimension jetzt als referenzierte Dimension definiert ist.

  3. Fügen Sie die Date.FiscalTime-Benutzerhierarchie aus der Date-Cubedimension zum Zeilenbereich hinzu, klicken Sie dann auf den Pfeil nach unten neben Geschäftsjahr, und deaktivieren Sie alle Kontrollkästchen bis auf FY 2004, um nur das Geschäftsjahr 2004 anzuzeigen.

  4. Klicken Sie auf OK.

  5. Erweitern Sie FY 2004, erweitern Sie H1 FY 2004, und erweitern Sie dann Q1 FY 2004.

    Beachten Sie, dass die Measures in der Sales Quotas-Measuregruppe ordnungsgemäß dimensioniert sind. Beachten Sie ebenfalls, dass alle Elemente der Geschäftsquartalsebene angezeigt werden, wobei der Wert für jedes Element der Wert der Quartalsebene ist. Zu diesem Verhalten kommt es, weil die Auflösung der Daten in der Faktentabelle auf der Quartalsebene und die Auflösung der Time-Dimension auch auf der Quartalsebene liegt. In Lektion 6 lernen Sie, wie die Quartalssumme proportional zu jedem Monat zugeordnet wird.

    Das folgende Bild zeigt Cube-Designer für den Analysis Services Tutorial-Cube mit der ordnungsgemäß dimensionierten Sales Quota-Measuregruppe.

    Ordnungsgemäß dimensionierte Sales Quota-Measuregruppe

ms166573.note(de-de,SQL.90).gifHinweis:
Durch Downloaden und Installieren der aktualisierten Beispiele ist in Lektion 5 ein abgeschlossenes Projekt verfügbar. Weitere Informationen finden Sie unter "Abrufen von aktualisierten Beispielen" in Installieren von Beispielen.

Nächste Lektion

Lektion 6: Definieren von Berechnungen

Siehe auch

Andere Ressourcen

Dimensionsbeziehungen
Definieren einer regulären Beziehung und von Eigenschaften einer regulären Beziehung

Hilfe und Informationen

Informationsquellen für SQL Server 2005