Copiare dati da e in un file system usando Azure Data FactoryCopy data to or from a file system by using Azure Data Factory

Questo articolo illustra come copiare dati da e verso file system.This article outlines how to copy data to and from file system. Per altre informazioni su Azure Data Factory, vedere l'articolo introduttivo.To learn about Azure Data Factory, read the introductory article.

Funzionalità supportateSupported capabilities

Questo connettore file system è supportato per le attività seguenti:This file system connector is supported for the following activities:

In particolare, il connettore file system supporta:Specifically, this file system connector supports:

  • La copia di file da/in un computer locale o una condivisione file di rete.Copying files from/to local machine or network file share. Per usare una condivisione file di Linux, installare Samba nel server Linux.To use a Linux file share, install Samba on your Linux server.
  • La copia di file usando l'autenticazione di Windows.Copying files using Windows authentication.
  • La copia di file così come sono o l'analisi/generazione di file con i formati di file supportati e i codec di compressione.Copying files as-is or parsing/generating files with the supported file formats and compression codecs.

PrerequisitiPrerequisites

Se l'archivio dati è configurato in uno dei modi seguenti, è necessario configurare un Integration Runtime self-hosted per connettersi a questo archivio dati:If your data store is configured in one of the following ways, you need to set up a Self-hosted Integration Runtime in order to connect to this data store:

  • L'archivio dati si trova all'interno di una rete locale, all'interno di una rete virtuale di Azure o all'interno di un cloud privato virtuale di Amazon.The data store is located inside an on-premises network, inside Azure Virtual Network, or inside Amazon Virtual Private Cloud.
  • L'archivio dati è un servizio dati cloud gestito in cui l'accesso è limitato agli indirizzi IP consentiti nelle regole del firewall.The data store is a managed cloud data service where the access is restricted to IPs whitelisted in the firewall rules.

IntroduzioneGetting started

È possibile usare l'attività di copia con una pipeline tramite uno degli strumenti o degli SDK seguenti.You can use one of the following tools or SDKs to use the copy activity with a pipeline. Per istruzioni dettagliate, selezionare un collegamento:Select a link for step-by-step instructions:

Le sezioni seguenti riportano informazioni dettagliate sulle proprietà che vengono usate per definire entità di Data Factory specifiche per un file system.The following sections provide details about properties that are used to define Data Factory entities specific to file system.

Proprietà del servizio collegatoLinked service properties

Per il servizio collegato del file system sono supportate le proprietà seguenti:The following properties are supported for file system linked service:

ProprietàProperty DescrizioneDescription ObbligatorioRequired
typetype La proprietà type deve essere impostata su: FileServer.The type property must be set to: FileServer. Yes
hosthost Specifica il percorso radice della cartella da copiare.Specifies the root path of the folder that you want to copy. Usare il carattere di escape "" per i caratteri speciali nella stringa.Use the escape character "" for special characters in the string. Per ottenere alcuni esempi, vedere Servizio collegato di esempio e definizioni del set di dati .See Sample linked service and dataset definitions for examples. Yes
useriduserid Specificare l'ID dell'utente che ha accesso al server.Specify the ID of the user who has access to the server. Yes
passwordpassword Specificare la password per l'utente (userid).Specify the password for the user (userid). Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro in Azure Data Factory oppure fare riferimento a un segreto archiviato in Azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. Yes
connectViaconnectVia Il runtime di integrazione da usare per la connessione all'archivio dati.The Integration Runtime to be used to connect to the data store. Ulteriori informazioni sono disponibili nella sezione prerequisiti .Learn more from Prerequisites section. Se non specificato, viene usato il runtime di integrazione di Azure predefinito.If not specified, it uses the default Azure Integration Runtime. NoNo

Servizio collegato di esempio e definizioni del set di datiSample linked service and dataset definitions

ScenarioScenario "host" nella definizione del servizio collegato"host" in linked service definition "folderPath" nella definizione del set di dati"folderPath" in dataset definition
Cartella locale nel computer del runtime di integrazione:Local folder on Integration Runtime machine:

Esempi: D:\* o D:\cartella\sottocartella\Examples: D:\* or D:\folder\subfolder\
In JSON: D:\\In JSON: D:\\
Nell'interfaccia utente: D:\On UI: D:\
In JSON: .\\ o folder\\subfolderIn JSON: .\\ or folder\\subfolder
Nell'interfaccia utente: .\ o folder\subfolderOn UI: .\ or folder\subfolder
Cartella condivisa remota:Remote shared folder:

Esempi: \\myserver\share\* o \\myserver\share\cartella\sottocartella\Examples: \\myserver\share\* or \\myserver\share\folder\subfolder\
In JSON: \\\\myserver\\shareIn JSON: \\\\myserver\\share
Nell'interfaccia utente: \\myserver\shareOn UI: \\myserver\share
In JSON: .\\ o folder\\subfolderIn JSON: .\\ or folder\\subfolder
Nell'interfaccia utente: .\ o folder\subfolderOn UI: .\ or folder\subfolder

Nota

Quando si crea tramite interfaccia utente, non è necessario immettere la doppia barra rovesciata (\\) per i caratteri di escape come con JSON, basta specificare la barra rovesciata singola.When authoring via UI, you don't need to input double backslash (\\) to escape like you do via JSON, specify single backslash.

Esempio:Example:

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

Proprietà del set di datiDataset properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione dei set di dati, vedere l'articolo Set di dati.For a full list of sections and properties available for defining datasets, see the Datasets article.

Azure Data Factory supportano i formati di file seguenti.Azure Data Factory support the following file formats. Fare riferimento a ogni articolo sulle impostazioni basate sul formato.Refer to each article on format-based settings.

Le proprietà seguenti sono supportate per file system in impostazioni location nel set di dati basato sul formato:The following properties are supported for file system under location settings in format-based dataset:

ProprietàProperty DescrizioneDescription ObbligatorioRequired
typetype La proprietà Type in location nel set di dati deve essere impostata su FileServerLocation.The type property under location in dataset must be set to FileServerLocation. Yes
folderPathfolderPath Percorso della cartella.The path to folder. Se si vuole usare il carattere jolly per filtrare la cartella, ignorare questa impostazione e specificare nelle impostazioni dell'origine dell'attività.If you want to use wildcard to filter folder, skip this setting and specify in activity source settings. NoNo
fileNamefileName Nome del file sotto il folderPath specificato.The file name under the given folderPath. Se si vuole usare il carattere jolly per filtrare i file, ignorare questa impostazione e specificare nelle impostazioni dell'origine dell'attività.If you want to use wildcard to filter files, skip this setting and specify in activity source settings. NoNo

Esempio:Example:

{
    "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"
        }
    }
}

Modello DataSet legacyLegacy dataset model

Nota

Il modello di set di dati seguente è ancora supportato così com'è per la compatibilità con le versioni precedenti.The following dataset model is still supported as-is for backward compatibility. Si consiglia di usare il nuovo modello menzionato nella sezione precedente in futuro e l'interfaccia utente di creazione di ADF ha cambiato la generazione del nuovo modello.You are suggested to use the new model mentioned in above section going forward, and the ADF authoring UI has switched to generating the new model.

ProprietàProperty DescrizioneDescription ObbligatorioRequired
typetype La proprietà type del set di dati deve essere impostata su: FileShareThe type property of the dataset must be set to: FileShare Yes
folderPathfolderPath Percorso della cartella.Path to the folder. I filtri con caratteri jolly sono supportati, i caratteri jolly consentiti sono: * (corrispondenza di zero o più caratteri) e ? (corrispondenza di zero caratteri o di un carattere singolo). Usare ^ per applicare una sequenza di escape se il nome effettivo della cartella include caratteri jolly o tale carattere di escape.Wildcard filter is supported, allowed wildcards are: * (matches zero or more characters) and ? (matches zero or single character); use ^ to escape if your actual folder name has wildcard or this escape char inside.

Esempi: cartellaradice/sottocartella/. Vedere altri esempi in Servizio collegato di esempio e definizioni del set di dati e Esempi di filtro file e cartelle.Examples: rootfolder/subfolder/, see more examples in Sample linked service and dataset definitions and Folder and file filter examples.
NoNo
fileNamefileName Filtro con nome o carattere jolly per i file nell'elemento "folderPath" specificato.Name or wildcard filter for the file(s) under the specified "folderPath". Se non si specifica alcun valore per questa proprietà, il set di dati punta a tutti i file nella cartella.If you don't specify a value for this property, the dataset points to all files in the folder.

Per un filtro, i caratteri jolly consentiti sono: * (corrispondenza di zero o più caratteri) e ? (corrispondenza di zero caratteri o di un carattere singolo).For filter, allowed wildcards are: * (matches zero or more characters) and ? (matches zero or single character).
- Esempio 1: "fileName": "*.csv"- Example 1: "fileName": "*.csv"
- Esempio 2: "fileName": "???20180427.txt"- Example 2: "fileName": "???20180427.txt"
Usare ^ per il carattere escape se il nome effettivo del file include caratteri jolly o escape.Use ^ to escape if your actual file name has wildcard or this escape char inside.

Quando fileName non è specificato per un set di dati di output e preserveHierarchy non è specificato nel sink dell'attività, l'attività di copia genera automaticamente il nome del file con il modello seguente: "Data. [ GUID ID esecuzione attività]. [GUID se FlattenHierarchy]. [format se configurato]. [compressione se configurata] ", ad esempio" Data. 0a405f8a-93ff-4C6F-B3BE-f69616f1df7a. txt. gz "; Se si copia da un'origine tabulare usando il nome della tabella anziché la query, il modello del nome è " [nome tabella]. [ formato]. [compressione se configurata] ", ad esempio" MyTable. csv ".When fileName isn't specified for an output dataset and preserveHierarchy isn't specified in the activity sink, the copy activity automatically generates the file name with the following pattern: "Data.[activity run ID GUID].[GUID if FlattenHierarchy].[format if configured].[compression if configured]", e.g. "Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt.gz"; if you copy from tabular source using table name instead of query, the name pattern is "[table name].[format].[compression if configured]", e.g. "MyTable.csv".
NoNo
modifiedDatetimeStartmodifiedDatetimeStart Filtro file basato sull'attributo: data Ultima modifica.Files filter based on the attribute: Last Modified. I file vengono selezionati se l'ora dell'ultima modifica è inclusa nell'intervallo di tempo tra modifiedDatetimeStart e modifiedDatetimeEnd.The files will be selected if their last modified time are within the time range between modifiedDatetimeStart and modifiedDatetimeEnd. L'ora viene applicata con il fuso orario UTC e il formato "2018-12-01T05:00:00Z".The time is applied to UTC time zone in the format of "2018-12-01T05:00:00Z".

Tenere presente che le prestazioni complessive dello spostamento dei dati saranno influenzate dall'abilitazione di questa impostazione quando si desidera eseguire il filtro file da grandi quantità di file.Be aware the overall performance of data movement will be impacted by enabling this setting when you want to do file filter from huge amounts of files.

Le proprietà possono essere NULL che significa che al set di dati non verrà applicato alcun filtro di attributi di file.The properties can be NULL that mean no file attribute filter will be applied to the dataset. Quando modifiedDatetimeStart ha un valore datetime ma modifiedDatetimeEnd è NULL, vengono selezionati i file il cui ultimo attributo modificato è maggiore o uguale al valore datetime.When modifiedDatetimeStart has datetime value but modifiedDatetimeEnd is NULL, it means the files whose last modified attribute is greater than or equal with the datetime value will be selected. Quando modifiedDatetimeEnd ha un valore datetime ma modifiedDatetimeStart è NULL vengono selezionati i file il cui ultimo attributo modificato è minore del valore datetime.When modifiedDatetimeEnd has datetime value but modifiedDatetimeStart is NULL, it means the files whose last modified attribute is less than the datetime value will be selected.
NoNo
modifiedDatetimeEndmodifiedDatetimeEnd Filtro file basato sull'attributo: data Ultima modifica.Files filter based on the attribute: Last Modified. I file vengono selezionati se l'ora dell'ultima modifica è inclusa nell'intervallo di tempo tra modifiedDatetimeStart e modifiedDatetimeEnd.The files will be selected if their last modified time are within the time range between modifiedDatetimeStart and modifiedDatetimeEnd. L'ora viene applicata con il fuso orario UTC e il formato "2018-12-01T05:00:00Z".The time is applied to UTC time zone in the format of "2018-12-01T05:00:00Z".

Tenere presente che le prestazioni complessive dello spostamento dei dati saranno influenzate dall'abilitazione di questa impostazione quando si desidera eseguire il filtro file da grandi quantità di file.Be aware the overall performance of data movement will be impacted by enabling this setting when you want to do file filter from huge amounts of files.

Le proprietà possono essere NULL che significa che al set di dati non verrà applicato alcun filtro di attributi di file.The properties can be NULL that mean no file attribute filter will be applied to the dataset. Quando modifiedDatetimeStart ha un valore datetime ma modifiedDatetimeEnd è NULL, vengono selezionati i file il cui ultimo attributo modificato è maggiore o uguale al valore datetime.When modifiedDatetimeStart has datetime value but modifiedDatetimeEnd is NULL, it means the files whose last modified attribute is greater than or equal with the datetime value will be selected. Quando modifiedDatetimeEnd ha un valore datetime ma modifiedDatetimeStart è NULL vengono selezionati i file il cui ultimo attributo modificato è minore del valore datetime.When modifiedDatetimeEnd has datetime value but modifiedDatetimeStart is NULL, it means the files whose last modified attribute is less than the datetime value will be selected.
NoNo
formatformat Per copiare i file così come sono tra archivi basati su file (copia binaria), è possibile ignorare la sezione del formato nelle definizioni dei set di dati di input e di output.If you want to copy files as-is between file-based stores (binary copy), skip the format section in both input and output dataset definitions.

Se si vuole analizzare o generare file con un formato specifico, sono supportati i tipi di formato seguenti: TextFormat, JsonFormat, AvroFormat, OrcFormat e ParquetFormat.If you want to parse or generate files with a specific format, the following file format types are supported: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Impostare la proprietà type nell'area format su uno di questi valori.Set the type property under format to one of these values. Per altre informazioni, vedere le sezioni TextFormat, JsonFormat, AvroFormat, OrcFormat e ParquetFormat.For more information, see Text Format, Json Format, Avro Format, Orc Format, and Parquet Format sections.
No (solo per uno scenario di copia binaria)No (only for binary copy scenario)
compressionecompression Specificare il tipo e il livello di compressione dei dati.Specify the type and level of compression for the data. Per altre informazioni, vedere l'articolo sui formati di file supportati e i codec di compressione.For more information, see Supported file formats and compression codecs.
I tipi supportati sono GZip, Deflate, BZip2 e ZipDeflate.Supported types are: GZip, Deflate, BZip2, and ZipDeflate.
I livelli supportati sono Ottimale e Più veloce.Supported levels are: Optimal and Fastest.
NoNo

Suggerimento

Per copiare tutti i file in una cartella, specificare solo folderPath.To copy all files under a folder, specify folderPath only.
Per copiare un singolo file con un determinato nome, specificare folderPath con il percorso della cartella e fileName con il nome del file.To copy a single file with a given name, specify folderPath with folder part and fileName with file name.
Per copiare un subset di file in una cartella, specificare folderPath con il percorso della cartella e fileName con il filtro con caratteri jolly.To copy a subset of files under a folder, specify folderPath with folder part and fileName with wildcard filter.

Nota

Se si usa la proprietà "fileFilter" per il filtro dei file, è comunque supportata senza alcuna modifica, mentre in futuro verrà consigliato di usare la nuova funzionalità di filtro aggiunta a "fileName".If you were using "fileFilter" property for file filter, it is still supported as-is, while you are suggested to use the new filter capability added to "fileName" going forward.

Esempio:Example:

{
    "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"
            }
        }
    }
}

Proprietà dell'attività di copiaCopy activity properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione delle attività, vedere l'articolo sulle pipeline.For a full list of sections and properties available for defining activities, see the Pipelines article. Questa sezione presenta un elenco delle proprietà supportate dall'origine e dal sink file system.This section provides a list of properties supported by file system source and sink.

File system come origineFile system as source

Azure Data Factory supportano i formati di file seguenti.Azure Data Factory support the following file formats. Fare riferimento a ogni articolo sulle impostazioni basate sul formato.Refer to each article on format-based settings.

Le proprietà seguenti sono supportate per file system in impostazioni storeSettings in origine copia basata sul formato:The following properties are supported for file system under storeSettings settings in format-based copy source:

ProprietàProperty DescrizioneDescription ObbligatorioRequired
typetype La proprietà Type in storeSettings deve essere impostata su FileServerReadSetting.The type property under storeSettings must be set to FileServerReadSetting. Yes
ricorsivarecursive Indica se i dati vengono letti in modo ricorsivo dalle cartelle secondarie o solo dalla cartella specificata.Indicates whether the data is read recursively from the subfolders or only from the specified folder. Si noti che quando la proprietà recursive è impostata su true e il sink è un archivio basato su file, una cartella o una sottocartella vuota non viene copiata o creata nel sink.Note that when recursive is set to true and the sink is a file-based store, an empty folder or subfolder isn't copied or created at the sink. I valori consentiti sono true (predefinito) e false.Allowed values are true (default) and false. NoNo
wildcardFolderPathwildcardFolderPath Percorso della cartella con caratteri jolly per filtrare le cartelle di origine.The folder path with wildcard characters to filter source folders.
I caratteri jolly consentiti sono: * (corrisponde a zero o più caratteri) e ? (corrisponde a zero caratteri o a un carattere singolo). Usare ^ come carattere di escape se il nome effettivo della cartella include caratteri jolly o questo carattere di escape.Allowed wildcards are: * (matches zero or more characters) and ? (matches zero or single character); use ^ to escape if your actual folder name has wildcard or this escape char inside.
Vedere altri esempi in Esempi di filtro file e cartelle.See more examples in Folder and file filter examples.
NoNo
wildcardFileNamewildcardFileName Nome file con caratteri jolly sotto il folderPath/wildcardFolderPath specificato per filtrare i file di origine.The file name with wildcard characters under the given folderPath/wildcardFolderPath to filter source files.
I caratteri jolly consentiti sono: * (corrisponde a zero o più caratteri) e ? (corrisponde a zero caratteri o a un carattere singolo). Usare ^ come carattere di escape se il nome effettivo della cartella include caratteri jolly o questo carattere di escape.Allowed wildcards are: * (matches zero or more characters) and ? (matches zero or single character); use ^ to escape if your actual folder name has wildcard or this escape char inside. Vedere altri esempi in Esempi di filtro file e cartelle.See more examples in Folder and file filter examples. [Tenere presente che l'impostazione del nome file verrà sovraregolata][Please note that this will overrule your fileName setting]
Sì se fileName non è specificato nel DataSetYes if fileName is not specified in dataset
modifiedDatetimeStartmodifiedDatetimeStart Filtro file basato sull'attributo: data Ultima modifica.Files filter based on the attribute: Last Modified. I file vengono selezionati se l'ora dell'ultima modifica è inclusa nell'intervallo di tempo tra modifiedDatetimeStart e modifiedDatetimeEnd.The files will be selected if their last modified time are within the time range between modifiedDatetimeStart and modifiedDatetimeEnd. L'ora viene applicata con il fuso orario UTC e il formato "2018-12-01T05:00:00Z".The time is applied to UTC time zone in the format of "2018-12-01T05:00:00Z".
Le proprietà possono essere NULL, a indicare che al set di dati non viene applicato alcun filtro di attributo di file.The properties can be NULL which mean no file attribute filter will be applied to the dataset. Quando modifiedDatetimeStart ha un valore datetime ma modifiedDatetimeEnd è NULL, vengono selezionati i file il cui ultimo attributo modificato è maggiore o uguale al valore datetime.When modifiedDatetimeStart has datetime value but modifiedDatetimeEnd is NULL, it means the files whose last modified attribute is greater than or equal with the datetime value will be selected. Quando modifiedDatetimeEnd ha un valore datetime ma modifiedDatetimeStart è NULL vengono selezionati i file il cui ultimo attributo modificato è minore del valore datetime.When modifiedDatetimeEnd has datetime value but modifiedDatetimeStart is NULL, it means the files whose last modified attribute is less than the datetime value will be selected.
NoNo
modifiedDatetimeEndmodifiedDatetimeEnd Come sopra.Same as above. NoNo
maxConcurrentConnectionsmaxConcurrentConnections Numero di connessioni simultanee per la connessione all'archivio di archiviazione.The number of the connections to connect to storage store concurrently. Specificare solo quando si desidera limitare la connessione simultanea all'archivio dati.Specify only when you want to limit the concurrent connection to the data store. NoNo

Esempio:Example:

"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": "DelimitedTextReadSetting",
                    "skipLineCount": 10
                },
                "storeSettings":{
                    "type": "FileServerReadSetting",
                    "recursive": true,
                    "wildcardFolderPath": "myfolder*A",
                    "wildcardFileName": "*.csv"
                }
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Modello di origine legacyLegacy source model

Nota

Il modello di origine della copia seguente è ancora supportato così com'è per la compatibilità con le versioni precedenti.The following copy source model is still supported as-is for backward compatibility. Si consiglia di usare il nuovo modello menzionato in precedenza e l'interfaccia utente di creazione di ADF ha cambiato la generazione del nuovo modello.You are suggested to use the new model mentioned above going forward, and the ADF authoring UI has switched to generating the new model.

ProprietàProperty DescrizioneDescription ObbligatorioRequired
typetype La proprietà type dell'origine dell'attività di copia deve essere impostata su: FileSystemSourceThe type property of the copy activity source must be set to: FileSystemSource Yes
ricorsivarecursive Indica se i dati vengono letti in modo ricorsivo dalle cartelle secondarie o solo dalla cartella specificata.Indicates whether the data is read recursively from the sub-folders or only from the specified folder. Si noti che se recursive è impostata su true e il sink è un archivio basato su file, la cartella o la sottocartella vuota non verrà copiata o creata nel sink.Note when recursive is set to true and sink is file-based store, empty folder/sub-folder will not be copied/created at sink.
I valori consentiti sono: true (predefinito), falseAllowed values are: true (default), false
NoNo
maxConcurrentConnectionsmaxConcurrentConnections Numero di connessioni simultanee per la connessione all'archivio di archiviazione.The number of the connections to connect to storage store concurrently. Specificare solo quando si desidera limitare la connessione simultanea all'archivio dati.Specify only when you want to limit the concurrent connection to the data store. NoNo

Esempio:Example:

"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>"
            }
        }
    }
]

File system come sinkFile system as sink

Azure Data Factory supportano i formati di file seguenti.Azure Data Factory support the following file formats. Fare riferimento a ogni articolo sulle impostazioni basate sul formato.Refer to each article on format-based settings.

Le proprietà seguenti sono supportate per file system in impostazioni storeSettings nel sink di copia basato sul formato:The following properties are supported for file system under storeSettings settings in format-based copy sink:

ProprietàProperty DescrizioneDescription ObbligatorioRequired
typetype La proprietà Type in storeSettings deve essere impostata su FileServerWriteSetting.The type property under storeSettings must be set to FileServerWriteSetting. Yes
copyBehaviorcopyBehavior Definisce il comportamento di copia quando l'origine è costituita da file di un archivio dati basato su file.Defines the copy behavior when the source is files from a file-based data store.

I valori consentiti sono i seguenti:Allowed values are:
- PreserveHierarchy (predefinito): mantiene la gerarchia dei file nella cartella di destinazione.- PreserveHierarchy (default): Preserves the file hierarchy in the target folder. Il percorso relativo del file di origine nella cartella di origine è identico al percorso relativo del file di destinazione nella cartella di destinazione.The relative path of source file to source folder is identical to the relative path of target file to target folder.
- FlattenHierarchy: tutti i file della cartella di origine si trovano nel primo livello della cartella di destinazione.- FlattenHierarchy: All files from the source folder are in the first level of the target folder. I nomi dei file di destinazione vengono generati automaticamente.The target files have autogenerated names.
- MergeFiles: unisce tutti i file della cartella di origine in un solo file.- MergeFiles: Merges all files from the source folder to one file. Se si specifica il nome di file, il nome del file unito sarà il nome specificato.If the file name is specified, the merged file name is the specified name. In caso contrario, verrà usato un nome di file generato automaticamente.Otherwise, it's an autogenerated file name.
NoNo
maxConcurrentConnectionsmaxConcurrentConnections Numero di connessioni per la connessione all'archivio dati contemporaneamente.The number of the connections to connect to the data store concurrently. Specificare solo quando si desidera limitare la connessione simultanea all'archivio dati.Specify only when you want to limit the concurrent connection to the data store. NoNo

Esempio:Example:

"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": "FileServerWriteSetting",
                    "copyBehavior": "PreserveHierarchy"
                }
            }
        }
    }
]

Modello di sink legacyLegacy sink model

Nota

Il modello di sink di copia seguente è ancora supportato così com'è per la compatibilità con le versioni precedenti.The following copy sink model is still supported as-is for backward compatibility. Si consiglia di usare il nuovo modello menzionato in precedenza e l'interfaccia utente di creazione di ADF ha cambiato la generazione del nuovo modello.You are suggested to use the new model mentioned above going forward, and the ADF authoring UI has switched to generating the new model.

ProprietàProperty DescrizioneDescription ObbligatorioRequired
typetype La proprietà type del sink dell'attività di copia deve essere impostata su: FileSystemSinkThe type property of the copy activity sink must be set to: FileSystemSink Yes
copyBehaviorcopyBehavior Definisce il comportamento di copia quando l'origine è costituita da file di un archivio dati basato su file.Defines the copy behavior when the source is files from file-based data store.

I valori consentiti sono i seguenti:Allowed values are:
- PreserveHierarchy (predefinito): mantiene la gerarchia dei file nella cartella di destinazione.- PreserveHierarchy (default): preserves the file hierarchy in the target folder. Il percorso relativo del file di origine nella cartella di origine è identico al percorso relativo del file di destinazione nella cartella di destinazione.The relative path of source file to source folder is identical to the relative path of target file to target folder.
- FlattenHierarchy: tutti i file della cartella di origine si trovano nel primo livello della cartella di destinazione.- FlattenHierarchy: all files from the source folder are in the first level of target folder. Il nome dei file di destinazione viene generato automaticamente.The target files have auto generated name.
- MergeFiles: unisce tutti i file della cartella di origine in un solo file.- MergeFiles: merges all files from the source folder to one file. Se viene specificato il nome del file, il nome del file Unito sarà il nome specificato; in caso contrario, verrebbe generato automaticamente il nome del file.If the File Name is specified, the merged file name would be the specified name; otherwise, would be auto-generated file name.
NoNo
maxConcurrentConnectionsmaxConcurrentConnections Numero di connessioni simultanee per la connessione all'archivio di archiviazione.The number of the connections to connect to storage store concurrently. Specificare solo quando si desidera limitare la connessione simultanea all'archivio dati.Specify only when you want to limit the concurrent connection to the data store. NoNo

Esempio:Example:

"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"
            }
        }
    }
]

Esempi di filtro file e cartelleFolder and file filter examples

Questa sezione descrive il comportamento risultante del percorso cartella e del nome del file con i filtri con caratteri jolly.This section describes the resulting behavior of the folder path and file name with wildcard filters.

folderPathfolderPath fileNamefileName ricorsivarecursive Struttura delle cartelle di origine e risultato del filtro (i file in grassetto sono stati recuperati)Source folder structure and filter result (files in bold are retrieved)
Folder* (vuoto, usare valore predefinito)(empty, use default) falsefalse CartellaAFolderA
    File1.csv    File1.csv
    File2.json    File2.json
    Sottocartella1    Subfolder1
        File3.csv        File3.csv
        File4.json        File4.json
        File5.csv        File5.csv
AltraCartellaBAnotherFolderB
    File6.csv    File6.csv
Folder* (vuoto, usare valore predefinito)(empty, use default) truetrue CartellaAFolderA
    File1.csv    File1.csv
    File2.json    File2.json
    Sottocartella1    Subfolder1
        File3.csv        File3.csv
        File4.json        File4.json
        File5.csv        File5.csv
AltraCartellaBAnotherFolderB
    File6.csv    File6.csv
Folder* *.csv falsefalse CartellaAFolderA
    File1.csv    File1.csv
    File2.json    File2.json
    Sottocartella1    Subfolder1
        File3.csv        File3.csv
        File4.json        File4.json
        File5.csv        File5.csv
AltraCartellaBAnotherFolderB
    File6.csv    File6.csv
Folder* *.csv truetrue CartellaAFolderA
    File1.csv    File1.csv
    File2.json    File2.json
    Sottocartella1    Subfolder1
        File3.csv        File3.csv
        File4.json        File4.json
        File5.csv        File5.csv
AltraCartellaBAnotherFolderB
    File6.csv    File6.csv

esempi ricorsivi e copyBehaviorrecursive and copyBehavior examples

In questa sezione viene descritto il comportamento derivante dell'operazione di copia per diverse combinazioni di valori ricorsivi e copyBehavior.This section describes the resulting behavior of the Copy operation for different combinations of recursive and copyBehavior values.

ricorsivarecursive copyBehaviorcopyBehavior Struttura della cartella di origineSource folder structure Destinazione risultanteResulting target
truetrue preserveHierarchypreserveHierarchy Cartella1Folder1
    File1    File1
    File2    File2
    Sottocartella1    Subfolder1
         File3        File3
        File4        File4
         File5        File5
La cartella di destinazione Cartella1 viene creata con la stessa struttura dell'origine:The target folder Folder1 is created with the same structure as the source:

Cartella1Folder1
    File1    File1
    File2    File2
    Sottocartella1    Subfolder1
         File3        File3
        File4        File4
         File5.        File5.
truetrue flattenHierarchyflattenHierarchy Cartella1Folder1
    File1    File1
    File2    File2
    Sottocartella1    Subfolder1
         File3        File3
        File4        File4
         File5        File5
La Cartella1 di destinazione viene creata con la struttura seguente:The target Folder1 is created with the following structure:

Cartella1Folder1
    Nome generato automaticamente per File1    auto-generated name for File1
    nome generato automaticamente per File2    auto-generated name for File2
    nome generato automaticamente per File3    auto-generated name for File3
    nome generato automaticamente per File4    auto-generated name for File4
    nome generato automaticamente per File5    auto-generated name for File5
truetrue mergeFilesmergeFiles Cartella1Folder1
    File1    File1
    File2    File2
    Sottocartella1    Subfolder1
         File3        File3
        File4        File4
         File5        File5
La Cartella1 di destinazione viene creata con la struttura seguente:The target Folder1 is created with the following structure:

Cartella1Folder1
    Il contenuto di File1 + File2 + File3 + File4 + File 5 viene unito in un file con nome file generato automaticamente    File1 + File2 + File3 + File4 + File 5 contents are merged into one file with auto-generated file name
falsefalse preserveHierarchypreserveHierarchy Cartella1Folder1
    File1    File1
    File2    File2
    Sottocartella1    Subfolder1
         File3        File3
        File4        File4
         File5        File5
La Cartella1 di destinazione viene creata con la struttura seguenteThe target folder Folder1 is created with the following structure

Cartella1Folder1
    File1    File1
    File2    File2

Sottocartella1 con File3, File4 e File5 non considerati.Subfolder1 with File3, File4, and File5 are not picked up.
falsefalse flattenHierarchyflattenHierarchy Cartella1Folder1
    File1    File1
    File2    File2
    Sottocartella1    Subfolder1
         File3        File3
        File4        File4
         File5        File5
La Cartella1 di destinazione viene creata con la struttura seguenteThe target folder Folder1 is created with the following structure

Cartella1Folder1
    Nome generato automaticamente per File1    auto-generated name for File1
    nome generato automaticamente per File2    auto-generated name for File2

Sottocartella1 con File3, File4 e File5 non considerati.Subfolder1 with File3, File4, and File5 are not picked up.
falsefalse mergeFilesmergeFiles Cartella1Folder1
    File1    File1
    File2    File2
    Sottocartella1    Subfolder1
         File3        File3
        File4        File4
         File5        File5
La Cartella1 di destinazione viene creata con la struttura seguenteThe target folder Folder1 is created with the following structure

Cartella1Folder1
    Il contenuto di File1 + File2 viene unito in un file con un nome file generato automaticamente.    File1 + File2 contents are merged into one file with auto-generated file name. Nome generato automaticamente per File1auto-generated name for File1

Sottocartella1 con File3, File4 e File5 non considerati.Subfolder1 with File3, File4, and File5 are not picked up.

Proprietà attività di ricercaLookup activity properties

Per informazioni dettagliate sulle proprietà, controllare l' attività di ricerca.To learn details about the properties, check Lookup activity.

Proprietà dell'attività GetMetadataGetMetadata activity properties

Per informazioni dettagliate sulle proprietà, controllare l' attività GetMetadataTo learn details about the properties, check GetMetadata activity

Elimina proprietà attivitàDelete activity properties

Per informazioni dettagliate sulle proprietà, controllare l' attività di eliminazioneTo learn details about the properties, check Delete activity

Passaggi successiviNext steps

Per un elenco degli archivi dati supportati come origini o sink dall'attività di copia in Azure Data Factory, vedere gli archivi dati supportati.For a list of data stores supported as sources and sinks by the copy activity in Azure Data Factory, see supported data stores.