Share via


Gegevens kopiëren naar of van een bestandssysteem met behulp van Azure Data Factory of Azure Synapse Analytics

VAN TOEPASSING OP: Azure Data Factory Azure Synapse Analytics

Tip

Probeer Data Factory uit in Microsoft Fabric, een alles-in-één analyseoplossing voor ondernemingen. Microsoft Fabric omvat alles, van gegevensverplaatsing tot gegevenswetenschap, realtime analyses, business intelligence en rapportage. Meer informatie over het gratis starten van een nieuwe proefversie .

In dit artikel wordt beschreven hoe u gegevens kopieert van en naar het bestandssysteem. Lees het inleidende artikel voor Azure Data Factory of Azure Synapse Analytics voor meer informatie.

Ondersteunde mogelijkheden

Deze bestandssysteemconnector wordt ondersteund voor de volgende mogelijkheden:

Ondersteunde mogelijkheden IR
Copy-activiteit (bron/sink) (1) (2)
Activiteit Lookup (1) (2)
GetMetadata-activiteit (1) (2)
Activiteit verwijderen (1) (2)

(1) Azure Integration Runtime (2) Zelf-hostende Integration Runtime

Deze bestandssysteemconnector ondersteunt met name:

  • Bestanden kopiëren van/naar netwerkbestandsshare. Als u een Linux-bestandsshare wilt gebruiken, installeert u Samba op uw Linux-server.
  • Bestanden kopiëren met Windows-verificatie.
  • Bestanden als zodanig kopiëren of parseren/genereren van bestanden met de ondersteunde bestandsindelingen en compressiecodecs.

Vereisten

Als uw gegevensarchief zich in een on-premises netwerk, een virtueel Azure-netwerk of een virtuele particuliere cloud van Amazon bevindt, moet u een zelf-hostende Integration Runtime configureren om er verbinding mee te maken.

Als uw gegevensarchief een beheerde cloudgegevensservice is, kunt u De Azure Integration Runtime gebruiken. Als de toegang is beperkt tot IP-adressen die zijn goedgekeurd in de firewallregels, kunt u IP-adressen van Azure Integration Runtime toevoegen aan de acceptatielijst.

U kunt ook de beheerde functie voor integratieruntime voor virtuele netwerken in Azure Data Factory gebruiken om toegang te krijgen tot het on-premises netwerk zonder een zelf-hostende Integration Runtime te installeren en te configureren.

Zie Strategieën voor gegevenstoegang voor meer informatie over de netwerkbeveiligingsmechanismen en -opties die door Data Factory worden ondersteund.

Aan de slag

Als u de kopieeractiviteit wilt uitvoeren met een pijplijn, kunt u een van de volgende hulpprogramma's of SDK's gebruiken:

Een gekoppelde bestandssysteemservice maken met behulp van de gebruikersinterface

Gebruik de volgende stappen om een gekoppelde bestandssysteemservice te maken in de gebruikersinterface van Azure Portal.

  1. Blader naar het tabblad Beheren in uw Azure Data Factory- of Synapse-werkruimte en selecteer Gekoppelde services en selecteer vervolgens Nieuw:

  2. Zoek het bestand en selecteer de bestandssysteemconnector.

    Schermopname van de bestandssysteemconnector.

  3. Configureer de servicedetails, test de verbinding en maak de nieuwe gekoppelde service.

    Schermopname van de configuratie voor de gekoppelde file system-service.

Configuratiedetails van connector

De volgende secties bevatten details over eigenschappen die worden gebruikt voor het definiëren van Data Factory- en Synapse-pijplijnentiteiten die specifiek zijn voor het bestandssysteem.

Eigenschappen van gekoppelde service

De volgende eigenschappen worden ondersteund voor de gekoppelde bestandssysteemservice:

Eigenschappen Beschrijving Vereist
type De typeeigenschap moet worden ingesteld op: FileServer. Ja
host Hiermee geeft u het hoofdpad van de map die u wilt kopiëren. Gebruik het escapeteken '' voor speciale tekens in de tekenreeks. Zie Voorbeeld van gekoppelde service- en gegevenssetdefinities voor voorbeelden. Ja
userId Geef de id op van de gebruiker die toegang heeft tot de server. Ja
password Geef het wachtwoord op voor de gebruiker (userId). Markeer dit veld als SecureString om het veilig op te slaan of verwijs naar een geheim dat is opgeslagen in Azure Key Vault. Ja
connectVia De Integration Runtime die moet worden gebruikt om verbinding te maken met het gegevensarchief. Meer informatie vindt u in de sectie Vereisten . Als dit niet is opgegeven, wordt de standaard Azure Integration Runtime gebruikt. Nee

Voorbeeld van gekoppelde service- en gegevenssetdefinities

Scenario 'host' in de definitie van de gekoppelde service 'folderPath' in de definitie van de gegevensset
Externe gedeelde map:

Voorbeelden: \\myserver\share\* of \\myserver\share\folder\submap\*
In JSON: \\\\myserver\\share
In de gebruikersinterface: \\myserver\share
In JSON: .\\ of folder\\subfolder
In de gebruikersinterface: .\ of folder\subfolder

Notitie

Bij het ontwerpen via de gebruikersinterface hoeft u geen dubbele backslash (\\) in te voeren om te ontsnappen, zoals u dat doet via JSON. Geef één backslash op.

Notitie

Het kopiëren van bestanden vanaf een lokale computer wordt niet ondersteund onder Azure Integration Runtime.
Raadpleeg de opdrachtregel van hier om de toegang tot de lokale computer in te schakelen onder Zelf-hostende Integration Runtime. Deze is standaard uitgeschakeld.

Voorbeeld:

{
    "name": "FileLinkedService",
    "properties": {
        "type": "FileServer",
        "typeProperties": {
            "host": "<host>",
            "userId": "<domain>\\<user>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Eigenschappen van gegevensset

Zie het artikel Gegevenssets voor een volledige lijst met secties en eigenschappen die beschikbaar zijn voor het definiëren van gegevenssets .

Azure Data Factory ondersteunt de volgende bestandsindelingen. Raadpleeg elk artikel voor op indeling gebaseerde instellingen.

De volgende eigenschappen worden ondersteund voor het bestandssysteem onder location instellingen in gegevensset op basis van indeling:

Eigenschappen Beschrijving Vereist
type De eigenschap type onder location in de gegevensset moet worden ingesteld op FileServerLocation. Ja
folderPath Het pad naar de map. Als u jokertekens wilt gebruiken om de map te filteren, slaat u deze instelling over en geeft u deze op in de instellingen van de activiteitsbron. U moet de bestandssharelocatie instellen in uw Windows- of Linux-omgeving om de map beschikbaar te maken voor delen. Nee
fileName De bestandsnaam onder het opgegeven folderPath. Als u jokertekens wilt gebruiken om bestanden te filteren, slaat u deze instelling over en geeft u deze op in de instellingen van de activiteitsbron. Nee

Voorbeeld:

{
    "name": "DelimitedTextDataset",
    "properties": {
        "type": "DelimitedText",
        "linkedServiceName": {
            "referenceName": "<File system linked service name>",
            "type": "LinkedServiceReference"
        },
        "schema": [ < physical schema, optional, auto retrieved during authoring > ],
        "typeProperties": {
            "location": {
                "type": "FileServerLocation",
                "folderPath": "root/folder/subfolder"
            },
            "columnDelimiter": ",",
            "quoteChar": "\"",
            "firstRowAsHeader": true,
            "compressionCodec": "gzip"
        }
    }
}

Eigenschappen van de kopieeractiviteit

Zie het artikel Pijplijnen voor een volledige lijst met secties en eigenschappen die beschikbaar zijn voor het definiëren van activiteiten. Deze sectie bevat een lijst met eigenschappen die worden ondersteund door de bron en sink van het bestandssysteem.

Bestandssysteem als bron

Azure Data Factory ondersteunt de volgende bestandsindelingen. Raadpleeg elk artikel voor op indeling gebaseerde instellingen.

De volgende eigenschappen worden ondersteund voor het bestandssysteem onder storeSettings instellingen in de op indeling gebaseerde kopieerbron:

Eigenschappen Beschrijving Vereist
type De eigenschap type onder storeSettings moet worden ingesteld op FileServerReadSettings. Ja
Zoek de bestanden die u wilt kopiëren:
OPTIE 1: statisch pad
Kopieer vanuit het opgegeven map-/bestandspad dat is opgegeven in de gegevensset. Als u alle bestanden uit een map wilt kopiëren, moet u ook opgeven wildcardFileName als *.
OPTIE 2: filter aan serverzijde
- fileFilter
Systeemeigen filter aan bestandsserverzijde, wat betere prestaties biedt dan optie 3-jokertekenfilter. Gebruik * dit om nul of meer tekens te vinden en ? om nul of één teken te vinden. Meer informatie over de syntaxis en notities van de opmerkingen in deze sectie. Nee
OPTIE 3: filter aan clientzijde
- jokertekenFolderPath
Het pad naar de map met jokertekens om bronmappen te filteren. Een dergelijk filter vindt plaats in de service, waarin de mappen/bestanden onder het opgegeven pad worden opgesomd en vervolgens het jokertekenfilter wordt toegepast.
Toegestane jokertekens zijn: * (komt overeen met nul of meer tekens) en ? (komt overeen met nul of één teken); gebruik ^ deze optie om te ontsnappen als de naam van de map een jokerteken heeft of dit escape-teken bevat.
Bekijk meer voorbeelden in voorbeelden van mappen en bestandsfilters.
Nee
OPTIE 3: filter aan clientzijde
- wildcardFileName
De bestandsnaam met jokertekens onder het opgegeven folderPath/wildcardFolderPath om bronbestanden te filteren. Een dergelijk filter vindt plaats in de service, waarmee de bestanden onder het opgegeven pad worden opgesomd en vervolgens het jokertekenfilter wordt toegepast.
Toegestane jokertekens zijn: * (komt overeen met nul of meer tekens) en ? (komt overeen met nul of één teken); gebruik ^ deze optie om te ontsnappen als uw werkelijke bestandsnaam jokertekens of dit escapeteken bevat.
Bekijk meer voorbeelden in voorbeelden van mappen en bestandsfilters.
Ja
OPTIE 3: een lijst met bestanden
- fileListPath
Geeft aan om een bepaalde bestandsset te kopiëren. Wijs een tekstbestand aan met een lijst met bestanden die u wilt kopiëren, één bestand per regel. Dit is het relatieve pad naar het pad dat is geconfigureerd in de gegevensset.
Wanneer u deze optie gebruikt, geeft u geen bestandsnaam op in de gegevensset. Bekijk meer voorbeelden in voorbeelden van de lijst met bestanden.
Nee
Aanvullende instellingen:
recursief Hiermee wordt aangegeven of de gegevens recursief worden gelezen uit de submappen of alleen uit de opgegeven map. Wanneer recursief is ingesteld op true en de sink een archief op basis van bestanden is, wordt een lege map of submap niet gekopieerd of gemaakt in de sink.
Toegestane waarden zijn waar (standaard) en onwaar.
Deze eigenschap is niet van toepassing wanneer u configureert fileListPath.
Nee
deleteFilesAfterCompletion Geeft aan of de binaire bestanden uit het bronarchief worden verwijderd nadat ze naar het doelarchief zijn verplaatst. Het verwijderen van bestanden is per bestand. Dit betekent dat wanneer de activiteit mislukt, sommige bestanden worden weergegeven die al naar het doel zijn gekopieerd en uit de bron zijn verwijderd, terwijl andere nog steeds in het bronarchief blijven.
Deze eigenschap is alleen geldig in het scenario voor het kopiëren van binaire bestanden. De standaardwaarde: false.
Nee
modifiedDatetimeStart Bestandenfilter op basis van het kenmerk: Laatst gewijzigd.
De bestanden worden geselecteerd als de laatste wijzigingstijd groter is dan of gelijk is aan modifiedDatetimeStart en kleiner is dan modifiedDatetimeEnd. De tijd wordt toegepast op UTC-tijdzone in de notatie JJJJ-MM-DDTHH:mm:ssZ.
De eigenschappen kunnen NULL zijn, wat betekent dat er geen bestandskenmerkfilter wordt toegepast op de gegevensset. Wanneer modifiedDatetimeStart een datum/tijd-waarde is maar modifiedDatetimeEnd NULL is, betekent dit dat de bestanden waarvan het kenmerk voor het laatst is gewijzigd groter dan of gelijk zijn aan de datum/tijd-waarde zijn geselecteerd. Wanneer modifiedDatetimeEnd de datum/tijd-waarde is, maar modifiedDatetimeStart NULL is, betekent dit dat de bestanden waarvan het kenmerk voor het laatst is gewijzigd kleiner is dan de datum/tijd-waarde zijn geselecteerd.
Deze eigenschap is niet van toepassing wanneer u configureert fileListPath.
Nee
modifiedDatetimeEnd Hetzelfde als modifiedDateTimeStart. Nee
enablePartitionDiscovery Geef voor bestanden die zijn gepartitioneerd op of de partities van het bestandspad moeten worden geparseerd en als extra bronkolommen moeten worden toegevoegd.
Toegestane waarden zijn onwaar (standaard) en waar.
Nee
partitionRootPath Wanneer partitiedetectie is ingeschakeld, geeft u het absolute hoofdpad op om gepartitioneerde mappen als gegevenskolommen te lezen.

Als deze niet is opgegeven, is dit standaard
- Wanneer u bestandspad gebruikt in de gegevensset of lijst met bestanden op de bron, is het pad naar de partitiehoofdmap dat is geconfigureerd in de gegevensset.
- Wanneer u het filter voor jokertekens gebruikt, is het hoofdpad van de partitie het subpad vóór het eerste jokerteken.

Stel dat u het pad in de gegevensset configureert als 'root/folder/year=2020/month=08/day=27':
- Als u het partitiehoofdpad opgeeft als root/folder/year=2020, genereert de kopieeractiviteit twee kolommen month en day met respectievelijk de waarde 08 en 27, naast de kolommen in de bestanden.
- Als het hoofdpad van de partitie niet is opgegeven, wordt er geen extra kolom gegenereerd.
Nee
maxConcurrentConnections De bovengrens van gelijktijdige verbindingen die tijdens de uitvoering van de activiteit tot stand zijn gebracht met het gegevensarchief. Geef alleen een waarde op wanneer u gelijktijdige verbindingen wilt beperken. Nee

Voorbeeld:

"activities":[
    {
        "name": "CopyFromFileSystem",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Delimited text input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "DelimitedTextSource",
                "formatSettings":{
                    "type": "DelimitedTextReadSettings",
                    "skipLineCount": 10
                },
                "storeSettings":{
                    "type": "FileServerReadSettings",
                    "recursive": true,
                    "wildcardFolderPath": "myfolder*A",
                    "wildcardFileName": "*.csv"
                }
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Bestandssysteem als sink

Azure Data Factory ondersteunt de volgende bestandsindelingen. Raadpleeg elk artikel voor op indeling gebaseerde instellingen.

Notitie

De optie MergeFiles copyBehavior is alleen beschikbaar in Azure Data Factory-pijplijnen en niet in Synapse Analytics-pijplijnen.

De volgende eigenschappen worden ondersteund voor het bestandssysteem onder storeSettings instellingen in de op indeling gebaseerde kopiesink:

Eigenschappen Beschrijving Vereist
type De eigenschap type onder storeSettings moet worden ingesteld op FileServerWriteSettings. Ja
copyBehavior Definieert het kopieergedrag wanneer de bron bestanden is uit een gegevensarchief op basis van bestanden.

Toegestane waarden zijn:
- PreserveHierarchy (standaard): behoudt de bestandshiërarchie in de doelmap. Het relatieve pad van het bronbestand naar de bronmap is identiek aan het relatieve pad van het doelbestand naar de doelmap.
- FlattenHierarchy: Alle bestanden uit de bronmap bevinden zich op het eerste niveau van de doelmap. De doelbestanden hebben automatisch gegenereerde namen.
- MergeFiles: hiermee worden alle bestanden uit de bronmap samengevoegd tot één bestand. Als de bestandsnaam is opgegeven, is de naam van het samengevoegde bestand de opgegeven naam. Anders is het een automatisch gegenereerde bestandsnaam.
Nee
maxConcurrentConnections De bovengrens van gelijktijdige verbindingen die tijdens de uitvoering van de activiteit tot stand zijn gebracht met het gegevensarchief. Geef alleen een waarde op wanneer u gelijktijdige verbindingen wilt beperken. Nee

Voorbeeld:

"activities":[
    {
        "name": "CopyToFileSystem",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Parquet output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "ParquetSink",
                "storeSettings":{
                    "type": "FileServerWriteSettings",
                    "copyBehavior": "PreserveHierarchy"
                }
            }
        }
    }
]

Voorbeelden van map- en bestandsfilters

In deze sectie wordt het resulterende gedrag van het mappad en de bestandsnaam met jokertekenfilters beschreven.

folderPath fileName recursief Structuur van bronmap en filterresultaat (bestanden vetgedrukt worden opgehaald)
Folder* (leeg, standaard gebruiken) false MapA
    File1.csv
    File2.json
    Submap1
        File3.csv
        File4.json
        File5.csv
AnotherFolderB
    File6.csv
Folder* (leeg, standaard gebruiken) true MapA
    File1.csv
    File2.json
    Submap1
        File3.csv
        File4.json
        File5.csv
AnotherFolderB
    File6.csv
Folder* *.csv false MapA
    File1.csv
    File2.json
    Submap1
        File3.csv
        File4.json
        File5.csv
AnotherFolderB
    File6.csv
Folder* *.csv true MapA
    File1.csv
    File2.json
    Submap1
        File3.csv
        File4.json
        File5.csv
AnotherFolderB
    File6.csv

Voorbeelden van bestandslijsten

In deze sectie wordt het resulterende gedrag beschreven van het gebruik van bestandslijstpad in bron van kopieeractiviteit.

Ervan uitgaande dat u de volgende bronmapstructuur hebt en de bestanden vetgedrukt wilt kopiëren:

Voorbeeldbronstructuur Inhoud in FileListToCopy.txt Pijplijnconfiguratie
wortel
    MapA
        File1.csv
        File2.json
        Submap1
            File3.csv
            File4.json
            File5.csv
    Metagegevens
        FileListToCopy.txt
File1.csv
Submap1/File3.csv
Submap1/File5.csv
In gegevensset:
- Mappad: root/FolderA

In bron van kopieeractiviteit:
- Pad naar bestandslijst: root/Metadata/FileListToCopy.txt

Het bestandslijstpad verwijst naar een tekstbestand in hetzelfde gegevensarchief. Het bevat een lijst met bestanden die u wilt kopiëren. Elke regel bevat het relatieve pad naar het bestand op basis van het hoofdpad dat is geconfigureerd in de gegevensset.

recursieve en copyBehavior-voorbeelden

In deze sectie wordt het resulterende gedrag van de kopieerbewerking beschreven voor verschillende combinaties van recursieve en copyBehavior-waarden.

recursief copyBehavior Structuur van bronmap Resulterend doel
true preserveHierarchy Map1
    Bestand1
    Bestand2
    Submap1
        Bestand3
        Bestand4
        Bestand5
De doelmap Map1 wordt gemaakt met dezelfde structuur als de bron:

Map1
    Bestand1
    Bestand2
    Submap1
        Bestand3
        Bestand4
        Bestand5.
true flattenHierarchy Map1
    Bestand1
    Bestand2
    Submap1
        Bestand3
        Bestand4
        Bestand5
De doelmap1 wordt gemaakt met de volgende structuur:

Map1
    automatisch gegenereerde naam voor Bestand1
    automatisch gegenereerde naam voor File2
    automatisch gegenereerde naam voor File3
    automatisch gegenereerde naam voor File4
    automatisch gegenereerde naam voor File5
true mergeFiles Map1
    Bestand1
    Bestand2
    Submap1
        Bestand3
        Bestand4
        Bestand5
De doelmap1 wordt gemaakt met de volgende structuur:

Map1
    File1 + File2 + File3 + File4 + File 5-inhoud worden samengevoegd in één bestand met automatisch gegenereerde bestandsnaam
false preserveHierarchy Map1
    Bestand1
    Bestand2
    Submap1
        Bestand3
        Bestand4
        Bestand5
De doelmap Map1 wordt gemaakt met de volgende structuur

Map1
    Bestand1
    Bestand2

Submap1 met File3, File4 en File5 worden niet opgehaald.
false flattenHierarchy Map1
    Bestand1
    Bestand2
    Submap1
        Bestand3
        Bestand4
        Bestand5
De doelmap Map1 wordt gemaakt met de volgende structuur

Map1
    automatisch gegenereerde naam voor Bestand1
    automatisch gegenereerde naam voor File2

Submap1 met File3, File4 en File5 worden niet opgehaald.
false mergeFiles Map1
    Bestand1
    Bestand2
    Submap1
        Bestand3
        Bestand4
        Bestand5
De doelmap Map1 wordt gemaakt met de volgende structuur

Map1
    De inhoud van Bestand1 + File2 wordt samengevoegd in één bestand met een automatisch gegenereerde bestandsnaam. automatisch gegenereerde naam voor Bestand1

Submap1 met File3, File4 en File5 worden niet opgehaald.

Eigenschappen van opzoekactiviteit

Als u meer wilt weten over de eigenschappen, controleert u de lookup-activiteit.

Eigenschappen van GetMetadata-activiteit

Raadpleeg de activiteit GetMetadata voor meer informatie over de eigenschappen.

Activiteitseigenschappen verwijderen

Als u meer wilt weten over de eigenschappen, schakelt u De activiteit Verwijderen in.

Verouderde modellen

Notitie

De volgende modellen worden nog steeds ondersteund voor compatibiliteit met eerdere versies. U wordt aangeraden het nieuwe model te gebruiken dat in de bovenstaande secties wordt genoemd en de ontwerpgebruikersinterface is overgeschakeld naar het genereren van het nieuwe model.

Verouderd gegevenssetmodel

Eigenschappen Beschrijving Vereist
type De typeeigenschap van de gegevensset moet worden ingesteld op: FileShare Ja
folderPath Pad naar de map. Jokertekenfilter wordt ondersteund. Toegestane jokertekens zijn: * (komt overeen met nul of meer tekens) en ? (komt overeen met nul of één teken); gebruik ^ deze optie om te ontsnappen als de naam van de map een jokerteken heeft of dit escape-teken bevat.

Voorbeelden: rootfolder/submap/, zie meer voorbeelden in voorbeelden van gekoppelde service- en gegevenssetdefinities en voorbeelden van map- en bestandsfilters.
Nee
fileName Naam of jokertekenfilter voor de bestanden onder het opgegeven mapPath. Als u geen waarde voor deze eigenschap opgeeft, verwijst de gegevensset naar alle bestanden in de map.

Voor filter zijn toegestane jokertekens: * (komt overeen met nul of meer tekens) en ? (komt overeen met nul of één teken).
- Voorbeeld 1: "fileName": "*.csv"
- Voorbeeld 2: "fileName": "???20180427.txt"
Gebruik ^ deze optie om te ontsnappen als uw werkelijke bestandsnaam een jokerteken of dit escapeteken bevat.

Wanneer fileName niet is opgegeven voor een uitvoergegevensset en preserveHierarchy niet is opgegeven in de activiteitssink, genereert de kopieeractiviteit automatisch de bestandsnaam met het volgende patroon: 'Data.[ ID-GUID van activiteitsuitvoering]. [GUID als FlattenHierarchy]. [notatie indien geconfigureerd]. [compressie indien geconfigureerd]", bijvoorbeeld 'Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt.gz'; als u kopieert vanuit tabellaire bron met behulp van tabelnaam in plaats van een query, is het naampatroon '[tabelnaam].[ format]. [compressie indien geconfigureerd]", bijvoorbeeld 'MyTable.csv'.
Nee
modifiedDatetimeStart Bestandenfilter op basis van het kenmerk: Laatst gewijzigd. De bestanden worden geselecteerd als de laatste wijzigingstijd groter is dan of gelijk is aan modifiedDatetimeStart en kleiner is dan modifiedDatetimeEnd. De tijd wordt toegepast op UTC-tijdzone in de notatie JJJJ-MM-DDTHH:mm:ssZ.

Houd er rekening mee dat de algehele prestaties van gegevensverplaatsing worden beïnvloed door deze instelling in te schakelen wanneer u een bestandsfilter wilt uitvoeren op grote hoeveelheden bestanden.

De eigenschappen kunnen NULL zijn, wat betekent dat er geen bestandskenmerkfilter wordt toegepast op de gegevensset. Wanneer modifiedDatetimeStart een datum/tijd-waarde is maar modifiedDatetimeEnd NULL is, betekent dit dat de bestanden waarvan het kenmerk voor het laatst is gewijzigd groter dan of gelijk zijn aan de datum/tijd-waarde zijn geselecteerd. Wanneer modifiedDatetimeEnd de datum/tijd-waarde is, maar modifiedDatetimeStart NULL is, betekent dit dat de bestanden waarvan het kenmerk voor het laatst is gewijzigd kleiner is dan de datum/tijd-waarde zijn geselecteerd.
Nee
modifiedDatetimeEnd Bestandenfilter op basis van het kenmerk: Laatst gewijzigd. De bestanden worden geselecteerd als de laatste wijzigingstijd groter is dan of gelijk is aan modifiedDatetimeStart en kleiner is dan modifiedDatetimeEnd. De tijd wordt toegepast op utc-tijdzone in de notatie 2018-12-01T05:00:00Z.

Houd er rekening mee dat de algehele prestaties van gegevensverplaatsing worden beïnvloed door deze instelling in te schakelen wanneer u een bestandsfilter wilt uitvoeren op grote hoeveelheden bestanden.

De eigenschappen kunnen NULL zijn, wat betekent dat er geen bestandskenmerkfilter wordt toegepast op de gegevensset. Wanneer modifiedDatetimeStart een datum/tijd-waarde is maar modifiedDatetimeEnd NULL is, betekent dit dat de bestanden waarvan het kenmerk voor het laatst is gewijzigd groter dan of gelijk zijn aan de datum/tijd-waarde zijn geselecteerd. Wanneer modifiedDatetimeEnd de datum/tijd-waarde is, maar modifiedDatetimeStart NULL is, betekent dit dat de bestanden waarvan het kenmerk voor het laatst is gewijzigd kleiner is dan de datum/tijd-waarde zijn geselecteerd.
Nee
indeling Als u bestanden wilt kopiëren tussen bestandsarchieven (binaire kopie), slaat u de indelingssectie over in definities van invoer- en uitvoergegevenssets.

Als u bestanden met een specifieke indeling wilt parseren of genereren, worden de volgende bestandstypen ondersteund: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Stel de typeeigenschap onder opmaak in op een van deze waarden. Zie de secties Text Format, Json Format, Avro Format, Orc Format en Parquet Format voor meer informatie.
Nee (alleen voor binair kopieerscenario)
compressie Geef het type en het compressieniveau voor de gegevens op. Zie Ondersteunde bestandsindelingen en compressiecodecs voor meer informatie.
Ondersteunde typen zijn: GZip, Deflate, BZip2 en ZipDeflate.
Ondersteunde niveaus zijn: Optimaal en Snelst.
Nee

Tip

Als u alle bestanden onder een map wilt kopiëren, geeft u alleen folderPath op.
Als u één bestand met een bepaalde naam wilt kopiëren, geeft u folderPath op met maponderdeel en fileName met bestandsnaam.
Als u een subset van bestanden onder een map wilt kopiëren, geeft u folderPath op met maponderdeel en fileName met jokertekenfilter.

Notitie

Als u de eigenschap 'fileFilter' voor het bestandsfilter gebruikte, wordt deze nog steeds ondersteund terwijl u wordt aangeraden de nieuwe filterfunctie te gebruiken die in de toekomst wordt toegevoegd aan FileName.

Voorbeeld:

{
    "name": "FileSystemDataset",
    "properties": {
        "type": "FileShare",
        "linkedServiceName":{
            "referenceName": "<file system linked service name>",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "folderPath": "folder/subfolder/",
            "fileName": "*",
            "modifiedDatetimeStart": "2018-12-01T05:00:00Z",
            "modifiedDatetimeEnd": "2018-12-01T06:00:00Z",
            "format": {
                "type": "TextFormat",
                "columnDelimiter": ",",
                "rowDelimiter": "\n"
            },
            "compression": {
                "type": "GZip",
                "level": "Optimal"
            }
        }
    }
}

Bronmodel van verouderde kopieeractiviteit

Eigenschappen Beschrijving Vereist
type De typeeigenschap van de bron van de kopieeractiviteit moet worden ingesteld op: FileSystemSource Ja
recursief Hiermee wordt aangegeven of de gegevens recursief worden gelezen uit de submappen of alleen uit de opgegeven map. Opmerking wanneer recursief is ingesteld op true en sink een archief op basis van bestanden is, worden lege map/submap niet gekopieerd/gemaakt bij sink.
Toegestane waarden zijn: true (standaard), false
Nee
maxConcurrentConnections De bovengrens van gelijktijdige verbindingen die tijdens de uitvoering van de activiteit tot stand zijn gebracht met het gegevensarchief. Geef alleen een waarde op wanneer u gelijktijdige verbindingen wilt beperken. Nee

Voorbeeld:

"activities":[
    {
        "name": "CopyFromFileSystem",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<file system input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "FileSystemSource",
                "recursive": true
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Verouderd sinkmodel voor kopieeractiviteit

Eigenschappen Beschrijving Vereist
type De typeeigenschap van de sink van de kopieeractiviteit moet zijn ingesteld op: FileSystemSink Ja
copyBehavior Definieert het kopieergedrag wanneer de bron bestanden is uit een gegevensarchief op basis van bestanden.

Toegestane waarden zijn:
- PreserveHierarchy (standaard): behoudt de bestandshiërarchie in de doelmap. Het relatieve pad van het bronbestand naar de bronmap is identiek aan het relatieve pad van het doelbestand naar de doelmap.
- FlattenHierarchy: alle bestanden uit de bronmap bevinden zich op het eerste niveau van de doelmap. De namen van de doelbestanden worden automatisch gegenereerd.
- MergeFiles: hiermee worden alle bestanden uit de bronmap samengevoegd tot één bestand. Er wordt geen recordontdubbeling uitgevoerd tijdens de samenvoegbewerking. Als de bestandsnaam is opgegeven, is de naam van het samengevoegde bestand de opgegeven naam; anders zou automatisch gegenereerde bestandsnaam zijn.
Nee
maxConcurrentConnections De bovengrens van gelijktijdige verbindingen die tijdens de uitvoering van de activiteit tot stand zijn gebracht met het gegevensarchief. Geef alleen een waarde op wanneer u gelijktijdige verbindingen wilt beperken. Nee

Voorbeeld:

"activities":[
    {
        "name": "CopyToFileSystem",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<file system output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "FileSystemSink",
                "copyBehavior": "PreserveHierarchy"
            }
        }
    }
]

Zie ondersteunde gegevensarchieven voor een lijst met gegevensarchieven die worden ondersteund als bronnen en sinks door de kopieeractiviteit.