Excel Dateiformat in Azure Data Factory and Azure Synapse Analytics

GILT FÜR: Azure Data Factory Azure Synapse Analytics

Tipp

Testen Sie Data Factory in Microsoft Fabric, eine All-in-One-Analyselösung für Unternehmen. Microsoft Fabric deckt alle Aufgaben ab, von der Datenverschiebung bis hin zu Data Science, Echtzeitanalysen, Business Intelligence und Berichterstellung. Erfahren Sie, wie Sie kostenlos eine neue Testversion starten!

Verwenden Sie diesen Artikel, wenn Sie die Excel-Dateien analysieren möchten. Der Dienst unterstützt sowohl das „.xls“ als auch „.xlsx“-Format.

Das Excel-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 File, Dateisystem, FTP, Google Cloud Storage, HDFS, HTTP, Oracle Cloud Storage und SFTP. Es wird als Quelle, aber nicht als Senke unterstützt.

Hinweis

Das „.xls“-Format wird bei Verwendung von HTTP nicht unterstützt.

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 mit den Eigenschaften, die vom Excel-Dataset unterstützt werden.

Eigenschaft Beschreibung Erforderlich
type Die type-Eigenschaft des Datasets muss auf Excel festgelegt werden. Ja
location Speicherorteinstellungen der Datei(en) Jeder dateibasierte Connector verfügt unter location über seinen eigenen Speicherorttyp und unterstützte Eigenschaften. Ja
sheetName Der Name des Excel-Arbeitsblatts zum Lesen der Daten. Geben Sie sheetName oder sheetIndex an.
sheetIndex Der Excel-Arbeitsblattindex zum Lesen von Daten, beginnend bei 0 (null). Geben Sie sheetName oder sheetIndex an.
range Der Zellenbereich im jeweiligen Arbeitsblatt zum Ermitteln der selektiven Daten, z. B.:
Nicht angegeben: Das gesamte Arbeitsblatt wird als Tabelle ab der ersten nicht leeren Zeile und Spalte gelesen.
- A3: Eine Tabelle wird ab der angegebenen Zelle gelesen, wobei alle Zeilen darunter und alle Spalten rechts davon dynamisch erkannt werden.
- A3:H5: Dieser feste Bereich wird als Tabelle gelesen.
- A3:A3: Diese einzelne Zelle wird gelesen.
Nein
firstRowAsHeader Gibt an, ob die erste Zeile des jeweiligen Arbeitsblatts bzw. Bereichs als Headerzeile mit den Namen der Spalten behandelt werden soll.
Zulässige Werte sind true und false (Standard).
Nein
nullValue Gibt eine Zeichenfolgendarstellung von Null-Werten an.
Der Standardwert ist eine leere Zeichenfolge.
Nein
compression Gruppe von Eigenschaften zum Konfigurieren der Dateikomprimierung. Konfigurieren Sie diesen Abschnitt, wenn Sie während der Aktivitätsausführung eine Komprimierung/Dekomprimierung durchführen möchten. Nein
type
(unter compression )
Der zum Lesen und Schreiben von JSON-Dateien verwendete Komprimierungscodec.
Zulässige Werte sind bzip2, gzip, deflate, ZipDeflate, TarGzip, Tar, snappy und lz4. Standardmäßig erfolgt keine Komprimierung.
Hinweis: „snappy“ und „lz4“ werden aktuell nicht von der Copy-Aktivität und „ZipDeflate“, „TarGzip“ und „Tar“ werden aktuell nicht vom Zuordnungsdatenfluss unterstützt.
Hinweis: Bei Verwendung der Kopieraktivität zum Dekomprimieren einer oder mehrerer ZipDeflate-Dateien und zum Schreiben in den dateibasierten Senkendatenspeicher werden Dateien in den folgenden Ordner extrahiert: <path specified in dataset>/<folder named as source zip file>/.
Nein.
level
(unter compression )
Das Komprimierungsverhältnis.
Zulässige Werte sind Optimal oder Sehr schnell.
- Sehr schnell: Der Komprimierungsvorgang wird schnellstmöglich abgeschlossen, auch wenn die resultierende Datei nicht optimal komprimiert ist.
- Optimal: Die Daten sollten optimal komprimiert sein, auch wenn der Vorgang eine längere Zeit in Anspruch nimmt. Weitere Informationen finden Sie im Thema Komprimierungsstufe .
Nein

Unten ist ein Beispiel für ein Excel-Dataset in Azure Blob Storage angegeben:

{
    "name": "ExcelDataset",
    "properties": {
        "type": "Excel",
        "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",
            },
            "sheetName": "MyWorksheet",
            "range": "A3:H5",
            "firstRowAsHeader": true
        }
    }
}

Eigenschaften der Kopieraktivität

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 mit den Eigenschaften, die von der Excel-Quelle unterstützt werden.

Excel 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 ExcelSource festgelegt sein. 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. Nein
"activities": [
    {
        "name": "CopyFromExcel",
        "type": "Copy",
        "typeProperties": {
            "source": {
                "type": "ExcelSource",
                "storeSettings": {
                    "type": "AzureBlobStorageReadSettings",
                    "recursive": true
                }
            },
            ...
        }
        ...
    }
]

Eigenschaften von Mapping Data Flow

In Zordnungsdatenflüssen können Sie das Excel-Format in den folgenden Datenspeichern lesen: Azure Blob Storage, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2, Amazon S3 und SFTP. Sie können auf Excel-Dateien entweder mit einem Excel-Dataset oder einem Inlinedataset verweisen.

Quelleigenschaften

In der folgenden Tabelle sind die von einer Excel-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
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

Die Abbildung unten enthält ein Beispiel für eine Excel-Quellkonfiguration in Zuordnungsdatenflüssen per Datasetmodus.

Excel source

Das zugehörige Datenflussskript ist:

source(allowSchemaDrift: true,
    validateSchema: false,
    wildcardPaths:['*.xls']) ~> ExcelSource

Bei Verwendung eines Inlinedatasets werden im Zuordnungsdatenfluss die folgenden Quelloptionen angezeigt.

Excel source inline dataset

Das zugehörige Datenflussskript ist:

source(allowSchemaDrift: true,
    validateSchema: false,
    format: 'excel',
    fileSystem: 'container',
    folderPath: 'path',
    fileName: 'sample.xls',
    sheetName: 'worksheet',
    firstRowAsHeader: true) ~> ExcelSourceInlineDataset

Verarbeiten sehr großer Excel-Dateien

Der Excel-Connector unterstützt keinen Streaminglesevorgang für die Copy-Aktivität und muss die gesamte Datei in den Arbeitsspeicher laden, bevor Daten gelesen werden können. Zum Importieren von Schemas, Anzeigen einer Vorschau von Daten oder Aktualisieren eines Excel-Datasets müssen die Daten vor dem HTTP-Anforderungstimeout (100 s) zurückgegeben werden. Bei großen Excel-Dateien werden diese Vorgänge möglicherweise nicht innerhalb dieses Zeitraums abgeschlossen, was zu einem Timeoutfehler führt. Wenn Sie große Excel-Dateien (>100 MB) in einen anderen Datenspeicher verschieben möchten, können Sie diese Einschränkung mit einer der folgenden Optionen umgehen:

  • Verwenden Sie die selbstgehostete Integration Runtime (Self-Hosted Integration Runtime, SHIR) und dann die Copy-Aktivität, um die große Excel-Datei mit der SHIR in einen anderen Datenspeicher zu verschieben.
  • Teilen Sie die große Excel-Datei in mehrere kleinere Dateien auf, und verwenden Sie dann die Copy-Aktivität, um den Ordner mit den Dateien zu verschieben.
  • Verwenden Sie eine Dataflow-Aktivität, um die große Excel-Datei in einen anderen Datenspeicher zu verschieben. Dataflow unterstützt den Streaminglesevorgang für Excel und kann große Dateien schnell verschieben/übertragen.
  • Konvertieren Sie die große Excel-Datei manuell in das CSV-Format, und verwenden Sie dann eine Copy-Aktivität, um die Datei zu verschieben.