Freigeben über


Architektur und Verarbeitung des Datenauflisters

Vom Datenauflister werden sowohl SQL Server-Agent als auch Integration Services, in denen er integriert ist, intensiv verwendet. Bevor Sie mit dem Datenauflister arbeiten, sollten Sie daher mit bestimmten Begriffen im Zusammenhang mit diesen beiden SQL Server-Komponenten vertraut sein.

Der SQL Server-Agent wird zum Planen und Ausführen von Auflistungsaufträgen verwendet. Sie sollten mit den folgenden Konzepten vertraut sein:

  • Auftrag

  • Auftragsschritt

  • Auftragszeitplan

  • Subsystem

  • Proxykonten

Weitere Informationen finden Sie unter Automatisieren administrativer Tasks (SQL Server-Agent).

Integration Services (SSIS) wird verwendet, um Pakete auszuführen, die Daten von einzelnen Datenanbietern auflisten. Sie sollten mit den folgenden Tools und Konzepten von SSIS vertraut sein:

  • SSIS-Paket

  • SSIS-Paketkonfiguration

Weitere Informationen finden Sie unter SQL Server Integration Services-Pakete.

Datenauflisterarchitektur

Die folgende Abbildung zeigt das Modell der Architektur für Datenauflistung und -speicherung.

Datenauflisterarchitektur

Wie in der Abbildung dargestellt, sind die Komponenten im Modell in die folgenden Kategorien aufgeteilt:

  • Speicherkomponenten sind die Datenbanken, die Konfigurationsinformationen und die gesammelten Daten enthalten.

  • Ausführungskomponenten werden für Datenauflistung und -speicherung verwendet.

  • API-Komponenten werden verwendet, um die Interaktion zwischen den Benutzeroberflächen und dem Datenauflister zu aktivieren.

  • Clientkomponenten sind die Benutzeroberflächen für den Datenauflister.

Die folgenden Abschnitte enthalten weitere Informationen über diese Kategorien und Komponenten.

Speicher

Der Datenauflister speichert Daten an zwei Orten: in der msdb-Datenbank und dem Verwaltungs-Data Warehouse.

HinweisHinweis

Der Datenauflister implementiert die Trennung des Benutzerschemas, die in SQL Server 2005 eingeführt wurde. Weitere Informationen finden Sie unter Trennung von Benutzer und Schema.

msdb-Systemdatenbank

Der Datenauflister verwendet die msdb-Datenbank zum Speichern von Konfigurationsinformationen, Laufzeitinformationen und Informationen zu Überwachung und Verlauf der Sammlung. Diese Datenbank muss in der Instanz von SQL Server vorhanden sein, in der der Datenauflister ausgeführt wird. Das Verwenden von msdb bietet die folgenden Vorteile:

  • Alle zum Konfigurieren und Ausführen des Datenauflisters benötigten Daten befinden sich an einem Speicherort.

  • Die Konfiguration der Datenauflistung kann über mehrere Server bereitgestellt werden, ohne dass dafür das Dateisystem verwendet werden muss.

  • Der Datenauflister kann vorhandene SQL Server-Sicherheitsmechanismen zum Schützen der Daten verwenden. Außerdem können Datenbankrollen Sicherheit mit Granularität bereitstellen, und es ist nicht erforderlich, datenbankübergreifendes Verketten zu implementieren.

  • Da msdb eine relationale Datenbank ist, kann die referenzielle Integrität der Konfigurations- und Laufzeitdaten sichergestellt werden.

msdb wird nicht nur zum Speichern von sammlungsspezifischen Informationen verwendet, sondern auch zum Speichern von SQL Server-Agent-Auftragsinformationen und SSIS-Paketinformationen.

Datenauflistungskonfiguration

Die Tabellen und Sichten der Datenauflistungskonfiguration beinhalten Informationen über Auflistsätze, Auflistertypen und Auflistelemente. Die Tabellen und Sichten enthalten auch globale Datenauflisterparameter, beispielsweise den Speicherort des Verwaltungs-Data Warehouse. Hier werden auch Datenbankrollen für den Datenauflister und das Verwaltungs-Data Warehouse gespeichert. Weitere Informationen über die Spalten für jede Sicht der Datenauflistungskonfiguration finden Sie unter Sichten des Datenauflisters (Transact-SQL).

Wichtiger HinweisWichtig

Ändern Sie die Daten in den Konfigurationstabellen nicht. Die in diesen Tabellen enthaltenen Daten müssen auf eine bestimmte Art und Weise eingefügt, aktualisiert und gelöscht werden, die von gespeicherten Prozeduren erzwungen wird. Die Tabellennamen und -definitionen können sich ändern, wenn Sie die Anwendung aktualisieren, und sie können sich auch in künftigen Versionen ändern. Statt direkt auf die Tabellen zuzugreifen, sollten Sie zum Zugriff auf die Instanz- und Anwendungsdaten die dokumentierten gespeicherten Prozeduren und Sichten verwenden, die vom Datenauflister bereitgestellt werden.

Aufträge des SQL Server-Agents

SQL Server-Agent-Auftragsinformationen werden in msdb mit einem separaten Schema gespeichert. Diese Auftragsinformationen werden immer dann erstellt oder aktualisiert, wenn Auflistsätze hinzugefügt, entfernt oder geändert werden. Wenn ein Auflistsatz gestartet wird, verwendet der SQL Server-Agent diese Informationen zum Ausführen von Datenauflisteraufträgen.

SQL Server Integration Services-Pakete

SSIS-Pakete werden in msdb in vorhandenen SSIS-Speichertabellen gespeichert. Der Datenauflister verwendet diese Pakete, um Daten zu sammeln und sie in das Verwaltungs-Data Warehouse hochzuladen.

Überwachung und Verlauf

Zum Speichern ausführlicher Überwachungs- und Verlaufsdatensätze von ausgeführten Datenauflistungen wird dedizierter Speicher bereitgestellt. Die Laufzeitkomponente des Datenauflisters und die SSIS-Pakete generieren während der Datenauflistung Ereignisse. Diese Informationen werden zum Überwachen des Auflistungsprozesses und zum Beheben von Fehlern des Prozesses verwendet.

Verwaltungs-Data Warehouse

Das Verwaltungs-Data Warehouse ist eine relationale Datenbank, die alle beibehaltenen Daten enthält. Diese Datenbank kann sich auf demselben System wie der Datenauflister oder auf einem anderen Computer befinden.

Ausführung

Komponenten in der Ausführungskategorie werden innerhalb des Arbeitsspeichers ausgeführt und sind für das Sammeln und Speichern von Daten verantwortlich.

SQL Server-Agent

Der SQL Server-Agent hostet die Laufzeitkomponente des Datenauflisters. Die Datenauflistung wird als SQL Server-Agent-Auftrag geplant. Wenn der Auftrag ausgeführt wird, ruft dieser die Laufzeitkomponente des Datenauflisters mithilfe der zum Erstellen und Ausführen eines Auflistsatzes erforderlichen Parameter auf.

Laufzeitkomponente des Datenauflisters

Die Laufzeitkomponente des Datenauflisters wird von einem eigenständigen Prozess mit dem Namen Dcexec.exe gehostet. Diese Komponente verwaltet die Datenauflistung auf Grundlage der in einem Auflistsatz bereitgestellten Definitionen und akzeptiert jeden Auflistsatz als Eingabe. Die Laufzeitkomponente des Datenauflisters ist für das Laden und Ausführen der SSIS-Pakete zuständig, die Teil eines Auflistsatzes sind.

Ein Auflistsatz wird in einem der folgenden Sammlungs- und Uploadmodi ausgeführt:

  • Modus ohne Zwischenspeicherung. Datenauflistung und -upload basieren auf dem gleichen Zeitplan. Die Pakete starten, sammeln und laden Daten entsprechend ihrer konfigurierten Häufigkeit hoch und fahren damit fort, bis sie fertig sind. Sobald das Ausführen der Pakete abgeschlossen ist, werden sie aus dem Arbeitsspeicher entladen.

  • Modus mit Zwischenspeicherung. Datenauflistung und -upload basieren auf verschiedenen Zeitplänen. Von den Paketen werden Daten erfasst und zwischengespeichert, bis sie von der Schleifenablaufsteuerung das Signal zum Beenden erhalten. Hierdurch wird sichergestellt, dass der Datenfluss immer wieder ausgeführt werden kann und eine kontinuierliche Datenauflistung erfolgt.

HinweisHinweis

Die Laufzeitkomponente des Datenauflisters kann nur eine Datenauflistung oder einen Datenupload ausführen. Diese Tasks können nicht gleichzeitig ausgeführt werden.

SSIS-Laufzeitkomponente

Die Laufzeitkomponente des Datenauflisters ruft die vom Datenauflister verwendeten SSIS-Pakete auf. Die Pakete werden prozessintern ausgeführt.

Die beiden wichtigsten Tasks für die SSIS-Pakete sind die Datenauflistung und der Datenupload, die von verschiedenen Paketen ausgeführt werden.

  • Das Auflistungspaket erfasst Daten von einem Datenanbieter und behält diese im temporären Speicher bei. Sofern entsprechend konfiguriert, fügt dieses Paket auch weitere Informationen an die gesammelten Daten an, beispielsweise die Snapshotzeit oder Informationen über die Datenquelle.

  • Das Uploadpaket liest die Daten im temporären Speicher, verarbeitet die Daten nach Bedarf (entfernt beispielsweise nicht benötigte Datenpunkte, normalisiert die Daten und führt eine Datenaggregation durch), und lädt die Daten dann in das Verwaltungs-Data Warehouse hoch. Der Upload wird als Masseneinfügung ausgeführt, um die Auswirkungen auf die Serverleistung zu minimieren.

Durch die Trennung der Datenauflistung und des Datenuploads wird mehr Flexibilität und Effizienz bereitgestellt. Dieser Entwurf unterstützt Szenarien, in denen Snapshots der Daten in kurzen Abständen erfasst werden (beispielsweise alle 15 Sekunden), die gesammelten Daten jedoch nur jede Stunde hochgeladen werden müssen. Die Häufigkeit von Datenauflistung und -upload sollte von den Anforderungen für die Überwachung einer bestimmten SQL Server-Installation bestimmt werden.

Temporäre Speicherung

Die temporäre Speicherung wird während der Datenauflistung zum Speichern von Eigenschaftswerten verwendet, die von Auflistsätzen verfügbar gemacht oder dynamisch berechnet wurden. Diese Werte können unformatierte Daten sein, die während des Auflistungsprozesses erfasst wurden, oder verarbeitete Daten, beispielsweise aggregierte Daten.

API

Die API-Kategorie umfasst die Klassenbibliothek und das Objektmodell, die zum Konfigurieren, Verwalten und Erweitern des Datenauflisters verwendet werden. Der Clientzugriff auf die Systemdatenbank muss über die API erfolgen.

Klassenbibliothek

Der Datenauflister verfügt über seinen eigenen Namespace und ist von SQL Server Management Objects (SMO) unabhängig.

Gespeicherte Prozeduren und Sichten

Die gespeicherten Prozeduren und Sichten umfassen Erstellungs-, Lese-, Aktualisierungs- und Löschzugriff auf die Konfigurationsdaten des Datenauflisters und des Verwaltungs-Data Warehouse.

Client

Der Datenauflister verwendet SQL Server Management Studio und eine Windows Powershell™-Befehlszeilenschnittstelle als Clients zum Konfigurieren und Verwenden des Datenauflisters. SQL Server Management Studio kann für die folgenden Aufgaben verwendet werden:

  • Konfigurieren der Datenauflistung mithilfe des Assistenten zum Konfigurieren der Datenauflistung im Objekt-Explorer.

  • Aktivieren oder Deaktivieren der Datenauflistung mit dem Objekt-Explorer.

  • Starten oder Beenden eines bestimmten Auflistsatzes mit dem Objekt-Explorer.

  • Anzeigen oder Konfigurieren der Datenauflistung oder der Eigenschaften für Datenauflistsätze mit dem Objekt-Explorer.

  • Anzeigen von Berichten auf der Grundlage von Vergangenheitsdaten, die im Verwaltungs-Data Warehouse gespeichert sind. Diese Datenbank kann sich in der lokalen Instanz oder auf einem anderen Server befinden. Letzteres wird empfohlen.

Sie können die Windows PowerShell-Befehlszeilenschnittstelle für folgende Aufgaben verwenden:

  • Starten oder Beenden eines Auflistsatzes.

  • Hinzufügen oder Entfernen eines Auflistsatzes.

  • Ändern der bearbeitbaren Eigenschaften eines Auflistsatzes.

Interaktion zwischen Komponenten und Verarbeitung

In der folgenden Tabelle wird die Interaktion zwischen den verschiedenen Komponenten in der Architektur des Datenauflisters erläutert.

Komponente

Komponente

Beschreibung

SQL Server Management Studio

Datenauflister-API

Der Client kommuniziert mit der API, um den Datenauflister zu konfigurieren.

SQL Server Management Studio

Verwaltungs-Data Warehouse

Der Client hat Lesezugriff auf das Verwaltungs-Data Warehouse und kann die gesammelten Daten abrufen.

SQL Server Management Studio, Konsolenclient

Datenauflister-API

Beide Clients können den Datenauflister mithilfe der API programmgesteuert konfigurieren.

Datenauflister-API

Gespeicherte Prozeduren und Sichten

Die API verwendet gespeicherte Prozeduren, die über Lese- und Schreibzugriff auf die Konfigurationsinformationen des Datenauflisters und des Verwaltungs-Data Warehouse verfügen.

msdb – Auftragsdefinition

SQL Server-Agent

Der SQL Server-Agent kann die Auftragsdefinition lesen. Die Auftragsdefinition enthält Informationen über Auftragszeitplan und Auftragskonfiguration.

SQL Server-Agent

Laufzeitkomponente des Datenauflister

Der SQL Server-Agent ruft den Datenauflister als Reaktion auf die Auftragsdefinition ab.

Laufzeitkomponente des Datenauflisters

msdb – SSIS-Pakete

Der Datenauflister lädt die SSIS-Pakete und kann SSIS zum Ausführen dieser Pakete verwenden.

Laufzeitkomponente des Datenauflisters

msdb – Überwachung und Verlauf

Der Datenauflister verfügt über Schreibzugriff auf diesen Teil von msdb, sodass die während der Datenauflistung generierten Ereignisse aufgezeichnet werden können.

SSIS

Verwaltungs-Data Warehouse

Das SSIS-Paket hat Schreibzugriff auf das Verwaltungs-Data Warehouse, sodass es die gesammelten Daten hochladen kann.

SSIS

Temporärer Speicher

Während des Auflistungsprozesses kann SSIS jeden beliebigen erforderlichen temporären Speicher erstellen, verwenden und löschen.

msdb – Datenauflistungskonfiguration

msdb – Auftragsdefinition

Informationen in der Datenauflistungskonfiguration werden der Auftragsdefinition zugeordnet. Weitere Informationen finden Sie nachfolgend unter "Zuordnen von Auflistsätzen und Aufträgen".

Zuordnen von Auflistsätzen und Aufträgen

Ein Schlüsselelement der Datenauflisterarchitektur ist das Zuordnen von in der Datenauflisterkonfiguration definierten Auflistsätzen und den Aufträgen in der Auftragsdefinition.

Ein Auflistsatz ist eine Gruppe von Elementen, die Instanzen der mithilfe von SSIS-Paketen definierten Auflistertypen sind. Als Instanz im Arbeitsspeicher hat jeder Auflistsatz eine Lebensdauer, die weiter unten in diesem Thema ausführlicher erläutert wird. Jeder Auflistsatz wird von der Laufzeitkomponente des Datenauflisters ausgeführt, wenn dieser von einem SQL Server-Auftrag aufgerufen wird. Die folgenden Beispiele veranschaulichen, wie Auflistsätze zu Aufträgen zugeordnet werden.

Auflistsätze

Beispiel 1

Der Beispielauflistsatz "Basisleistungsdaten" enthält separate Auflistungs- und Uploadpakete, um verschiedene Zeitpläne für die Auflistungs- und Uploadpakete zu unterstützen.

Auflistsatz: Name = "Basisleistungsdaten"

Auflistelement: Name = "SQL_RE_Active_Requests_History"

Auflistungspaket: ARH_Collect.dtsx

Uploadpaket: ARH_Upload.dtsx

Auflistungshäufigkeit: 1 Sekunde

Auflistelement: Name = "SQL_RE_Wait_Statistics"

Auflistungspaket: WS_Collect.dtsx

Uploadpaket: WS_Upload.dtsx

Auflistungshäufigkeit: 15 Sekunden

Auflistelement: Name = "SQL_RE_Performance_Counters"

Auflistungspaket: PC_Collect.dtsx

Uploadpaket: PC_Upload.dtsx

Eingabe: Leistungsindikator - Sperren: Aktuelle Latchwartevorgänge

Auflistungshäufigkeit: 15 Sekunden

Auflistelement: Name = "WIN_OS_Performance_Counters"

Auflistungspaket: OS_PC_Collect.dtsx

Uploadpaket: OS_PC_Upload.dts

Eingabe: Leistungsindikator - Prozess: Prozessorzeit (%)

Auflistungshäufigkeit: 15 Sekunden

Uploadzeitplan: Alle 30 Minuten

Beispiel 2

Der Beispielauflistsatz "Serverkonfigurationsdaten" enthält ein einzelnes Paket, das auf Transact-SQL basierende Snapshots abruft und diese beim Abrufen in das Verwaltungs-Data Warehouse hochlädt.

Auflistsatz: Name = "Serverkonfigurationsdaten"

Auflistelement: Name = "SQL_RE_TSQL"

Auflistungs- und Uploadpaket: TSQL_Upload.dtsx

Eingabe: Transact-SQL-Abfrage von Datenbankgrößen

Auflistungshäufigkeit: <keine>

Auflistelement: Name = "SQL_RE_TSQL"

Auflistungs- und Uploadpaket: TSQL_Upload.dtsx

Eingabe: Transact-SQL-Abfrage für Konfigurationsgrößen

Auflistungshäufigkeit: <keine>

Uploadzeitplan: Alle 24 Stunden

Aufträge

Wenn die in den vorigen Beispielen gezeigten Auflistsätze erstellt werden, werden SQL Server-Agent-Aufträge erstellt, um die Datenauflistung auszuführen. Die Auftragserstellung wird durch die folgenden Regeln bestimmt:

  • Die Datenauflistung anhand verschiedener Auflistsätze wird jeweils als separater Auftrag ausgeführt.

  • Auflistsätze, die den Auftragsmodus mit Zwischenspeicherung verwenden, werden als Aufträge geplant, die starten, wenn der SQL Server-Agent gestartet wird. Diese Aufträge werden fortlaufend ausgeführt und werden von der Laufzeitkomponente des Datenauflisters gesteuert.

  • Auflistsätze, die den Auflistungsmodus ohne Zwischenspeicherung verwenden, werden als normale SQL Server-Agent-Aufträge geplant. Diese Aufträge verwenden einen SQL Server-Agent-Zeitplan, der mit dem im Auflistsatz definierten Zeitplan übereinstimmt. Die tatsächliche Dauer der Ausführung kann vom Benutzer angepasst werden.

In den folgenden Beispielen werden Aufträge veranschaulicht, die die vorangehenden Regeln verwenden. Diese Aufträge können die bereitgestellten Beispiele für Auflistsätze ausführen.

Aufträge für das Auflistsatzbeispiel 1

Es werden zwei Aufträge zum Behandeln dieses Auflistsatzes verwendet: einer für die Auflistung und einer für das Hochladen.

Auftrag 1, Name: "Basis-Leistungsdatenauflistung"

Kategorie: "Datenauflister"

Auftragsschritt 1:

Auflistsatz: Name = "Basisleistungsdaten"

Auflistungsmodus: nur Auflistung, fortlaufende Ausführung

Ausgeführte Pakete: ARH_Collect, WS_Collect, PC_Collect, OS_PC_Collect

Zeitplan: Beim Starten des Agents

Auftrag 2, Name: "Basis-Leistungsdatenupload"

Kategorie: "Datenauflister"

Auftragsschritt 1:

Auflistsatz: Name = "Basisleistungsdaten"

Auflistungsmodus: nur Upload, einmalige Ausführung

Ausgeführte Pakete: ARH_Upload, WS_Upload, PC_Upload, OS_PC_Upload

Zeitplan: Alle 30 Minuten, beginnend um 12 Uhr

Aufträge für Auflistsatz - Beispiel 2

Es wird ein Auftrag zum Behandeln des Auflistsatzes erstellt.

Auftrag 3, Name = "Serverkonfigurationsdaten"

Kategorie = "Datenauflister"

Auftragsschritt 1:

Auflistsatz, Name = "Serverkonfigurationsdaten"

Auflistungsmodus: Auflistung und Upload, einmalige Ausführung

Ausgeführte Pakete: TSQL_Upload, TSQL_Upload

Zeitplan: Täglich um 12:00 Uhr

HinweisHinweis

Jedes der oben aufgeführten Beispiele gibt den Auflistungsmodus für den Auftrag an. Diese Informationen werden zum Verwalten der Verarbeitung von Auflistung und Upload verwendet, wenn der Auflistsatz ausgeführt wird.

Datenauflister und Auflistsätze

Da eine Datenauflistung, mit der Sie interagieren, aus einem Datenauflister und einem Auflistsatz besteht, sollten Sie Kenntnisse über ihren jeweiligen gültigen Status und das Konzept der Lebensdauer eines Auflistsatzes haben.

Jeweils gültiger Status

Sie können die Datenauflistung aktivieren und deaktivieren. Für jede Änderung, die sich auf auflistungsweite Parameter auswirkt, beispielsweise Änderungen an der Verbindungszeichenfolge des Verwaltungs-Data Warehouse, ist zunächst ein Deaktivieren der Datenauflistung erforderlich.

Wenn Sie alle Änderungen an der Auflistsatzkonfiguration vornehmen möchten, müssen Sie zuerst den Auflistsatz beenden.

Wenn die Datenauflistung beim Ausführen von Auflistsätzen deaktiviert wird, werden diese Auflistsätze angehalten, bis die Datenauflistung erneut aktiviert wird. Zu diesem Zeitpunkt wird das Ausführen der Auflistsätze fortgesetzt. Jeder Auflistsatz, der beim Deaktivieren der Datenauflistung nicht ausgeführt wurde, bleibt weiterhin angehalten. Sie können jeden Auflistsatz starten, während die Datenauflistung deaktiviert ist. Die Ausführung des Auflistsatzes beginnt jedoch erst, wenn Sie die Datenauflistung aktivieren.

Lebensdauer eines Auflistsatzes

Nachdem ein Auflistsatz gestartet wurde, durchläuft er während seiner Lebensdauer mehrere Übergänge. Folgende mögliche Übergänge und zugehörige Aktionen sind verfügbar:

  1. Konstrukt

    • Ein Auflistsatzobjekt wird im Arbeitsspeicher erstellt.

    • Alle Eigenschaften können frei festgelegt und geändert werden.

  2. Hinzufügen eines Auflistertyps

    • Dem Auflistsatz wird ein neues Auflistelement hinzugefügt.

    • Der Auflistsatz überprüft, ob alle Auflistelemente auf denselben Zielstamm verweisen.

  3. Entfernen eines Auflistertyps

    • Ein vorhandenes Auflistelement wird aus dem Auflistsatz entfernt.
  4. Erstellen

    • Der Auflistsatz überprüft, ob mindestens ein Auflistelement enthalten ist.

    • Informationen über alle Auflistelemente und ihre Eigenschaften, Auflistungshäufigkeiten und alle Eigenschaften des Auflistsatzes werden in den Konfigurationsspeicher des Datenauflisters eingefügt.

    • Der ursprüngliche Zustand des Auflistsatzes wird auf inaktiv festgelegt.

    • Der SQL Server-Agent-Auftrag oder Aufträge, die den Auflistsatz ausführen, werden erstellt und mit dem Auflistsatz verknüpft.

    • Der Ausgangszustand der Aufträge des SQL Server-Agents wird auf inaktiv festgelegt.

  5. Start

    • Der Zustand des Auflistsatzes wird in aktiv geändert.

    • Zugeordnete Aufträge des SQL Server-Agents werden aktiviert.

    • Wenn ein Auftrag beim Starten des Agent zum Ausführen gekennzeichnet wird, startet der Auftrag sofort.

  6. Stop

    • Der Zustand des Auflistsatzes wird in gestoppt geändert.

    • Alle ausgeführten Aufträge für den Auflistsatz werden beendet und deaktiviert.

    • Alle dem Auflistsatz zugeordneten Aufträge werden auf inaktiv festgelegt.

  7. Löschen

    • Alle dem Auflistsatz zugeordneten Aufträge werden aus dem Arbeitsspeicher gelöscht.

    • Alle mit dem Auflistsatz verbundenen Objekte in der Datenauflisterkonfiguration (Auflistelemente, Auflistsatz) werden gelöscht.

Laufzeitverarbeitung

Die folgende Darstellung bietet eine grobe und vereinfachte Ansicht der Laufzeitverarbeitung, wenn ein Auflistsatz gestartet und Daten gesammelt und hochgeladen werden. Auch wenn diese Darstellung das Auflisten und Hochladen von Daten als zwei separate Auftragsprozesse zeigt, kann dies auch ein einzelner Auftrag sein, wie in den vorherigen Beispielen dargestellt.

Verarbeitung von Auflistung und Upload

Datenauflistung

In der vorangehenden Darstellung wird den Prozessschritten der Datenauflistung ein "C" vorangestellt. Folgende Verarbeitungsschritte werden ausgeführt:

  1. Eine gespeicherte Prozedur startet den Auflistsatz. Der Status des Auflistsatzes in msdb wird in ausgeführt geändert. Durch diese Statusänderung werden die mit dem Auflistsatz verbundenen SQL Server-Agent-Aufträge aktiviert.

  2. Der SQL Server-Agent startet den Auftrag wie folgt:

    • Wenn der Auflistsatzmodus auf zwischengespeichert festgelegt wird, wird der Auflistungsauftrag sofort gestartet.

    • Wenn der Auflistsatzmodus nicht auf zwischengespeichert festgelegt ist, wird der Auflistungsauftrag gemäß dem konfigurierten Zeitplan gestartet.

  3. Wenn ein Auftrag gestartet wird, erzeugt er einen Prozess zum Ausführen der Laufzeitkomponente des Datenauflisters (Dcexec.exe) und gibt dem Auftrag an, das mit dem Auflistsatz verbundene Auflistungspaket auszuführen.

  4. Beim Start von Dcexec.exe wird die Konfiguration des Datenauflisters in msdb gelesen, um zu erkennen, welcher Auflistmodus verwendet werden soll (beispielsweise zwischengespeichert oder nicht zwischengespeichert).

  5. Die Laufzeitkomponente des Datenauflisters verwendet die SSIS-Laufzeitkomponente, um die für den Auflistsatz definierten Auflistungspakete auszuführen.

  6. Die Auflistungspakete werden ausgeführt, bis sie ein Signal zum Stoppen empfangen oder bis sie einen vordefinierten Endpunkt erreichen. Die Auflistungspakete speichern die in einem Stagingbereich gesammelten Daten, bis sie hochgeladen werden.

    HinweisHinweis

    Mit dem Entwurf des Auflistertyps für den Auflistsatz wird bestimmt, welche Art von Stagingbereich verwendet wird. Der Stagingbereich kann ein freigegebener Speicherbereich, mehrere temporäre Dateien oder eine Meldungswarteschlange sein.

Datenupload

In der vorangehenden Darstellung wird den Prozessschritten des Datenuploads ein "U" vorangestellt. Folgende Verarbeitungsschritte werden ausgeführt:

  1. Wenn ein Upload erforderlich ist, startet eine gespeicherte Prozedur den Auftrag, der vom SQL Server-Agent behandelt wird.

  2. Der SQL Server-Agent startet den Auftrag wie folgt:

    • Wenn der Benutzer eine Anforderung zum bedarfsgesteuerten Hochladen sendet, wird der Uploadauftrag sofort gestartet.

    • Wenn keine Anforderung zum bedarfsgesteuerten Hochladen vorhanden ist, wird der Uploadauftrag gemäß des für den Auflistsatz konfigurierten Zeitplans gestartet.

  3. Wenn ein Auftrag gestartet wird, erzeugt er einen Prozess zum Ausführen der Laufzeitkomponente des Datenauflisters (Dcexec.exe) und weist den Auftrag an, das mit dem Auflistsatz verbundene Uploadpaket auszuführen.

  4. Beim Start von Dcexec.exe wird die Konfiguration des Datenauflisters in msdb gelesen, um zu erkennen, wie der Upload behandelt werden soll (beispielsweise die Verbindungszeichenfolge zum Verwaltungs-Data Warehouse oder eine beliebige erforderliche Verarbeitung der Daten).

  5. Die Laufzeitkomponente des Datenauflisters verwendet die SSIS-Laufzeitkomponente, um die für den Auflistsatz definierten Uploadpakete auszuführen.

  6. Das Uploadpaket liest die im Stagingbereich befindlichen Daten und führt die erforderlichen Transformationen wie Normalisierung oder Stichprobenerstellung durch. Wenn die Transformationen abgeschlossen sind, stellt das Uploadpaket eine Verbindung zum Verwaltungs-Data Warehouse her und fügt die Daten ein.

  7. Wenn der Upload abgeschlossen ist, wird der Prozess beendet, der Status des Auflistsatzes bleibt jedoch unverändert. Der nächste Upload startet gemäß dem Zeitplan für den Auflistsatz.