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.
Gilt für:SQL Server
SSIS Integration Runtime in Azure Data Factory
Mit dem Task „Nachrichtenwarteschlange“ können Sie Message Queuing (auch als MSMQ bezeichnet) verwenden, um Nachrichten zwischen SQL Server Integration Services-Paketen zu senden und zu empfangen oder um Nachrichten an eine Anwendungswarteschlange zu senden, die von einer benutzerdefinierten Anwendung verarbeitet wird. Bei diesen Nachrichten kann es sich um einfachen Text, Dateien oder Variablen und deren Werte handeln.
Mithilfe der Aufgabe „Nachrichtenwarteschlange“ können Sie Vorgänge unternehmensweit koordinieren. Nachrichten können in eine Warteschlange eingereiht und später übermittelt werden, falls das Ziel nicht verfügbar oder ausgelastet ist. Beispielsweise können mit diesem Task Nachrichten für den Offlinelaptopcomputer von Vertriebsmitarbeitern, die ihre Nachrichten beim Herstellen einer Verbindung mit dem Netzwerk erhalten, einer Warteschlange hinzugefügt werden. Sie können die Aufgabe „Nachrichtenwarteschlange“ für folgende Zwecke verwenden:
Verzögern der Taskausführung, bis andere Pakete eingecheckt sind. Beispielsweise sendet nach der nächtlichen Wartung an jedem Ihrer Einzelhandelsstandorte eine Message-Queue-Aufgabe eine Nachricht an Ihren Unternehmenscomputer. Ein Paket, das auf dem Unternehmenscomputer ausgeführt wird, enthält Message-Queue-Tasks, die jeweils auf eine Nachricht von einem bestimmten Einzelhandelsstandort warten. Wenn eine Nachricht von einer Website eingeht, lädt eine Aufgabe Daten von dieser Website hoch. Nachdem sich alle Standorte zurückgemeldet haben, berechnet das Paket die Gesamtsummen.
Senden von Datendateien an den Computer, der diese verarbeitet. Beispielsweise können die von einer Restaurantkasse erzeugten Daten in Form einer Datendatei an das Lohnabrechnungssystem des Unternehmens gesendet werden, aus der dann die Daten zu den Trinkgeldern der einzelnen Kellner extrahiert werden.
Verteilen von Dateien im gesamten Unternehmen. Beispielsweise kann ein Paket einen Task für Message Queue verwenden, um eine Paketdatei an einen anderen Computer zu senden. Ein Paket, das auf dem Zielcomputer ausgeführt wird, verwendet anschließend einen Message Queue-Task, um das Paket lokal abzurufen und zu speichern.
Beim Senden oder Empfangen von Nachrichten verwendet der Task „Nachrichtenwarteschlange“ einen von vier Nachrichtentypen: eine Datendatei, eine Zeichenfolge, eine Zeichenfolgennachricht für eine Variable oder eine Variable. Der Nachrichtentyp „String-Nachricht zu Variable“ kann nur beim Empfangen von Nachrichten verwendet werden.
Dieser Task verwendet einen MSMQ-Verbindungs-Manager, um eine Verbindung mit einer Nachrichtenwarteschlange herzustellen. Weitere Informationen finden Sie unter MSMQ-Verbindungs-Manager. Weitere Informationen zu Message Queuing finden Sie in der MSDN Library.
Der Message Queue-Task setzt voraus, dass der Integration Services-Dienst installiert ist. Manche SQL Server -Komponenten, die Sie für die Installation auf der Seite Zu installierende Komponenten oder der Seite Funktionsauswahl des Installations-Assistenten für SQL Server auswählen können, installieren eine Teilmenge der Integration Services -Komponenten. Diese Komponenten sind für bestimmte Tasks hilfreich, aber die Funktionalität von Integration Services ist begrenzt. Beispielsweise installiert die Option SQL Server Data Tools (SSDT) die zum Entwerfen eines Pakets erforderlichen Integration Services-Komponenten, aber der Integration Services-Dienst wird nicht installiert, sodass der Task „Message Queue“ nicht funktionsfähig ist. Um eine vollständige Installation von Integration Servicessicherzustellen, müssen Sie Integration Services auf der Seite Zu installierende Komponenten auswählen. Weitere Informationen zum Installieren und Ausführen des Tasks „Nachrichtenwarteschlange“ finden Sie unter Installieren von Integration Services.
Hinweis
Die Task „Nachrichtenwarteschlange“ erfüllt den Federal Information Processing Standard (FIPS) 140-2 nicht, wenn das Betriebssystem des Computers im FIPS-Modus konfiguriert ist und die Task Verschlüsselung verwendet. Wenn der Task Nachrichtenwarteschlange keine Verschlüsselung verwendet, kann der Task erfolgreich ausgeführt werden.
Nachrichtentypen
Sie können die Nachrichtentypen, die von der Aufgabe „Message Queue“ zur Verfügung gestellt werden, auf folgende Arten konfigurieren:
Data file gibt an, dass eine Datei die Nachricht enthält. Wenn Sie Nachrichten empfangen, können Sie den Task so konfigurieren, dass die Datei gespeichert wird und eine vorhandene Datei überschreiben wird, und das Paket angeben, von dem der Task Nachrichten empfangen kann.
String definiert die Nachricht als Zeichenfolge. Wenn Sie Nachrichten empfangen, können Sie den Task so konfigurieren, dass die empfangene Zeichenfolge mit einer benutzerdefinierten Zeichenfolge verglichen und abhängig vom Vergleich die entsprechende Maßnahme ergriffen wird. Ein Zeichenfolgenvergleich kann genau sein, die Groß-/Kleinschreibung beachten oder die Groß-/Kleinschreibung ignorieren sowie eine Teilzeichenfolge verwenden.
String message to variable gibt die Quellnachricht als Zeichenfolge an, die an eine Zielvariable gesendet wird. Sie können die Aufgabe so konfigurieren, dass die empfangene Zeichenfolge mit einer benutzerdefinierten Zeichenfolge durch einen exakten, einen Vergleich ohne Beachtung der Groß-/Kleinschreibung oder einen Teilzeichenfolgenvergleich verglichen wird. Dieser Nachrichtentyp ist nur verfügbar, wenn der Task Nachrichten empfängt.
Variable gibt an, dass die Nachricht mindestens eine Variable enthält. Sie können den Task so konfigurieren, dass die in der Nachricht enthaltenen Namen der Variablen angegeben werden. Wenn Sie Nachrichten empfangen, können Sie den Task so konfigurieren, dass sowohl das Paket, von dem Nachrichten empfangen werden können, als auch die Variable, die das Ziel der Nachricht ist, angegeben werden.
Senden von Nachrichten
Beim Konfigurieren des Tasks Nachrichtenwarteschlange zum Senden von Nachrichten können Sie einen der zurzeit von der Message Queuing-Technologie unterstützten Verschlüsselungsalgorithmen, RC2 und RC4, zum Verschlüsseln der Nachricht verwenden. Diese Verschlüsselungsalgorithmen werden inzwischen im Vergleich zu neueren Algorithmen, die von der Message Queuing-Technologie noch nicht unterstützt werden, beide als kryptografisch schwach betrachtet. Daher sollten Sie Ihren Kryptografiebedarf sorgfältig überdenken, wenn Sie Nachrichten mithilfe des Tasks Nachrichtenwarteschlange senden.
Empfangen von Nachrichten
Beim Empfangen von Nachrichten kann die Aufgabe „Nachrichtenwarteschlange“ auf folgende Arten konfiguriert werden:
Umgehen der Nachricht oder Entfernen der Nachricht aus der Warteschlange.
Festlegen eines Time-outs.
Fehlschlagen, wenn ein Timeout auftritt.
Überschreiben einer vorhandenen Datei, falls die Nachricht in einer Data filegespeichert ist.
Speichern der Nachrichtendatei unter einem anderen Dateinamen, falls die Nachricht den Typ Data file message verwendet.
Benutzerdefinierte Protokollmeldungen für die Message-Queue-Aufgabe verfügbar
Die folgende Tabelle listet die benutzerdefinierten Protokolleinträge für den Task „Message Queue“ auf. Weitere Informationen finden Sie unter SSIS-Protokollierung in Integration Services.
| Protokolleintrag | BESCHREIBUNG |
|---|---|
| MSMQAfterOpen | Zeigt an, dass die Aufgabe das Öffnen der Nachrichtenwarteschlange abgeschlossen hat. |
| MSMQBeforeOpen | Zeigt an, dass die Aufgabe begonnen hat, die Nachrichtenwarteschlange zu öffnen. |
| MSMQBeginReceive | Zeigt an, dass die Aufgabe begonnen hat, eine Nachricht zu empfangen. |
| MSMQBeginSend | Zeigt an, dass das Senden einer Meldung begonnen wurde. |
| MSMQEndReceive | Gibt an, dass die Aufgabe den Empfang einer Nachricht abgeschlossen hat. |
| MSMQEndSend | Zeigt an, dass das Senden einer Meldung beendet wurde. |
| MSMQTaskInfo | Enthält beschreibende Informationen zum Task. |
| MSMQTaskTimeOut | Zeigt an, dass bei der Aufgabe eine Zeitüberschreitung aufgetreten ist. |
Konfiguration des Tasks "Nachrichtenwarteschlange"
Sie können Eigenschaften mit dem SSIS -Designer oder programmgesteuert festlegen. Klicken Sie auf das folgende Thema, um Informationen zu den Eigenschaften zu erhalten, die Sie im SSIS -Designer festlegen können:
Weitere Informationen zum programmgesteuerten Festlegen dieser Eigenschaften finden Sie in der Dokumentation zur Microsoft.SqlServer.Dts.Tasks.MessageQueueTask.MessageQueueTask -Klasse im Entwicklerhandbuch.
Verwandte Aufgaben
Weitere Informationen zum Anzeigen dieser Eigenschaften im SSIS -Designer finden Sie unter Festlegen der Eigenschaften eines Tasks oder Containers.
Editor für den Task 'Nachrichtenwarteschlange' (Seite Allgemein)
Auf der Seite Allgemein des Dialogfelds Editor für den Task „Nachrichtenwarteschlange“ können Sie den Task „Nachrichtenwarteschlange“ benennen und beschreiben, das Nachrichtenformat angeben und kennzeichnen, ob vom Task Nachrichten gesendet oder empfangen werden.
Optionen
Name
Geben Sie einen eindeutigen Namen für die Message-Queue-Aufgabe an. Dieser Name wird im Tasksymbol als Bezeichnung verwendet.
Hinweis
Tasknamen müssen innerhalb eines Pakets eindeutig sein.
Beschreibung
Geben Sie eine Beschreibung der Aufgabe „Nachrichtenwarteschlange“ ein.
Use2000Format
Geben Sie an, ob das 2000-Format von Message Queuing (auch bekannt als MSMQ) verwendet werden soll. Der Standardwert ist False.
MSMQConnection
Wählen Sie einen vorhandenen MSMQ-Verbindungs-Manager aus, oder klicken Sie auf <Neue Verbindung>, um einen neuen Verbindungs-Manager zu erstellen.
Verwandte Themen:MSMQ-Verbindungs-Manager , MSMQ-Verbindungs-Manager-Editor
Meldung
Geben Sie an, ob der Nachrichtenwarteschlangen-Task Nachrichten sendet oder empfängt. Wenn Sie Nachricht sendenauswählen, wird im linken Bereich des Dialogfelds die Seite Senden angezeigt; wenn Sie Nachricht empfangenauswählen, wird die Seite Empfangen aufgelistet. Standardmäßig ist dieser Wert auf Nachricht sendenfestgelegt.
Aufgaben-Editor für Nachrichtenwarteschlangen (Seite „Senden“)
Verwenden Sie die Seite Senden des Dialogfelds Task-Editor „Nachrichtenwarteschlange“, um einen Task „Nachrichtenwarteschlange“ zum Senden von Nachrichten aus einem Microsoft SQL Server Integration Services-Paket zu konfigurieren.
Optionen
UseEncryption
Geben Sie an, ob die Nachricht verschlüsselt werden soll. Der Standardwert ist False.
EncryptionAlgorithm
Wenn Sie die Verschlüsselung verwenden möchten, müssen Sie den Namen des verwendeten Verschlüsselungsalgorithmus angeben. Für den Task "Nachrichtenwarteschlange" können die Algorithmen RC2 und RC4 verwendet werden. Die Standardeinstellung lautet RC2.
Hinweis
Der RC4-Algorithmus wird nur aus Gründen der Abwärtskompatibilität unterstützt. Neues Material kann nur mit RC4 oder RC4_128 verschlüsselt werden, wenn die Datenbank den Kompatibilitätsgrad 90 oder 100 besitzt. (Nicht empfohlen.) Verwenden Sie stattdessen einen neueren Algorithmus, z. B. einen der AES-Algorithmen. In der aktuellen Version von SQL Serverkann mit RC4 oder RC4_128 verschlüsseltes Material in jedem Kompatibilitätsgrad entschlüsselt werden.
Wichtig
Diese Verschlüsselungsalgorithmen werden von der Message Queuing-Technologie (auch bekannt als MSMQ) unterstützt. Diese Verschlüsselungsalgorithmen werden inzwischen im Vergleich zu neueren Algorithmen, die von Message Queuing noch nicht unterstützt werden, beide als kryptografisch schwach betrachtet. Daher sollten Sie Ihren Kryptografiebedarf sorgfältig überdenken, wenn Sie Nachrichten mithilfe des Tasks Nachrichtenwarteschlange senden.
MessageType
Wählen Sie den Nachrichtentyp aus. Diese Eigenschaft besitzt die in der folgenden Tabelle aufgeführten Optionen.
| Wert | BESCHREIBUNG |
|---|---|
| Datendateinachricht | Die Nachricht wird in einer Datei gespeichert. Bei Auswahl dieses Wertes wird die dynamische Option DataFileMessageangezeigt. |
| Variable Nachricht | Die Nachricht wird in einer Variable gespeichert. Bei Auswahl dieses Wertes wird die dynamische Option VariableMessageangezeigt. |
| String-Nachricht | Die Nachricht wird im Task 'Nachrichtenwarteschlange' gespeichert. Bei Auswahl dieses Wertes wird die dynamische Option StringMessageangezeigt. |
MessageType (dynamische Optionen)
MessageType = Datendateinachricht
DataFileMessage
Geben Sie den Pfad der Datendatei an, oder klicken Sie auf die Schaltfläche mit den Auslassungspunkten (…) , um nach der Datei zu suchen.
MessageType = Variable Nachricht
VariableMessage
Geben Sie die Variablennamen ein, oder klicken Sie auf die Schaltfläche mit den Auslassungspunkten (…) , und wählen Sie dann die Variablen aus. Die Variablen werden durch Kommas getrennt.
Verwandte Themen: Variablen auswählen
MessageType = Zeichenfolgennachricht
StringMessage
Geben Sie die Zeichenfolgennachricht ein, oder klicken Sie auf die Schaltfläche mit den Auslassungspunkten (…) , und geben Sie dann im Dialogfeld Zeichenfolgennachricht eingeben die Nachricht ein.
Editor für die Nachrichtenwarteschlangenaufgabe (Empfangsseite)
Verwenden Sie die Seite Empfangen des Dialogfelds Editor für den Task „Message Queue“, um einen Message Queue-Task für den Empfang von Microsoft Message Queuing (MSMQ)-Nachrichten zu konfigurieren.
Optionen
RemoveFromMessageQueue
Geben Sie an, ob die Nachricht aus der Warteschlange entfernt werden soll, nachdem sie empfangen wurde. Standardmäßig ist dieser Wert auf Falsefestgelegt.
ErrorIfMessageTimeOut
Geben Sie an, ob der Task fehlschlägt und eine Fehlermeldung angezeigt wird, wenn die Zeit für die Nachricht überschritten wird. Der Standardwert ist False.
TimeoutAfter
Wenn eine Fehlermeldung beim Fehlschlagen des Tasks angezeigt werden soll, geben Sie hier die Wartezeit vor dem Anzeigen der Timeoutmeldung in Sekunden an.
MessageType
Wählen Sie den Nachrichtentyp aus. Diese Eigenschaft besitzt die in der folgenden Tabelle aufgeführten Optionen.
| Wert | BESCHREIBUNG |
|---|---|
| Datendateinachricht | Die Nachricht wird in einer Datei gespeichert. Bei Auswahl dieses Wertes wird die dynamische Option DataFileMessageangezeigt. |
| Variable Nachricht | Die Nachricht wird in einer Variable gespeichert. Bei Auswahl dieses Wertes wird die dynamische Option VariableMessageangezeigt. |
| String-Nachricht | Die Nachricht wird im Task 'Nachrichtenwarteschlange' gespeichert. Bei Auswahl dieses Wertes wird die dynamische Option StringMessageangezeigt. |
| String-Nachricht in Variable | Die Nachricht Bei Auswahl dieses Wertes wird die dynamische Option StringMessageangezeigt. |
MessageType (dynamische Optionen)
MessageType = Datendateinachricht
SaveFileAs
Geben Sie den Pfad der zu verwendenden Datei an, oder klicken Sie auf die Schaltfläche mit den Auslassungspunkten (...) , um nach der Datei zu suchen.
Overwrite
Geben Sie an, dass die Daten in einer vorhandenen Datei überschrieben werden sollen, wenn der Inhalt einer Datendateinachricht gespeichert wird. Der Standardwert ist False.
Filter
Geben Sie an, ob auf die Nachricht ein Filter angewendet werden soll. Diese Eigenschaft besitzt die in der folgenden Tabelle aufgeführten Optionen.
| Wert | BESCHREIBUNG |
|---|---|
| Kein Filter | Der Task filtert keine Nachrichten. Wenn Sie diesen Wert auswählen, wird die dynamische Option IdentifierReadOnlyangezeigt. |
| Aus dem Paket | Die Nachricht empfängt nur Nachrichten vom angegebenen Paket. Wenn Sie diesen Wert auswählen, wird die dynamische Option Identifierangezeigt. |
Dynamische Optionen filtern
Filter = Kein Filter
IdentifierReadOnly
Diese Option ist schreibgeschützt. Sie kann leer sein oder die GUID eines Pakets enthalten, wenn die Eigenschaft Filter vorher festgelegt wurde.
Filter = Aus dem Paket
Bezeichner
Wenn Sie einen Filter anwenden möchten, geben Sie den eindeutigen Bezeichner des Pakets ein, aus dem die Nachrichten empfangen werden können, oder klicken Sie auf die Schaltfläche mit den Auslassungspunkten (...) , und geben Sie das Paket an.
Verwandte Themen:Paket auswählen
MessageType = Variable Nachricht
Filter
Geben Sie an, ob auf Nachrichten ein Filter angewendet werden soll. Diese Eigenschaft besitzt die in der folgenden Tabelle aufgeführten Optionen.
| Wert | BESCHREIBUNG |
|---|---|
| Kein Filter | Der Task filtert keine Nachrichten. Wenn Sie diesen Wert auswählen, wird die dynamische Option IdentifierReadOnlyangezeigt. |
| Aus Paket | Die Nachricht empfängt ausschließlich Nachrichten vom angegebenen Paket. Wenn Sie diesen Wert auswählen, wird die dynamische Option Identifierangezeigt. |
Variable
Geben Sie den Variablennamen an, oder klicken Sie auf <Neue Variable>, und konfigurieren Sie anschließend eine neue Variable.
Verwandte Themen:Variable hinzufügen
Dynamische Optionen filtern
Filter = Kein Filter
IdentifierReadOnly
Diese Option ist leer.
Filter = Aus dem Paket
Bezeichner
Wenn Sie einen Filter anwenden möchten, geben Sie den eindeutigen Bezeichner des Pakets ein, aus dem die Nachrichten empfangen werden können, oder klicken Sie auf die Schaltfläche mit den Auslassungspunkten (...) , und geben Sie das Paket an.
Verwandte Themen:Paket auswählen
MessageType = Zeichenfolgennachricht
Vergleichen
Geben Sie an, ob auf Nachrichten ein Filter angewendet werden soll. Diese Eigenschaft besitzt die in der folgenden Tabelle aufgeführten Optionen.
| Wert | BESCHREIBUNG |
|---|---|
| None | Die Nachrichten werden nicht verglichen. |
| Genaue Übereinstimmung | Die Nachrichten müssen genau mit der Zeichenfolge in der Option CompareString übereinstimmen. |
| Groß-/Kleinschreibung ignorieren | Die Nachricht muss mit der Zeichenfolge in der Option CompareString übereinstimmen, der Vergleich unterscheidet jedoch nicht zwischen Groß- und Kleinschreibung. |
| Enthält | Die Nachrichten müssen die Zeichenfolge in der Option CompareString enthalten. |
CompareString
Geben Sie hier die Zeichenfolge an, mit der die Nachricht verglichen wird, wenn die Option Vergleichen nicht auf Keinefestgelegt ist.
MessageType = Zeichenkettenmeldung an Variable
Vergleichen
Geben Sie an, ob auf Nachrichten ein Filter angewendet werden soll. Diese Eigenschaft besitzt die in der folgenden Tabelle aufgeführten Optionen.
| Wert | BESCHREIBUNG |
|---|---|
| None | Die Nachrichten werden nicht verglichen. |
| Genaue Übereinstimmung | Die Nachricht muss genau mit der Zeichenfolge in der Option CompareString übereinstimmen. |
| Groß-/Kleinschreibung ignorieren | Die Nachricht muss mit der Zeichenfolge in der Option CompareString übereinstimmen, der Vergleich erfolgt jedoch ohne Beachtung der Groß- und Kleinschreibung. |
| Enthält | Die Nachricht muss die Zeichenfolge in der Option CompareString enthalten. |
CompareString
Geben Sie hier die Zeichenfolge an, mit der die Nachricht verglichen wird, wenn die Option Vergleichen nicht auf Keinefestgelegt ist.
Variable
Geben Sie den Namen der Variablen zum Speichern der Nachricht ein, oder klicken Sie auf <Neue Variable>, und konfigurieren Sie anschließend eine neue Variable.
Verwandte Themen:Variable hinzufügen
Variablen auswählen
Mithilfe des Dialogfelds Variablen auswählen geben Sie die Variablen an, die beim Vorgang des Sendens einer Nachricht im Task Nachrichtenwarteschlange verwendet werden. Die Liste Verfügbare Variablen enthält Systemvariablen und benutzerdefinierte Variablen, die sich auf den Task „Nachrichtenwarteschlange“ oder dessen übergeordneten Container beziehen. Der Task verwendet die Variablen der Liste Ausgewählte Variablen .
Optionen
Verfügbare Variablen
Wählen Sie eine oder mehrere Variablen aus.
Ausgewählte Variablen
Wählen Sie eine oder mehrere Variablen aus.
Nach rechts zeigende Pfeile
Verschiebt die ausgewählten Variablen in die Liste Ausgewählte Variablen .
Linkspfeile
Verschiebt die ausgewählten Variablen wieder in die Liste Verfügbare Variablen .
Neue Variable
Erstellt eine neue Variable.
Verwandte Themen:Variable hinzufügen