Konfigurieren von SFTP in einer Kopieraktivität
In diesem Artikel wird beschrieben, wie Sie die Kopieraktivität in der Datenpipeline verwenden, um Daten von SFTP zu kopieren.
Unterstütztes Format:
SFTP unterstützt die folgenden Dateiformate. Informationen zu formatbasierten Einstellungen finden Sie in den jeweiligen Artikeln.
- Avro-Format
- Binärformat
- Textformat mit Trennzeichen
- Excel-Format
- JSON-Format
- ORC-Format
- Parquet-Format
- XML-Format
Unterstützte Konfiguration
Die Konfiguration der einzelnen Registerkarten unter der Kopieraktivität finden Sie in den folgenden Abschnitten.
Allgemein
Informationen zum Konfigurieren der Registerkarte Allgemein finden Sie unter Allgemeine Einstellungen.
`Source`
Wechseln Sie zur Registerkarte Quelle, um die Quelle der Kopieraktivität zu konfigurieren. Die ausführliche Konfiguration finden Sie im Folgenden.
Die folgenden drei Eigenschaften sind erforderlich:
Datenspeichertyp: Wählen Sie Extern aus.
Verbindung: Wählen Sie eine SFTP-Verbindung aus der Verbindungsliste aus. Wenn keine Verbindung existiert, erstellen Sie eine neue SFTP-Verbindung, indem Sie Neu auswählen.
Dateipfadtyp: Wählen Sie je nach der Art und Weise, wie Sie Dateien lesen möchten, Dateipfad, Platzhalterdateipfad oder Dateiliste aus.
Dateipfad: Wenn Sie diesen Typ auswählen, geben Sie den Quelldateipfad an. Sie können Durchsuchen auswählen, um die Quelldateien auszuwählen oder den Dateipfad manuell einzugeben.
Platzhalterdateipfad: Wenn Sie diesen Typ auswählen, geben Sie die Platzhalterpfade an, um Ihre Quellordner oder -dateien zu filtern.
Folgende Platzhalter sind zulässig:
*
(entspricht null [0] oder mehr Zeichen) und?
(entspricht null [0] oder einem einzelnen Zeichen). Verwenden Sie^
als Escapezeichen, wenn Ihr Ordnername einen Platzhalter oder dieses Escapezeichen enthält. Weitere Beispiele finden Sie unter Beispiele für Ordner- und Dateifilter.Platzhalterordnerpfad: Geben Sie den Ordnerpfad mit Platzhalterzeichen an, um Quellordner zu filtern.
Platzhalterdateiname: Geben Sie den Dateinamen mit Platzhalterzeichen unter dem angegebenen Ordnerpfad/Platzhalterordnerpfad an, um Quelldateien zu filtern.
Dateiliste: Wenn Sie diesen Typ auswählen, geben Sie den Ordnerpfad und den Pfad zur Dateiliste an, um einen bestimmten Satz von Dateien zu kopieren. Verweisen Sie auf eine Textdatei, die eine Liste der zu kopierenden Dateien enthält, und zwar eine Datei pro Zeile. Weitere Beispiele finden Sie unter Beispiele für Dateilisten.
Ordnerpfad: Geben Sie den Pfad zu Ihrem Quellordner an. Sie ist erforderlich.
Pfad zur Dateiliste: Geben Sie den Pfad der Textdatei an, die eine Liste der Dateien enthält, die Sie kopieren möchten.
Dateiformat: Wählen Sie das verwendete Dateiformat aus der Dropdownliste aus. Wählen Sie Einstellungen aus, um das Dateiformat zu konfigurieren. Detaillierte Informationen zu den Einstellungen der verschiedenen Dateiformate finden Sie in den Artikeln unter Unterstützte Formate.
Unter Erweitert können Sie die folgenden Felder angeben:
Nach der letzten Änderung filtern: Die Dateien werden nach den von Ihnen angegebenen Daten der letzten Änderung gefiltert. Diese Eigenschaft gilt nicht, wenn Sie Ihren Dateipfadtyp als Liste der Dateien konfigurieren.
- Startzeit (UTC): Die Dateien werden ausgewählt, wenn der Zeitpunkt ihrer letzten Änderung größer oder gleich der konfigurierten Zeitangabe ist.
- Endzeit (UTC): Die Dateien werden ausgewählt, wenn der Zeitpunkt ihrer letzten Änderung kleiner als die konfigurierte Zeitangabe ist.
Wenn Startzeit (UTC) einen datetime-Wert aufweist, aber Endzeit (UTC) NULL ist, bedeutet dies, dass die Dateien ausgewählt werden, deren Attribut für die letzte Änderung größer oder gleich dem datetime-Wert ist. Wenn Endzeit (UTC) einen datetime-Wert aufweist, aber Startzeit (UTC) NULL ist, bedeutet dies, dass die Dateien ausgewählt werden, deren Attribut für die letzte Änderung kleiner als der datetime-Wert ist. Die Eigenschaften können NULL sein, was bedeutet, dass kein Dateiattributfilter auf die Daten angewendet wird.
Segmentierung deaktivieren: Die Segmentierung wurde entwickelt, um die Leistung zu optimieren, und geschieht im Hintergrund. Mit dieser Option können Sie die Segmentierung in jeder Datei deaktivieren. Beim Kopieren von Daten vom SFTP-Server versucht der Dienst, zuerst die Dateilänge abzurufen, dann die Datei in mehrere Teile aufzuteilen und diese parallel zu lesen. Geben Sie an, ob der SFTP-Server das Abrufen der Dateilänge oder das Lesen aus einem bestimmten Offset unterstützt. Standardmäßig ist sie deaktiviert.
Partitionsermittlung aktivieren: Geben Sie an, ob die Partitionen anhand des Dateipfads analysiert und als zusätzliche Quellspalten hinzugefügt werden sollen. Diese Option ist standardmäßig deaktiviert und wird nicht unterstützt, wenn Sie das Binärdateiformat verwenden.
Stammverzeichnis der Partition: Wenn die Partitionsermittlung aktiviert ist, geben Sie den absoluten Stammverzeichnispfad an, um partitionierte Ordner als Datenspalten zu lesen.
Ohne Angabe gilt standardmäßig Folgendes:- Wenn Sie den Dateipfad oder die Liste der Dateien in der Quelle verwenden, ist der Partitionsstammpfad der von Ihnen konfigurierte Pfad.
- Wenn Sie einen Platzhalterordnerfilter verwenden, ist der Stammpfad der Partition der Unterpfad vor dem ersten Platzhalter.
Angenommen, Sie konfigurieren den Pfad beispielsweise als
root/folder/year=2020/month=08/day=27
:- Wenn Sie für den Stammpfad der Partition
root/folder/year=2020
angeben, generiert die Kopieraktivität zusätzlich zu den Spalten in den Dateien zwei weitere Spalten für Monat und Tag mit den Werten „08“ bzw. „27“. - Wenn kein Stammpfad für die Partition angegeben wird, werden keine zusätzlichen Spalten generiert.
Maximale Anzahl gleichzeitiger Verbindungen: Diese Eigenschaft gibt die Obergrenze der gleichzeitigen Verbindungen zum Datenspeicher an, die während des Ausführens der Aktivität hergestellt werden. Geben Sie diesen Wert nur an, wenn Sie die Anzahl der gleichzeitigen Verbindungen begrenzen möchten.
Zusätzliche Spalten: Fügen Sie zusätzliche Datenspalten hinzu, um den relativen Pfad oder statischen Wert der Quelldateien zu speichern. Für Letzteres wird ein Ausdruck unterstützt. Weitere Informationen finden Sie unter Hinzufügen zusätzlicher Spalten während des Kopiervorgangs.
Destination
Wechseln Sie zur Registerkarte Ziel, um das Ziel der Kopieraktivität zu konfigurieren. Die ausführliche Konfiguration finden Sie im Folgenden.
- Datenspeichertyp: Wählen Sie Extern aus.
- Verbindung: Wählen Sie eine SFTP-Verbindung aus der Verbindungsliste aus. Wenn keine Verbindung existiert, erstellen Sie eine neue SFTP-Verbindung, indem Sie Neu auswählen.
- Dateipfad: Geben Sie den Dateipfad an, in den Ihre Daten geschrieben werden sollen. Sie können Durchsuchen auswählen, um die Quelldateien auszuwählen oder den Dateipfad manuell einzugeben.
- Dateiformat: Wählen Sie das verwendete Dateiformat aus der Dropdownliste aus. Wählen Sie Einstellungen aus, um das Dateiformat zu konfigurieren. Detaillierte Informationen zu den Einstellungen der verschiedenen Dateiformate finden Sie in den Artikeln unter Unterstützte Formate.
Unter Erweitert können Sie die folgenden Felder angeben:
Kopierverhalten: Geben Sie das Kopierverhalten an, wenn es sich bei der Quelle um Dateien aus einem dateibasierten Datenspeicher handelt. Wählen Sie eine der folgenden Eigenschaften aus.
- FlattenHierarchy: Alle Dateien aus dem Quellordner befinden sich auf der ersten Ebene des Zielordners. Die Namen für die Zieldateien werden automatisch generiert.
- MergeFiles: Alle Dateien aus dem Quellordner werden in einer Datei zusammengeführt. Wenn der Dateiname angegeben wurde, entspricht der zusammengeführte Dateiname dem angegebenen Namen. Ansonsten handelt es sich um einen automatisch generierten Dateinamen.
- PreserveHierarchy (Standard): Behält die Dateihierarchie im Zielordner bei. Der relative Pfad der Quelldatei zum Quellordner ist mit dem relativen Pfad der Zieldatei zum Zielordner identisch.
- Dynamischen Inhalt hinzufügen: Wählen Sie diese Option aus, um das gewünschte Kopierverhalten mithilfe von dynamischen Inhalten anzugeben.
Maximale Anzahl gleichzeitiger Verbindungen: Die Obergrenze der gleichzeitigen Verbindungen zum Datenspeicher, die während des Ausführens der Aktivität hergestellt werden. Geben Sie diesen Wert nur an, wenn Sie die Anzahl der gleichzeitigen Verbindungen begrenzen möchten.
Vorgangstimeout (Minuten) :Geben Sie das Timeout für das Schreiben der einzelnen Blöcke auf den SFTP-Server an. Der Standardwert ist 60 Minuten
Hochladen mit temporärer Datei: Geben Sie an, ob Sie temporäre Dateien hochladen und umbenennen oder direkt in den Zielordner oder Dateispeicherort schreiben möchten. Standardmäßig ist die Option aktiviert. Das heißt, dass der Dienst zuerst in temporäre Dateien schreibt und diese umbenennt, wenn der Upload abgeschlossen ist.
Diese Sequenz hilft, (1) Konflikte zu vermeiden, die zu einer beschädigten Datei führen könnten, wenn andere Prozesse in dieselbe Datei schreiben, und (2) sicherzustellen, dass die Originalversion der Datei während der Übertragung vorhanden ist. Wenn Ihr SFTP-Server keine Umbenennungsvorgänge unterstützt, deaktivieren Sie diese Option, und stellen Sie sicher, dass keine gleichzeitigen Schreibvorgänge für die Zieldatei ausgeführt werden.
Tipp
Wenn Sie beim Schreiben von Daten in SFTP den Fehler „UserErrorSftpPathNotFound“, „UserErrorSftpPermissionDenied“ oder „SftpOperationFail“ erhalten und der von Ihnen verwendete SFTP-Benutzer über die entsprechende Berechtigung verfügt, überprüfen Sie, ob Ihr Umbenennungsvorgang für die Unterstützungsdatei des SFTP-Servers funktioniert. Andernfalls deaktivieren Sie die Option Hochladen mit temporärer Datei, und versuchen Sie es erneut.
Zuordnung
Für die Konfiguration der Registerkarte Zuordnung wechseln Sie zu Konfigurieren der Zuordnungen auf der Registerkarte „Zuordnung“. Wenn Sie „Binär“ als Dateiformat auswählen, wird die Zuordnung nicht unterstützt.
Einstellungen
Wechseln Sie für die Konfiguration der Registerkarte Einstellungen zu Konfigurieren der anderen Einstellungen auf der Registerkarte „Einstellungen“.
Tabellenzusammenfassung
Die folgende Tabelle enthält weitere Informationen zur Kopieraktivität in SFTP.
Quelle
Name | Beschreibung | Wert | Erforderlich | JSON-Skripteigenschaft |
---|---|---|---|---|
Datenspeichertyp | Ihr Datenspeichertyp | Extern | Ja | / |
Verbindung | Ihre SFTP-Verbindung mit dem Quelldatenspeicher | < Ihre SFTP-Verbindung > | Ja | Verbindung |
Dateipfadtyp | Der Dateipfadtyp, der zum Abrufen von Quelldaten verwendet wird. | • Dateipfad • Platzhalterdateipfad • Dateiliste |
Ja | / |
Dateipfad | Der Pfad zur Quelldatei. | < Dateipfad> | Ja | fileName folderPath |
Platzhalterpfade | Der Platzhalterpfad zur Quelldatei. | < Ihr Platzhalterdateipfad > | „Ja“ für Platzhalterdateiname | wildcardFolderPath wildcardFileName |
Ordnerpfad | Der Pfad zu Ihrem Quellordner. | < Ihr Ordnerpfad> | Ja | folderPath |
Pfad zur Dateiliste | Gibt an, dass eine bestimmte Dateigruppe kopiert werden soll. Verweisen Sie auf eine Textdatei, die eine Liste der zu kopierenden Dateien enthält, und zwar eine Datei pro Zeile. | < Dateilistenpfad > | Nein | fileListPath |
Dateiformat | Das Dateiformat der Quelldaten. Detaillierte Informationen zu den verschiedenen Dateiformate finden Sie in den Artikeln unter Unterstützte Formate. | / | Ja | / |
Nach der letzten Änderung filtern | Die Dateien mit dem Zeitpunkt der letzten Änderung im Bereich [Startzeit, Endzeit] werden für die weitere Verarbeitung gefiltert. Die Zeitangabe wird auf die UTC-Zeitzone im Format yyyy-mm-ddThh:mm:ss.fffZ angewendet. Diese Eigenschaften können übersprungen werden, was bedeutet, dass kein Dateiattributfilter angewendet wird. Diese Eigenschaft gilt nicht, wenn Sie Ihren Dateipfadtyp als Liste der Dateien konfigurieren. |
datetime | Nein | modifiedDatetimeStart modifiedDatetimeEnd |
Segmentierung deaktivieren | Die Segmentierung wurde entwickelt, um die Leistung zu optimieren, und geschieht im Hintergrund. Mit dieser Option können Sie die Segmentierung in jeder Datei deaktivieren. Beim Kopieren von Daten vom SFTP-Server versucht der Dienst, zuerst die Dateilänge abzurufen, dann die Datei in mehrere Teile aufzuteilen und diese parallel zu lesen. Geben Sie an, ob der SFTP-Server das Abrufen der Dateilänge oder das Lesen aus einem bestimmten Offset unterstützt. | Aktiviert oder deaktiviert (Standardwert) | Nein | disableChunking: TRUE oder FALSE (Standardwert) |
Partitionsermittlung aktivieren | Gibt an, ob die Partitionen aus dem Dateipfad analysiert und als zusätzliche Quellspalten hinzugefügt werden sollen. | Aktiviert oder deaktiviert (Standardwert) | Nein | enablePartitionDiscovery: TRUE oder FALSE (Standardwert) |
Partitionsstammpfad | Der absolute Stammpfad der Partition zum Lesen von partitionierten Ordnern als Datenspalten. Geben Sie diese Option an, wenn die Partitionsermittlung aktiviert ist. | < Partitionsstammpfad > | Nein | partitionRootPath |
Maximal zulässige Anzahl paralleler Verbindungen | Die Obergrenze gleichzeitiger Verbindungen mit dem Datenspeicher während der Aktivitätsausführung. Geben Sie diesen Wert nur an, wenn Sie die Anzahl der gleichzeitigen Verbindungen begrenzen möchten. | < Obergrenze für gleichzeitige Verbindungen > (Integer) |
Nein | maxConcurrentConnections |
Zusätzliche Spalten | Fügen Sie zusätzliche Datenspalten hinzu, um den relativen Pfad oder statischen Wert der Quelldateien zu speichern. Für Letzteres wird ein Ausdruck unterstützt. Weitere Informationen finden Sie unter Hinzufügen zusätzlicher Spalten während des Kopiervorgangs | • Name • Wert |
Nein | additionalColumns: • Name • Wert |
Destination
Name | Beschreibung | Wert | Erforderlich | JSON-Skripteigenschaft |
---|---|---|---|---|
Datenspeichertyp | Ihr Datenspeichertyp | Extern | Ja | / |
Verbindung | Ihre Verbindung mit der SFTP-Quelle. | < Ihre Verbindung > | Ja | Verbindung |
Dateipfad | Der Dateipfad für Ihre Zieldaten. | Dateipfad des Ziels | Ja | folderPath fileName |
Dateiformat | Das Dateiformat der Quelldaten. Detaillierte Informationen zu den verschiedenen Dateiformate finden Sie in den Artikeln unter Unterstützte Formate. | / | Ja | / |
Kopierverhalten | Definiert das Kopierverhalten, wenn es sich bei der Quelle um Dateien aus einem dateibasierten Datenspeicher handelt. | • Hierarchie vereinfachen • Zusammenführen von Dateien • Hierarchie beibehalten |
Nein | copyBehavior: * FlattenHierarchy – MergeFiles – PreserveHierarchy |
Maximal zulässige Anzahl paralleler Verbindungen | Die Obergrenze gleichzeitiger Verbindungen mit dem Datenspeicher während der Aktivitätsausführung. Geben Sie diesen Wert nur an, wenn Sie die Anzahl der gleichzeitigen Verbindungen begrenzen möchten. | <Maximal zulässige Anzahl gleichzeitiger Verbindungen> | Nein | maxConcurrentConnections |
Zeitlimit für Vorgang (Minuten) | Das Zeitlimit für das Schreiben der einzelnen Blöcke auf den SFTP-Server. | < Ihr Zeitlimit für den Vorgang > Der Standardwert ist 60 |
Nein | operationTimeout |
Hochladen mit temporärer Datei | Gibt an, ob temporäre Dateien hochgeladen und umbenannt werden sollen. Deaktivieren Sie diese Option, wenn Ihr SFTP-Server den Umbenennungsvorgang nicht unterstützt. | Aktiviert (Standardwert) oder deaktiviert | Nein | useTempFileRename: TRUE (Standardwert) oder FALSE |