Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In Lektion 3 haben Sie gelernt, wie Sie Attributmitglieder basierend auf deren Namen oder Schlüsselwert sortieren. Außerdem haben Sie erfahren, wie Sie einen zusammengesetzten Schlüsselkombination verwenden, um Attributmitglieder und die Sortierreihenfolge zu beeinflussen. Weitere Informationen finden Sie unter Ändern der Datumsdimension. Wenn jedoch weder der Name noch der Schlüssel des Attributs die gewünschte Sortierreihenfolge bereitstellen, können Sie ein sekundäres Attribut verwenden, um die gewünschte Sortierreihenfolge zu erzielen. Durch Definieren einer Beziehung zwischen den Attributen können Sie das zweite Attribut verwenden, um die Member des ersten Attributs zu sortieren.
Attributbeziehungen definieren die Beziehungen oder Abhängigkeiten zwischen Attributen. In einer Dimension, die auf einer einzelnen relationalen Tabelle basiert, sind alle Attribute in der Regel über das Schlüsselattribute miteinander verknüpft. Dies liegt daran, dass alle Attribute für eine Dimension Informationen zu den Elementen bereitstellen, die durch das Schlüsselattribute der Dimension mit den Fakten in der Faktentabelle für jede verwandte Measuregruppe verknüpft sind. In einer Dimension, die auf mehreren Tabellen basiert, werden Attribute in der Regel basierend auf dem Verknüpfungsschlüssel zwischen den Tabellen verknüpft. Wenn die zugrunde liegenden Daten dies unterstützen, können verwandte Attribute verwendet werden, um eine Sortierreihenfolge anzugeben. Sie können beispielsweise ein neues Attribut erstellen, das die Sortierlogik für ein verwandtes Attribut bereitstellt.
Mit Dimension Designer können Sie zusätzliche Beziehungen zwischen Attributen definieren oder die Standardbeziehungen ändern, um die Leistung zu erhöhen. Die Haupteinschränkung beim Erstellen einer Attributbeziehung besteht darin, sicherzustellen, dass das attribut, auf das verwiesen wird, nicht mehr als einen Wert für ein Element im Attribut aufweist, mit dem es verknüpft ist. Wenn Sie eine Beziehung zwischen zwei Attributen definieren, können Sie die Beziehung als starr oder flexibel definieren, je nachdem, ob sich die Beziehungen zwischen Elementen im Laufe der Zeit ändern. Beispielsweise kann ein Mitarbeiter zu einer anderen Vertriebsregion wechseln, aber eine Stadt wird nicht in einen anderen Staat verschoben. Wenn eine Beziehung als starr definiert ist, werden Attributaggregationen nicht jedes Mal neu berechnet, wenn die Dimension inkrementell verarbeitet wird. Wenn sich die Beziehung zwischen Mitgliedern ändert, muss die Dimension jedoch vollständig verarbeitet werden. Weitere Informationen finden Sie unter Attributbeziehungen, Definieren von Attributbeziehungen, Konfigurieren von Attributbeziehungseigenschaften und Angeben von Attributbeziehungen zwischen Attributen in einer User-Defined Hierarchie.
In den Aufgaben in diesem Thema definieren Sie ein neues Attribut in der Dimension "Datum " basierend auf einer vorhandenen Spalte in der zugrunde liegenden Dimensionstabelle. Sie verwenden dieses neue Attribut, um Kalendermonatsmitglieder chronologisch und nicht alphabetisch zu sortieren. Außerdem definieren Sie ein neues Attribut in der Dimension "Customer " basierend auf der benannten Berechnung, mit der Sie die Elemente des Attributs "Pendlerdistanz " sortieren. In den Aufgaben im nächsten Thema erfahren Sie, wie Sie Attributbeziehungen verwenden, um die Abfrageleistung zu erhöhen.
Definieren einer Attributbeziehung und Sortierreihenfolge in der Datumsdimension
** Öffnen Sie den Dimension Designer für die Datumsdimension, und überprüfen Sie die Eigenschaft OrderBy für das Attribut Monatsname im Eigenschaftenfenster.
Beachten Sie, dass die Member des Month Name-Attributs nach ihren Schlüsselwerten sortiert werden.
Wechseln Sie zur Registerkarte "Browser ", vergewissern Sie sich, dass das Kalenderdatum in der Hierarchieliste ausgewählt ist, und erweitern Sie dann die Ebenen in der benutzerdefinierten Hierarchie, um die Sortierreihenfolge für die Kalendermonate zu überprüfen.
Beachten Sie, dass die Elemente der Attributhierarchie basierend auf den ASCII-Werten ihrer Memberschlüssel sortiert werden, die Monat und Jahr sind. In diesem Fall sortiert die Sortierung nach dem Attributnamen oder Schlüssel die Kalendermonate nicht chronologisch. Um dies zu lösen, sortieren Sie die Elemente der Attributhierarchie basierend auf einem neuen Attribut, dem MonthNumberOfYear-Attribut . Sie erstellen dieses Attribut basierend auf einer Spalte, die bequem in der Dimensionstabelle "Datum " vorhanden ist.
Wechseln Sie zur Registerkarte "Bemaßungsstruktur" für die Dimension "Datum", klicken Sie im Bereich "Datenquellenansicht" mit der rechten Maustaste auf "MonthNumberOfYear", und klicken Sie dann auf "Neues Attribut aus Spalte".
Wählen Sie im Bereich "Attribute " die Option "Monatszahl des Jahres" aus, und legen Sie dann die Eigenschaft "AttributeHierarchyEnabled" im Eigenschaftenfenster auf "False " fest, legen Sie die Eigenschaft "AttributeHierarchyOptimizedState " auf "NotOptimized" fest, und legen Sie die Eigenschaft "AttributeHierarchyOrdered" auf "False" fest.
Diese Einstellungen blenden das Attribut vor Benutzern aus und verbessern die Bearbeitungszeit. Dieses Attribut wird nicht zum Browsen verwendet. Es wird nur zum Sortieren der Mitglieder eines anderen Attributs verwendet.
Hinweis
Das Sortieren von Eigenschaften im Eigenschaftenfenster vereinfacht diese Aufgabe alphabetisch, da diese drei Eigenschaften nebeneinander sortiert werden.
Klicken Sie auf die Registerkarte "Attributbeziehungen" .
Beachten Sie, dass alle Attribute in der Date-Dimension direkt mit dem Date-Attribut verknüpft sind, was der Memberschlüssel ist, der die Dimensionsmember auf die Fakten in den zugehörigen Messgruppen bezieht. Es gibt keine Beziehung zwischen dem Attribut "Month Name " und dem Attribut "Month Number Of Year ".
Klicken Sie im Diagramm mit der rechten Maustaste auf das Attribut "Monatsname ", und wählen Sie dann "Neue Attributbeziehung" aus.
Im Dialogfeld "Attributbeziehung erstellen " lautet der Name des Quellattributes"Monat". Legen Sie das zugehörige Attribut auf "Monatszahl des Jahres" fest.
Legen Sie in der Liste Beziehungstyp den Beziehungstyp auf Starr fest.
Die Beziehungen zwischen den Mitgliedern des Attributs "Month Name " und dem Attribut "Month Number Of Year " werden im Laufe der Zeit nicht geändert. Daher wird Analysis Services während der inkrementellen Verarbeitung keine Aggregationen für diese Beziehung entfernen. Wenn eine Änderung auftritt, tritt während der inkrementellen Verarbeitung ein Verarbeitungsfehler auf, und Sie müssen einen vollständigen Prozess der Dimension ausführen. Jetzt können Sie die Sortierreihenfolge für die Mitglieder des Monatsnamens festlegen.
Klicke auf OK.
Klicken Sie auf die Registerkarte " Bemaßungsstruktur ".
Wählen Sie im Bereich "Attribute" den Monatsnamen aus, und ändern Sie dann den Wert der OrderBy-Eigenschaft im Eigenschaftenfenster in "AttributeKey", und ändern Sie den Wert der OrderByAttribute-Eigenschaft in "Monatszahl des Jahres".
Klicken Sie im Menü " Erstellen " auf "Lernprogramm für Analysis Services bereitstellen".
Wenn die Bereitstellung erfolgreich abgeschlossen wurde, wechseln Sie zur Registerkarte "Browser " für die Dimension "Datum", klicken Sie auf " Erneut verbinden", und durchsuchen Sie dann die Benutzerhierarchien "Kalenderdatum" und " Geschäftsdatum ", um zu überprüfen, ob Monate jetzt chronologisch sortiert werden.
Beachten Sie, dass die Monate jetzt in chronologischer Reihenfolge sortiert sind, wie in der folgenden Abbildung dargestellt.
Geänderte Benutzerhierarchie in chronologischer Reihenfolge
Definieren von Attributbeziehungen und Sortierreihenfolge in der Kundendimension
Wechseln Sie zur Registerkarte „Browser“ im Bemaßungs-Designer für die Kundendimension, und durchsuchen Sie dann die Mitglieder der Attributhierarchie „Commute Distance“.
Beachten Sie, dass die Elemente dieser Attributhierarchie basierend auf den ASCII-Werten des Memberschlüssels sortiert werden. In diesem Fall ordnet die Sortierung nach Attributname oder Schlüssel nicht die Entfernungen von der kürzesten zur längsten. In dieser Aufgabe sortieren Sie die Elemente der Attributhierarchie basierend auf der benannten Berechnung "CommuteDistanceSort ", die die entsprechende Sortiernummer jedem einzelnen Wert in der Spalte zugeschrieben. Um Zeit zu sparen, wurde diese benannte Berechnung bereits der Tabelle "Kunde " in der Datenquellenansicht "Adventure Works DW" hinzugefügt. Sie können zu dieser Datenquellenansicht wechseln, um das SQL-Skript anzuzeigen, das in dieser benannten Berechnung verwendet wird. Weitere Informationen finden Sie unter Definieren benannter Berechnungen in einer Datenquellenansicht (Analysis Services).
Die folgende Abbildung zeigt die Mitglieder der Commute Distance-Attributhierarchie, sortiert nach den ASCII-Werten des Mitgliederschlüssels.
Wechseln Sie zur Registerkarte Dimensionstruktur im Dimensions-Designer für die Kundendimension, klicken Sie mit der rechten Maustaste auf PendeldistanzSort in der Tabelle Customer im Bereich Datenquellenansicht, und klicken Sie dann auf Neues Attribut aus Spalte.
Wählen Sie im Bereich Attribute die Option Commute Distance Sort aus, und legen Sie dann die AttributHierarchyEnabled-Eigenschaft für dieses Attribut im Eigenschaftenfenster auf False fest, legen Sie die Eigenschaft AttributeHierarchyOptimizedState auf NotOptimized fest, und legen Sie die Eigenschaft AttributeHierarchyOrdered auf False fest.
Diese Einstellungen werden das Attribut vor Benutzern ausblenden und die Verarbeitungszeit optimieren. Dieses Attribut wird nicht zum Browsen verwendet. Es wird nur zum Sortieren der Mitglieder eines anderen Attributs verwendet.
Wählen Sie Geography aus, und legen Sie dann im Eigenschaftenfenster die Eigenschaft AttributeHierarchyVisible auf False fest, legen Sie die Eigenschaft AttributeHierarchyOptimizedState auf NotOptimized fest, und legen Sie die Eigenschaft AttributeHierarchyOrdered auf False fest.
Diese Einstellungen blenden das Attribut vor Benutzern aus und verbessern die Bearbeitungszeit. Dieses Attribut wird nicht zum Browsen verwendet. Es wird nur zum Sortieren der Mitglieder eines anderen Attributs verwendet. Da Geography Membereigenschaften aufweist, muss die AttributHierarchyEnabled-Eigenschaft auf "True" festgelegt werden. Um das Attribut auszublenden, legen Sie daher die AttributHierarchyVisible-Eigenschaft auf False fest.
Klicken Sie auf die Registerkarte "Attributbeziehungen" .
Klicken Sie in der Attributliste mit der rechten Maustaste auf das Attribut " Pendlerdistanz ", und wählen Sie dann "Neue Attributbeziehung" aus.
Im Dialogfeld Attributbeziehung erstellen ist das QuellattributArbeitswegentfernung. Stellen Sie das zugehörige Attribut auf Pendlerdistanz-Sortierung ein.
Legen Sie in der Liste Beziehungstyp den Beziehungstyp auf Starr fest.
Die Beziehung zwischen den Mitgliedern des Attributs " Commute Distance" und dem Attribut " Commute Distance Sort " ändert sich im Laufe der Zeit nicht.
Klicke auf OK.
Jetzt können Sie die Sortierreihenfolge für das Attribut "Commute Distance " festlegen.
Klicken Sie auf die Registerkarte " Bemaßungsstruktur ".
Im Attributes-Bereich, wählen Sie Commute Distance aus und ändern Sie dann den Wert der OrderBy-Eigenschaft im Eigenschaftenfenster in AttributeKey, und ändern Sie den Wert der OrderByAttribute-Eigenschaft in Commute Distance Sort.
Klicken Sie im Menü " Erstellen " auf "Lernprogramm für Analysis Services bereitstellen".
Wenn die Bereitstellung erfolgreich abgeschlossen wurde, wechseln Sie zur Registerkarte "Browser " des Dimensions-Designers für die Kundendimension, klicken Sie auf "Erneut verbinden", und durchsuchen Sie dann die Attributhierarchie " Pendlerdistanz ".
Beachten Sie, dass die Attributhierarchiemitglieder nun in einer logischen Reihenfolge basierend auf zunehmender Entfernung sortiert sind, wie in der nachstehenden Abbildung dargestellt.
Nächste Aufgabe in der Lektion
Angeben von Attributbeziehungen zwischen Attributen in einer User-Defined hierarchie