Freigeben über


Erstellen von Measures und Measuregruppen in mehrdimensionalen Modellen

Gilt für: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Ein Measure ist eine Aggregation numerischer Datenwerten, z. B. Summe, Anzahl, Minimum, Maximum, Mittelwert, oder eines benutzerdefinierten MDX-Ausdrucks, den Sie erstellen. Eine Measuregruppe ist ein Container für ein oder mehrere Measures. Alle Measures befinden sich in einer Measuregruppe, auch wenn es nur ein Measure gibt. Ein Cube muss über mindestens ein Measure und eine Measuregruppe verfügen.

Dieses Thema enthält die folgenden Abschnitte:

Ansätze zum Erstellen von Measures

Measures können ein statisches Element des Cubes sein, die zur Entwurfszeit erstellt werden und immer vorhanden sind, wenn auf den Cube zugegriffen wird. Sie können ein Measure aber auch als berechnetes Element mithilfe eines MDX-Ausdrucks definieren, um einen berechneten Wert für ein Measure basierend auf anderen Measures im Cube bereitzustellen. Ein berechnetes Element kann auf die Sitzung oder den Benutzer begrenzt werden.

Verwenden Sie einen der folgenden Ansätze, um ein Measure oder eine Measuregruppe zu erstellen:

Vorgehensweise BESCHREIBUNG
Cube-Assistent Führen Sie den Cube-Assistenten in SQL Server Data Tools aus, um einen Cube zu erstellen.

Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Cubes , und wählen Sie Neuer Cubeaus. Weitere Informationen zu diesen Schritten finden Sie unter Mehrdimensionale Modellierung (Adventure Works Tutorial).

Wenn Sie einen Cube anhand von Tabellen aus einem vorhandenen Data Warehouse erstellen, materialisieren sich Definitionen für die Measures und Measuregruppen als Teil des Erstellungsprozesses des Cube. Im Assistenten können Sie auswählen, welche Fakten und Faktentabellen als Grundlage für das Measure und Measuregruppenobjekte im Cube verwendet werden sollen.
Dialogfeld "Neues Measure" Wenn der Cube bereits in SQL Server Data Tools vorhanden ist, doppelklicken Sie auf den Cubenamen in Projektmappen-Explorer, um ihn in Cube Designer zu öffnen. Klicken Sie im Bereich der Measures mit der rechten Maustaste auf den obersten Knoten, um eine neue Measuregruppe oder neue Measures zu erstellen, indem Sie eine Quelltabelle, eine Spalte und einen Aggregationstyp angeben. Bei diesem Ansatz müssen Sie die Aggregationsmethode aus einer festen Liste mit vorgefertigten Funktionen auswählen. Unter Use Aggregate Functions finden Sie eine Erläuterung der häufiger verwendeten Aggregationen.
berechnetes Element Berechnete Member fügen einem Cube in SQL Server Analysis Services Flexibilität und Analysefunktionen hinzu, da Sie steuern können, wann und wie sie erstellt werden. Manchmal benötigen Sie ein Measure nur vorübergehend für die Dauer einer Benutzersitzung oder in Management Studio als Teil einer Untersuchung.

Öffnen Sie in SQL Server Data Tools die Registerkarte Berechnungen, um ein neues berechnetes Element zu erstellen.

Wählen Sie diesen Ansatz, um ein Measure auf Grundlage eines MDX-Ausdrucks zu erstellen. Weitere Informationen finden Sie in den folgenden Themen: Building Measures in MDX, Calculations, Calculations in Multidimensional Models und MDX Scripting Fundamentals (Analysis Services).
MDX oder XMLA In SQL Server Management Studio können Sie MDX oder XMLA ausführen, um eine Datenbank zu ändern und ein neues berechnetes Measure einzubeziehen. Dieser Ansatz eignet sich für Ad-hoc-Tests von Daten, nachdem die Projektmappe auf einem Server bereitgestellt wurde. Siehe Document and Script an Analysis Services Database.

Komponenten eines Measures

Ein Measure ist ein Objekt mit Eigenschaften. Neben dem Namen benötigt ein Measure einen Aggregationstyp und eine Quellspalte oder einen Ausdruck, um das Measure mit Daten zu laden. Sie können die Measuredefinition durch Einstellen der Eigenschaften ändern.

attribute Beschreibung
source Die meisten Measures stammen aus numerischen Spalten in Faktentabellen in einem externen Data Warehouse, z. B. die Spalte "Betrag der Verkäufe" in den Tabellen "Internetverkäufe" und "Verkäufe des Wiederverkäufers" im AdventureWorks-Data Warehouse. Sie können aber auch neue Measures erstellen, die vollkommen auf von Ihnen definierten Berechnungen basieren.

Attributspalten aus Dimensionstabellen können zum Definieren von Measures verwendet werden. Diese Measures sind jedoch im Allgemeinen hinsichtlich ihres Aggregationsverhaltens semiadditiv oder nicht additiv. Weitere Informationen zum semiadditiven Aggregationsverhalten finden Sie unter Semiadditives Verhalten definieren.
Aggregation Standardmäßig werden Measures über die einzelnen Dimensionen hinweg summiert. Die AggregateFunction -Eigenschaft bietet Ihnen jedoch die Möglichkeit, dieses Verhalten zu ändern. Eine Liste finden Sie unter Use Aggregate Functions .
Eigenschaften Zusätzliche Beschreibungen der Eigenschaften finden Sie unter Configure Measure Properties .

Modellierung von Measures und Measuregruppen zu Fakten und Faktentabellen

Bevor Sie einen Assistenten ausführen, sollten Sie die Modellierungsprinzipien hinter der Measuredefinition kennen.

Measures und Measuregruppen sind die mehrdimensionalen Objekte, die Fakten und Faktentabellen in einem externen Data Warehouse darstellen. In den meisten Fällen basieren Measures und Measuregruppen auf Objekten in einer Datenquellensicht, die wiederum aus dem zugrundeliegenden Data Warehouse erstellt werden.

Das folgende Diagramm stellt die FactSalesQuota -Faktentabelle und die beiden zugehörigen Dimensionstabellen DimTime und DimEmployeedar. Diese Tabellen werden im Adventure Works-Beispielcube als Grundlage für die "Sales Quotas"-Measuregruppe und die Dimensionen "Time" und "Employee" verwendet.

FactSalesQuota-Tabelle mit zwei Dimensionstabellen

Die Faktentabelle enthält zwei grundlegende Spaltentypen: Attributspalten und Measurespalten.

  • Attributspalten werden verwendet, um Fremdschlüsselbeziehungen zu Dimensionstabellen zu erstellen, damit die quantifizierbaren Daten in den Measurespalten nach den Daten in den Dimensionstabellen organisiert werden können. Attributspalten werden auch verwendet, um die Granularität einer Faktentabelle und der zugehörigen Measuregruppe zu definieren.

  • Measurespalten definieren die in einer Measuregruppe enthaltenen Measures.

Wenn Sie den Cube-Assistenten ausführen, werden die Fremdschlüssel herausgefiltert. In der Liste der verbleibenden Spalten, aus denen Sie auswählen können, werden Measurespalten sowie Attributspalten angezeigt, die nicht als Fremdschlüssel identifiziert werden. Im FactSalesQuota-Beispiel bietet der Assistent zusätzlich zu SalesAmountQuotaCalendarYear und CalendarQuarter an. Nur die Measurespalte SalesAmountQuota ergibt eine praktikable Maßnahme für Ihr mehrdimensionales Modell. Durch die anderen datenbasierten Spalten werden die einzelnen Kontingentmengen qualifiziert. Sie sollten die anderen Spalten CalendarYear und CalendarQuarteraus der Liste der Measures im Cube-Assistenten ausschließen (oder sie später im Designer aus der Measuregruppe entfernen).

Vorweg sei darauf hingewiesen, dass sich nicht alle vom Assistenten angebotenen Spalten als Measure eignen. Verlassen Sie sich auf Ihre Kenntnisse der Daten und ihrer Verwendung, wenn Sie entscheiden, welche Spalten Sie als Measures verwenden. Denken Sie daran, dass Sie mit der rechten Maustaste auf eine Tabelle in der Datenquellensicht klicken können, um die Daten anzuzeigen. Dies kann Ihnen helfen, zu bestimmen, welche Spalten als Measures verwendet werden sollten. Weitere Informationen finden Sie unter Untersuchen von Daten in einer Datenquellensicht (Analysis Services).

Hinweis

Nicht alle Measures werden direkt aus einem in einer Spalte der Faktentabelle gespeicherten Wert abgeleitet. So basiert beispielsweise das Sales Person Count -Measure, das in der Sales Quota -Measuregruppe des Adventure Works-Beispielcubes definiert ist, tatsächlich auf der Anzahl eindeutiger Werte (oder Distinct Count) in der Spalte EmployeeKey der Faktentabelle FactSalesQuota .

Granularität einer Measuregruppe

Measuregruppen verfügen über eine zugeordnete Granularität, die auf die von einer Faktentabelle unterstützte Detailebene verweist. Die Granularität ist über die Fremdschlüssel-Beziehung zu einer Dimension festgelegt.

Beispielsweise hat die Faktentabelle FactSalesQuota eine Fremdschlüsselbeziehung zur Tabelle DimEmployee , jeder Datensatz in der Tabelle FactSalesQuota steht in Beziehung zu einem Mitarbeiter. Die Granularität der Measuregruppe befindet sich aus Sicht der Employee-Dimension also auf der Ebene einzelner Mitarbeiter.

Die Granularität einer Measuregruppe kann nicht stärker differenziert werden als die unterste Ebene der Dimension, von der die Measuregruppe betrachtet wird. Mithilfe zusätzlicher Attribute kann jedoch eine gröbere Granularität festgelegt werden. Die FactSalesQuota -Faktentabelle verwendet beispielsweise drei Spalten, TimeKey, CalendarYearund CalendarQuarter, um die Granularität einer Beziehung mit der DimTime -Tabelle festzulegen. Als Folge davon befindet sich die Granularität der Measuregruppe aus Sicht der Zeitdimension auf der Ebene des Kalenderquartals und nicht des Tages, der niedrigsten Ebene der Zeitdimension.

Sie können die Granularität einer Measuregruppe in Bezug auf eine bestimmte Dimension mithilfe der Registerkarte Dimensionsverwendung des Cube-Designers angeben. Weitere Informationen zu Dimensionsbeziehungen finden Sie unter Dimension Relationships.

Weitere Informationen

Cubes in mehrdimensionalen Modellen
Measures und Measuregruppen