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:
Azure Data Factory
Azure Synapse Analytics
Tipp
Data Factory in Microsoft Fabric ist die nächste Generation von Azure Data Factory mit einer einfacheren Architektur, integrierter KI und neuen Features. Wenn Sie mit der Datenintegration noch nicht vertraut sind, beginnen Sie mit Fabric Data Factory. Vorhandene ADF-Workloads können auf Fabric aktualisieren, um auf neue Funktionen in data Science, Echtzeitanalysen und Berichterstellung zuzugreifen.
Nutzen Sie diesen Artikel, wenn Sie die ORC-Dateien analysieren oder Daten im ORC-Format schreiben möchten.
DAS ORC-Format wird für die folgenden Connectors unterstützt: Amazon S3, Amazon S3 Kompatibler Speicher, Azure Blob, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2, Azure Files, File System, FTP, Google Cloud Storage, HDFS, HTTP, Oracle Cloud Storage und SFTP.
Dataset-Eigenschaften
Eine vollständige Liste mit den Abschnitten und Eigenschaften, die zum Definieren von Datasets zur Verfügung stehen, finden Sie im Artikel zu Datasets. Dieser Abschnitt enthält eine Liste der Eigenschaften, die vom ORC-Dataset unterstützt werden.
| Eigenschaft | Beschreibung | Erforderlich |
|---|---|---|
| type | Die type-Eigenschaft des Datasets muss auf Orc festgelegt werden. | Ja |
| location | Speicherorteinstellungen der Datei(en) Jeder dateibasierte Connector verfügt unter location über seinen eigenen Speicherorttyp und unterstützte Eigenschaften.
Informationen hierzu finden Sie im Abschnitt > „Dataset-Eigenschaften“ des Artikels über Connectors. |
Ja |
| compressionCodec | Der Komprimierungscodec, der beim Schreiben in ORC-Dateien verwendet werden soll. Beim Lesen aus ORC-Dateien bestimmen Data Factorys den Codec für die Komprimierung automatisch anhand der Dateimetadaten. Unterstützte Typen sind none, zlib, snappy (Standard) und lzo. Beachten Sie, dass derzeit Copy-Aktivität LZO beim Lesen/Schreiben von ORC-Dateien nicht unterstützt. |
Nein |
Im Folgenden finden Sie ein Beispiel für ORC-Datasets für Azure Blob Storage:
{
"name": "OrcDataset",
"properties": {
"type": "Orc",
"linkedServiceName": {
"referenceName": "<Azure Blob Storage linked service name>",
"type": "LinkedServiceReference"
},
"schema": [ < physical schema, optional, retrievable during authoring > ],
"typeProperties": {
"location": {
"type": "AzureBlobStorageLocation",
"container": "containername",
"folderPath": "folder/subfolder",
}
}
}
}
Beachten Sie folgende Punkte:
- Komplexe Datentypen (z. B. MAP, LIST, STRUCT) werden derzeit nur in Datenflüssen, aber nicht in der Kopieraktivität unterstützt. Wenn Sie komplexe Typen in Datenflüssen verwenden möchten, importieren Sie das Dateischema nicht in das Dataset und lassen das Schema im Dataset leer. Importieren Sie dann die Projektion in die Quelltransformation.
- Ein Leerzeichen im Spaltennamen wird nicht unterstützt.
Copy-Aktivität Eigenschaften
Eine vollständige Liste mit den Abschnitten und Eigenschaften zum Definieren von Aktivitäten finden Sie im Artikel Pipelines. Dieser Abschnitt enthält eine Liste der Eigenschaften, die von der ORC-Quelle und -Senke unterstützt werden.
ORC als Quelle
Die folgenden Eigenschaften werden im Abschnitt *source* der Kopieraktivität unterstützt.
| Eigenschaft | Beschreibung | Erforderlich |
|---|---|---|
| type | Die type-Eigenschaft der Quelle der Kopieraktivität muss auf OrcSource festgelegt werden. | Ja |
| storeSettings | Eine Gruppe von Eigenschaften für das Lesen von Daten aus einem Datenspeicher. Jeder dateibasierte Connector verfügt unter storeSettings über eigene unterstützte Leseeinstellungen.
Details finden Sie im Connectorartikel -> Copy-Aktivität Eigenschaftenabschnitt. |
Nein |
ORC als Senke
Die folgenden Eigenschaften werden im Abschnitt *sink* der Kopieraktivität unterstützt.
| Eigenschaft | Beschreibung | Erforderlich |
|---|---|---|
| type | Die type-Eigenschaft der Senke der Kopieraktivität muss auf OrcSink festgelegt werden. | Ja |
| formatSettings | Eine Gruppe von Eigenschaften. Weitere Informationen zu ORC-Schreibeinstellungen finden Sie in der Tabelle unten. | Nein |
| storeSettings | Eine Gruppe von Eigenschaften für das Schreiben von Daten in einen Datenspeicher. Jeder dateibasierte Connector verfügt unter storeSettings über eigene unterstützte Schreibeinstellungen.
Details finden Sie im Connectorartikel -> Copy-Aktivität Eigenschaftenabschnitt. |
Nein |
Unterstützte ORC-Schreibeinstellungen unter formatSettings:
| Eigenschaft | Beschreibung | Erforderlich |
|---|---|---|
| type | Der Typ von „formatSettings“ muss auf OrcWriteSettings festgelegt werden. | Ja |
| maxRowsPerFile | Wenn Sie Daten in einen Ordner schreiben, können Sie in mehrere Dateien zu schreiben und die maximale Anzahl von Zeilen pro Datei angeben. | Nein |
| fileNamePrefix | Gilt, wenn maxRowsPerFile konfiguriert ist.Geben Sie das Dateinamenpräfix beim Schreiben von Daten in mehrere Dateien an, das zu diesem Muster führt: <fileNamePrefix>_00000.<fileExtension>. Wenn keine Angabe erfolgt, wird das Dateinamenpräfix automatisch generiert. Diese Eigenschaft findet keine Anwendung, wenn die Quelle ein dateibasierter Speicher oder ein Datenspeicher mit aktivierter Partitionsoption ist. |
Nein |
Eigenschaften von Mapping Data Flow
Beim Zuordnen von Datenflüssen können Sie das ORC-Format in den folgenden Datenspeichern lesen und schreiben: Azure Blob Storage, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2 und SFTP, und Sie können das ORC-Format in Amazon S3 lesen.
Sie können auf ORC-Dateien mit einem ORC-Dataset oder einem Inlinedataset verweisen.
Quelleigenschaften
In der folgenden Tabelle sind die von einer ORC-Quelle unterstützten Eigenschaften aufgeführt. Sie können diese Eigenschaften auf der Registerkarte Quelloptionen bearbeiten.
Bei Verwendung eines Inlinedatasets werden zusätzliche Dateieinstellungen angezeigt. Diese entsprechen den Eigenschaften, die im Abschnitt zu den Dataseteigenschaften beschrieben sind.
| Name | Beschreibung | Erforderlich | Zulässige Werte | Datenflussskript-Eigenschaft |
|---|---|---|---|---|
| Format | Das Format muss orc sein |
ja | orc |
format |
| Platzhalterpfade | Alle Dateien, die dem Platzhalterpfad entsprechen, werden verarbeitet. Überschreibt den Ordner und den Dateipfad, die im Dataset festgelegt sind. | nein | String[] | wildcardPaths |
| Partitionsstammpfad | Für partitionierte Dateidaten können Sie einen Partitionsstammpfad eingeben, um partitionierte Ordner als Spalten zu lesen. | nein | String | partitionRootPath |
| Liste mit den Dateien | Gibt an, ob Ihre Quelle auf eine Textdatei verweist, in der die zu verarbeitenden Dateien aufgelistet sind. | nein |
true oder false |
fileList |
| Spalte, in der der Dateiname gespeichert wird | Erstellt eine neue Spalte mit dem Namen und Pfad der Quelldatei. | nein | String | rowUrlColumn |
| Nach Abschluss | Löscht oder verschiebt die Dateien nach der Verarbeitung. Dateipfad beginnt mit dem Containerstamm | nein | Löschen: true oder false Verschieben: [<from>, <to>] |
purgeFiles moveFiles |
| Nach der letzten Änderung filtern | Filtern Sie Dateien nach dem Zeitpunkt ihrer letzten Änderung. | nein | Zeitstempel | modifiedAfter modifiedBefore |
| Finden keiner Dateien zulässig | „true“ gibt an, dass kein Fehler ausgelöst wird, wenn keine Dateien gefunden werden. | nein |
true oder false |
ignoreNoFilesFound |
Quellbeispiel
Das zugehörige Datenflussskript einer ORC-Quellkonfiguration lautet wie folgt:
source(allowSchemaDrift: true,
validateSchema: false,
rowUrlColumn: 'fileName',
format: 'orc') ~> OrcSource
Senkeneigenschaften
In der folgenden Tabelle sind die von einer ORC-Senke unterstützten Eigenschaften aufgeführt. Sie können diese Eigenschaften auf der Registerkarte Einstellungen bearbeiten.
Bei Verwendung eines Inlinedatasets werden zusätzliche Dateieinstellungen angezeigt. Diese entsprechen den Eigenschaften, die im Abschnitt zu den Dataseteigenschaften beschrieben sind.
| Name | Beschreibung | Erforderlich | Zulässige Werte | Datenflussskript-Eigenschaft |
|---|---|---|---|---|
| Format | Das Format muss orc sein |
ja | orc |
format |
| Ordner löschen | Wenn der Zielordner vor dem Schreiben gelöscht wird. | nein |
true oder false |
truncate |
| Dateinamenoption | Das Namensformat der geschriebenen Daten. Standardmäßig eine Datei pro Partition im Format part-#####-tid-<guid>. |
nein | Muster: Zeichenfolge Pro Partition: Zeichenfolge[] Als Daten in Spalte: Zeichenfolge Ausgabe in eine einzelne Datei: ['<fileName>'] |
filePattern partitionFileNames rowUrlColumn partitionFileNames |
Senkenbeispiel
Das zugehörige Datenflussskript einer ORC-Senkenkonfiguration lautet wie folgt:
OrcSource sink(
format: 'orc',
filePattern:'output[n].orc',
truncate: true,
allowSchemaDrift: true,
validateSchema: false,
skipDuplicateMapInputs: true,
skipDuplicateMapOutputs: true) ~> OrcSink
Verwenden von selbst gehosteten Integration Runtime
Wichtig
Zum Kopieren von selbst gehosteten Integration Runtime z. B. zwischen lokalen und Cloud-Datenspeichern, wenn Sie ORC-Dateien nicht as-is kopieren, Sie müssen die 64-Bit JRE 8 (Java Runtime Environment) oder OpenJDK und Microsoft Visual C++ 2010 Redistributable Package auf Ihrem IR-Computer installieren. Weitere Details finden Sie im nächsten Absatz.
Für die Kopie, die auf selbst gehosteter IR mit ORC-Datei serialisierung/Deserialisierung ausgeführt wird, sucht der Dienst die Java Laufzeit, indem zuerst die Registrierung (SOFTWARE\JavaSoft\Java Runtime Environment\{Current Version}\JavaHome) für JRE überprüft wird, falls nicht gefunden, zweitens die Systemvariable JAVA_HOME für OpenJDK.
- Für JRE: Die 64-Bit-Integration Runtime erfordert die 64-Bit-JRE. Diese steht hier zur Verfügung.
- Für OpenJDK: Die Unterstützung ist seit der IR-Version 3.13 verfügbar. Packen Sie die Datei „jvm.dll“ zusammen mit allen anderen erforderlichen OpenJDK-Assemblys in einem selbstgehosteten IR-Computer, und legen Sie die Umgebungsvariable JAVA_HOME des Systems entsprechend fest.
- So installieren Sie Microsoft Visual C++ 2010 Redistributable Package: Visual C++ 2010 Redistributable Package ist bei Installationen mit selbstgehosteter Integration Runtime nicht installiert. Diese steht hier zur Verfügung.
Tipp
Wenn Sie Daten mithilfe von selbst gehosteten Integration Runtime in/aus dem ORC-Format kopieren und den Fehler "Beim Aufrufen von java ist ein Fehler aufgetreten, Meldung: java.lang. OutOfMemoryError:Java heap space", können Sie eine Umgebungsvariable _JAVA_OPTIONS auf dem Computer hinzufügen, auf dem die selbst gehostete IR gehostet wird, um die Min/Max-Heap-Größe für JVM anzupassen, um eine solche Kopie zu ermöglichen, und dann die Pipeline erneut ausführen.
Beispiel: Legen Sie für die Variable _JAVA_OPTIONS den Wert -Xms256m -Xmx16g fest. Das Flag Xms gibt den anfänglichen Speicherzuordnungspool für einen Java virtual Machine (JVM) an, während Xmx den maximalen Speicherzuordnungspool angibt. Das bedeutet, dass die JVM mit einer Speichergröße von Xms gestartet wird und eine maximale Speichergröße von Xmx verwenden kann. Standardmäßig verwendet der Dienst mindestens 64 MB und maximal 1G.
Zugehöriger Inhalt
- übersicht über Copy-Aktivität
- Lookup-Aktivität
- GetMetadata-Aktivität