Freigeben über


Komponenten des TFS Data Warehouse

Das Team Foundation-Berichterstellungswarehouse ist ein herkömmliches Data Warehouse, das aus einer relationalen Datenbank besteht, die in einem annähernden Sternschema und einem auf der relationalen Datenbank beruhenden SQL Server Analysis Services-Cube organisiert ist. Im folgenden Diagramm werden die allgemeine Architektur des Data Warehouse von Team Foundation und die Beziehungen zwischen den Betriebsspeichern, dem Data Warehouse und den Teamberichten dargestellt.

Data Warehouse-Architektur

Betriebsspeicher

Alle Tools oder Plug-Ins in Team Foundation verwenden eine relationale Datenbank in SQL Server 2008, um die vom Tool bei den täglichen Vorgängen verwendeten Daten zu speichern. Diese relationale Datenbank wird häufig als Betriebsspeicher bezeichnet. Zu den Betriebsspeichern für Team Foundation zählen u. a.:

  • Allgemeine Strukturdatenbanken (Tfs_Configuration)

  • Teamprojektauflistungs-Datenbanken (Tfs_Collection)

Zudem können für Tools von Drittanbietern Betriebsspeicher erstellt werden.

Wie bei den meisten Betriebsspeichern wurde das Schema der relationalen Datenbank für die transaktionale Onlineverarbeitung von Daten konzipiert und optimiert. Wenn das Tool oder Plug-In eine Aktivität ausführt, werden die aktuellen Informationen in den Betriebsspeicher geschrieben. Daher werden die Daten im Betriebsspeicher fortlaufend geändert und aktualisiert, sodass alle Daten stets auf dem aktuellen Stand sind.

Warehouse-Adapter

Da alle Tools oder Plug-Ins eigene Schemaanforderungen aufweisen und die Daten im Betriebsspeicher zur Optimierung der Transaktionsverarbeitung gespeichert werden, besteht der Zweck des Warehouse-Adapters darin, die Betriebsdaten in ein Format umzusetzen, das vom Data Warehouse verwendet werden kann. Beim Warehouse-Adapter handelt es sich um eine verwaltete Assembly, die die Daten aus dem Betriebsspeicher extrahiert, die Daten in ein standardisiertes, mit dem Warehouse kompatibles Format umwandelt und die umgewandelten Daten in die relationale Datenbank des Warehouse schreibt. Für jeden betriebsinternen Datenspeicher ist ein separater Adapter vorhanden.

Der Warehouseadapter kopiert und wandelt Datenfelder um, die entweder in der grundlegenden Warehousekonfiguration oder in der Prozessvorlage angegeben wurden, die beim Erstellen eines neuen Teamprojekts verwendet wird. Wenn Sie die Prozessvorlage später ändern und in das Data Warehouse zu schreibende Datenfelder hinzufügen bzw. entfernen, werden diese Änderungen bei der nächsten Ausführung des Adapters erkannt. Der Adapter wird regelmäßig in einem Intervall ausgeführt, das mit der "RunIntervalSeconds"-Eigenschaft festgelegt wird. Die Standardeinstellung für das Aktualisierungsintervall beträgt zwei Stunden (7.200 Sekunden). Ermitteln Sie daher sorgfältig das geeignete Aktualisierungsintervall für die jeweilige Installation. Weitere Informationen zum Ändern des Aktualisierungsintervalls finden Sie unter Ändern von Prozesssteuerungseinstellungen für das Data Warehouse und den Analysis Services-Cube.

Achten Sie darauf, dass beim Aktualisieren der relationalen Datenbank aus dem Betriebsspeicher keine Daten aus der relationalen Datenbank in den Datencube geschrieben werden. Um Konflikte beim Lesen und Schreiben von Daten zu vermeiden, werden die Warehouseadapter synchronisiert, die die Push- und Pullvorgänge für die Daten ausführen. Nach dem Abschließen der Aufrufe durch die Adapter wird der Cube erneut verarbeitet.

Die relationale Datenbank oder das Data Warehouse

Jedes Tool beschreibt seinen Beitrag zum Data Warehouse in einem XML-Schema. Im Schema sind die Felder angegeben, die als Dimensionen, Measures und Details in die relationale Datenbank geschrieben werden. Das Schema wird zudem direkt im Cube zugeordnet.

Die Daten im Warehouse werden in einer Reihe von Tabellen gespeichert, die in einem Sternschema organisiert sind. Die zentrale Tabelle des Sternschemas wird als Faktentabelle bezeichnet, und die zugehörigen Tabellen entsprechen Dimensionen. Dimensionen ermöglichen das Auflösen von Berichten in kleinere Bestandteile. Eine Zeile in einer Faktentabelle enthält in der Regel entweder den Wert eines Measures oder einen Fremdschlüsselverweis auf eine Dimensionstabelle. Die Zeile entspricht dem aktuellen Zustand aller Elemente, die in der Faktentabelle berücksichtigt sind. Die Arbeitsaufgaben-Faktentabelle enthält beispielsweise eine Zeile für jede Arbeitsaufgabe, die im Betriebsspeicher für Arbeitsaufgaben gespeichert ist.

In einer Dimensionstabelle werden die Werte gespeichert, die für eine bestimmte Dimension vorhanden sind. Dimensionen können von verschiedenen Faktentabellen und Cubes gemeinsam verwendet werden. Die Verweise erfolgen mithilfe einzelner Faktentabellen oder einem einzelnen Datencube. Auf die Dimension "Person" wird beispielsweise von der Faktentabelle "Arbeitsaufgaben" für die Eigenschaften "Zugewiesen an", "Geöffnet von", "Gelöst von" und "Geschlossen von" verwiesen. Zudem erfolgt der Verweis über die Faktentabelle "Codeänderung" für die Eigenschaft "Eingecheckt von".

Measures sind Werte, die den Betriebsdaten entnommen werden. So ist "Änderung gesamt" beispielsweise ein Measure, das die Anzahl der Quellcodeänderungen in den ausgewählten Changesets angibt. "Count" ist insofern ein besonderes Measure, als es implizit sein kann, sofern ein Datensatz für jedes gezählte Element vorhanden ist. Die in einer Faktentabelle definierten Measures bilden im Cube eine Measuregruppe.

Weitere Informationen zu den Fakten, Dimensionen und Measures im Data Warehouse finden Sie unter Im Analysis Services-Cube für Visual Studio verfügbare Perspektiven und Measuregruppen.

Der Analysis Services-Cube

Faktentabellen sind eine sinnvolle Informationsquelle für Berichte, die den aktuellen Stand wiedergeben. Beim Erstellen von Berichten zu Trends von Daten, die sich im Lauf der Zeit ändern, müssen Sie jedoch die Datenmenge für die einzelnen Berichtszeitpunkte duplizieren. Wenn Sie beispielsweise einen Bericht zu den Tagestrends für Arbeitsaufgaben oder Testergebnisse erstellen möchten, muss im Warehouse der Zustand der einzelnen Elemente für jeden Tag verwaltet werden. Dadurch können im Datencube die Measures nach Tagen aggregiert werden. Der Cube aggregiert beide Daten aus dem zugrunde liegenden Sternschema und den Uhrzeitdaten in mehrdimensionale Strukturen.

Bei jeder Verarbeitung des Datencubes werden die in den Sternschemas der relationalen Datenbank gespeicherten Daten in einem Pullvorgang in den Cube übertragen, aggregiert und gespeichert. Die Daten im Cube werden so aggregiert, dass die allgemeinen Berichte, für die andernfalls komplexe Verarbeitungsvorgänge auf der Grundlage des Sternschemas erforderlich wären, einfache SELECT-Anweisungen entsprechen. Der Cube stellt einen zentralen Punkt zum Abrufen von Daten für Berichte dar. Hierbei muss weder das Schema für die einzelnen Betriebsspeicher bekannt sein noch muss separat auf jeden Speicher zugegriffen werden.

Berichte des Berichts-Designers

Der Berichts-Designer ist eine Komponente von Visual Studio, mit der das Team Foundation-Data Warehouse als Datenquelle definiert und anschließend interaktiv ein Bericht entworfen werden kann. Der Berichts-Designer enthält Fenster mit Registerkarten für Daten, Layout und Vorschau, und Sie können Datasets hinzufügen, um Ideen für neue Berichtsdesigns umzusetzen. Zudem können Sie das Berichtslayout anhand der Vorschauergebnisse anpassen. Zusätzlich zu den Entwurfsoberflächen "Daten", "Layout" und "Vorschau" bietet der Berichts-Designer Abfrage-Generatoren, einen Ausdrucks-Editor sowie Assistenten, die Sie beim Platzieren von Bildern und beim Ausführen der Schritte zum Erstellen eines einfachen Berichts unterstützen. Weitere Informationen zum Verwenden des Berichts-Designers finden Sie unter Erstellen, Anpassen und Verwalten von Berichten für Visual Studio ALM.

Excel-Berichte

Team Foundation ist in Microsoft Excel integriert, um das Verwalten von Projekten und das Erstellen von Berichten mithilfe von Microsoft Excel zu ermöglichen. Microsoft Excel umfasst PivotTables und PivotCharts zum Anzeigen und Analysieren mehrdimensionaler Daten. Sie können diese PivotTables direkt an den Team Foundation-Cube binden, sodass Sie mit den Daten im Cube interagieren können. Weitere Informationen zur Verwendung von Microsoft Excel zur Berichterstellung finden Sie unter Erstellen von Excel-Berichten aus einer Arbeitsaufgabenabfrage.

Sicherheit

Die Sicherheit für das Team Foundation-Data Warehouse wird auf Datenbankebene und die Sicherheit für Teamberichte auf Teamprojektebene definiert. Der Team Foundation Server-Administrator legt fest, welche Personen auf die Daten im Data Warehouse zugreifen können, indem er Berechtigungen für das Konto des jeweiligen Benutzers gewährt bzw. widerruft. Standardmäßig wird der Schreibzugriff auf das Warehouse auf das Dienstkonto beschränkt, unter dem der Warehousedienst ausgeführt wird. Die einzelnen Tooladapter verfügen über Schreibzugriff auf das Data Warehouse, da sie in diesem Sicherheitskontext ausgeführt werden. Einzelnen Benutzern oder Benutzergruppen wird vom Administrator schreibgeschützter Zugriff gewährt. Ein Benutzer, der berechtigt ist, die Daten im Warehouse anzuzeigen, hat Zugriff auf alle Daten für alle Teamprojekte in allen Teamprojektsammlungen. Weitere Informationen zum Gewähren bzw. Verweigern des schreibgeschützten Zugriffs auf das Data Warehouse finden Sie unter Gewähren von Zugriff auf die Datenbanken des Data Warehouse für Visual Studio ALM.