Kopiera data till eller från ett filsystem med hjälp av Azure Data Factory eller Azure Synapse Analytics
GÄLLER FÖR: Azure Data Factory Azure Synapse Analytics
Dricks
Prova Data Factory i Microsoft Fabric, en allt-i-ett-analyslösning för företag. Microsoft Fabric omfattar allt från dataflytt till datavetenskap, realtidsanalys, business intelligence och rapportering. Lär dig hur du startar en ny utvärderingsversion kostnadsfritt!
Den här artikeln beskriver hur du kopierar data till och från filsystemet. Mer information finns i introduktionsartikeln för Azure Data Factory eller Azure Synapse Analytics.
Funktioner som stöds
Den här filsystemanslutningsappen stöds för följande funktioner:
Funktioner som stöds | IR |
---|---|
Kopieringsaktivitet (källa/mottagare) | (1) (2) |
Sökningsaktivitet | (1) (2) |
GetMetadata-aktivitet | (1) (2) |
Ta bort aktivitet | (1) (2) |
(1) Azure Integration Runtime (2) Lokalt installerad integrationskörning
Mer specifikt stöder den här anslutningsappen för filsystem:
- Kopierar filer från/till nätverksfilresurs. Om du vill använda en Linux-filresurs installerar du Samba på Linux-servern.
- Kopiera filer med Windows-autentisering.
- Kopiera filer som de är eller parsa/generera filer med de filformat och komprimeringskodex som stöds.
Förutsättningar
Om ditt datalager finns i ett lokalt nätverk, ett virtuellt Azure-nätverk eller Amazon Virtual Private Cloud måste du konfigurera en lokalt installerad integrationskörning för att ansluta till det.
Om ditt datalager är en hanterad molndatatjänst kan du använda Azure Integration Runtime. Om åtkomsten är begränsad till IP-adresser som är godkända i brandväggsreglerna kan du lägga till Azure Integration Runtime-IP-adresser i listan över tillåtna.
Du kan också använda funktionen för integrering av hanterade virtuella nätverk i Azure Data Factory för att få åtkomst till det lokala nätverket utan att installera och konfigurera en lokalt installerad integrationskörning.
Mer information om de nätverkssäkerhetsmekanismer och alternativ som stöds av Data Factory finns i Strategier för dataåtkomst.
Komma igång
Om du vill utföra kopieringsaktiviteten med en pipeline kan du använda något av följande verktyg eller SDK:er:
- Verktyget Kopiera data
- Azure-portalen
- The .NET SDK
- The Python SDK
- Azure PowerShell
- REST-API:et
- Azure Resource Manager-mallen
Skapa en länkad filsystemtjänst med hjälp av användargränssnittet
Använd följande steg för att skapa en länkad filsystemtjänst i Azure-portalens användargränssnitt.
Bläddra till fliken Hantera i Din Azure Data Factory- eller Synapse-arbetsyta och välj Länkade tjänster och välj sedan Nytt:
Sök efter filen och välj anslutningsprogrammet för filsystemet.
Konfigurera tjänstinformationen, testa anslutningen och skapa den nya länkade tjänsten.
Konfigurationsinformation för anslutningsprogram
Följande avsnitt innehåller information om egenskaper som används för att definiera Data Factory- och Synapse-pipelineentiteter som är specifika för filsystemet.
Länkade tjänstegenskaper
Följande egenskaper stöds för den länkade filsystemtjänsten:
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen måste anges till: FileServer. | Ja |
värd | Anger rotsökvägen för den mapp som du vill kopiera. Använd escape-tecknet för specialtecken i strängen. Se Exempel på länkade tjänst- och datamängdsdefinitioner . | Ja |
Användar-ID | Ange ID för den användare som har åtkomst till servern. | Ja |
password | Ange lösenordet för användaren (userId). Markera det här fältet som en SecureString för att lagra det på ett säkert sätt eller referera till en hemlighet som lagras i Azure Key Vault. | Ja |
connectVia | Integration Runtime som ska användas för att ansluta till datalagret. Läs mer i avsnittet Förutsättningar . Om den inte anges använder den standardkörningen för Azure-integrering. | Nej |
Exempel på länkade tjänst- och datauppsättningsdefinitioner
Scenario | "värd" i länkad tjänstdefinition | "folderPath" i datauppsättningsdefinition |
---|---|---|
Fjärrdelad mapp: Exempel: \\myserver\share\* eller \\myserver\share\folder\subfolder\* |
I JSON: \\\\myserver\\share I användargränssnittet: \\myserver\share |
I JSON: .\\ eller folder\\subfolder I användargränssnittet: .\ eller folder\subfolder |
Kommentar
När du redigerar via användargränssnittet behöver du inte ange dubbla omvänt snedstreck (\\
) för att komma undan som du gör via JSON och ange ett enda omvänt snedstreck.
Kommentar
Kopiering av filer från den lokala datorn stöds inte under Azure Integration Runtime.
Gå till kommandoraden härifrån för att aktivera åtkomsten till den lokala datorn under Lokalt installerad integrationskörning. Som standard är den inaktiverad.
Exempel:
{
"name": "FileLinkedService",
"properties": {
"type": "FileServer",
"typeProperties": {
"host": "<host>",
"userId": "<domain>\\<user>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Egenskaper för datauppsättning
En fullständig lista över avsnitt och egenskaper som är tillgängliga för att definiera datauppsättningar finns i artikeln Datauppsättningar .
Azure Data Factory stöder följande filformat. Se varje artikel för formatbaserade inställningar.
- Avro-format
- Binärt format
- Avgränsat textformat
- Excel-format
- JSON-format
- ORC-format
- Parquet-format
- XML-format
Följande egenskaper stöds för filsystemet under location
inställningar i formatbaserad datauppsättning:
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen under location i datamängden måste anges till FileServerLocation. |
Ja |
folderPath | Sökvägen till mappen. Om du vill använda jokertecken för att filtrera mappen hoppar du över den här inställningen och anger i inställningarna för aktivitetskällan. Du måste konfigurera filresursplatsen i Din Windows- eller Linux-miljö för att exponera mappen för delning. | Nej |
fileName | Filnamnet under den angivna folderPath. Om du vill använda jokertecken för att filtrera filer hoppar du över den här inställningen och anger i inställningarna för aktivitetskällan. | Nej |
Exempel:
{
"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"
}
}
}
Kopiera egenskaper för aktivitet
En fullständig lista över avsnitt och egenskaper som är tillgängliga för att definiera aktiviteter finns i artikeln Pipelines . Det här avsnittet innehåller en lista över egenskaper som stöds av filsystemets källa och mottagare.
Filsystem som källa
Azure Data Factory stöder följande filformat. Se varje artikel för formatbaserade inställningar.
- Avro-format
- Binärt format
- Avgränsat textformat
- Excel-format
- JSON-format
- ORC-format
- Parquet-format
- XML-format
Följande egenskaper stöds för filsystemet under storeSettings
inställningar i formatbaserad kopieringskälla:
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen under storeSettings måste anges till FileServerReadSettings. |
Ja |
Leta upp filerna som ska kopieras: | ||
ALTERNATIV 1: statisk sökväg |
Kopiera från den angivna mapp-/filsökvägen som anges i datauppsättningen. Om du vill kopiera alla filer från en mapp anger du wildcardFileName dessutom som * . |
|
ALTERNATIV 2: Filter på serversidan - fileFilter |
Inbyggt filter på filserversidan, vilket ger bättre prestanda än ALTERNATIV 3 jokerteckenfilter. Använd * för att matcha noll eller fler tecken och ? för att matcha noll eller ett enda tecken. Läs mer om syntaxen och anteckningarna från kommentarerna i det här avsnittet. |
Nej |
ALTERNATIV 3: Filter på klientsidan - jokerteckenFolderPath |
Mappsökvägen med jokertecken för att filtrera källmappar. Ett sådant filter sker inom tjänsten, vilket räknar upp mapparna/filerna under den angivna sökvägen och tillämpar sedan jokerteckenfiltret. Tillåtna jokertecken är: * (matchar noll eller fler tecken) och ? (matchar noll eller ett enda tecken); använd ^ för att fly om ditt faktiska mappnamn har jokertecken eller detta escape-tecken inuti. Se fler exempel i exempel på mapp- och filfilter. |
Nej |
ALTERNATIV 3: Filter på klientsidan - jokerteckenFileName |
Filnamnet med jokertecken under den angivna mappenPath/wildcardFolderPath för att filtrera källfiler. Ett sådant filter sker i tjänsten, vilket räknar upp filerna under den angivna sökvägen och tillämpar sedan jokerteckenfiltret. Tillåtna jokertecken är: * (matchar noll eller fler tecken) och ? (matchar noll eller enstaka tecken); använd ^ för att fly om ditt faktiska filnamn har jokertecken eller detta escape-tecken inuti.Se fler exempel i exempel på mapp- och filfilter. |
Ja |
ALTERNATIV 3: en lista över filer – fileListPath |
Anger att en angiven filuppsättning ska kopieras. Peka på en textfil som innehåller en lista över filer som du vill kopiera, en fil per rad, vilket är den relativa sökvägen till sökvägen som konfigurerats i datauppsättningen. Ange inte filnamn i datauppsättningen när du använder det här alternativet. Se fler exempel i fillisteexempel. |
Nej |
Ytterligare inställningar: | ||
rekursiv | Anger om data läse rekursivt från undermapparna eller endast från den angivna mappen. När rekursiv är inställd på true och mottagaren är ett filbaserat arkiv kopieras eller skapas inte en tom mapp eller undermapp i mottagaren. Tillåtna värden är sanna (standard) och falska. Den här egenskapen gäller inte när du konfigurerar fileListPath . |
Nej |
deleteFilesAfterCompletion | Anger om de binära filerna tas bort från källarkivet när de har flyttats till målarkivet. Filborttagningen sker per fil. Det innebär att när aktiviteten misslyckas ser du att vissa filer redan har kopierats till målet och tagits bort från källan, medan andra fortfarande finns kvar i källarkivet. Den här egenskapen är endast giltig i scenariot med kopiering av binära filer. Standardvärdet: false. |
Nej |
modifiedDatetimeStart | Filfilter baserat på attributet: Senast ändrad. Filerna väljs om deras senaste ändringstid är större än eller lika med modifiedDatetimeStart och mindre än modifiedDatetimeEnd . Tiden tillämpas på UTC-tidszonen i formatet YYYY-MM-DDTHH:mm:ssZ. Egenskaperna kan vara NULL, vilket innebär att inget filattributfilter tillämpas på datamängden. När modifiedDatetimeStart har datetime-värde men modifiedDatetimeEnd är NULL innebär det att de filer vars senast ändrade attribut är större än eller lika med datetime-värdet har valts. När modifiedDatetimeEnd har datetime-värde men modifiedDatetimeStart är NULL innebär det att de filer vars senast ändrade attribut är mindre än datetime-värdet har valts.Den här egenskapen gäller inte när du konfigurerar fileListPath . |
Nej |
modifiedDatetimeEnd | Samma som modifiedDateTimeStart. | Nej |
enablePartitionDiscovery | För filer som är partitionerade anger du om partitionerna ska parsas från filsökvägen och lägga till dem som extra källkolumner. Tillåtna värden är false (standard) och true. |
Nej |
partitionRootPath | När partitionsidentifiering är aktiverat anger du den absoluta rotsökvägen för att läsa partitionerade mappar som datakolumner. Om den inte har angetts, som standard, – När du använder filsökvägen i datauppsättningen eller listan över filer på källan är partitionsrotsökvägen den sökväg som konfigurerats i datauppsättningen. – När du använder mappfilter för jokertecken är partitionsrotsökvägen undersökvägen före det första jokertecknet. Anta till exempel att du konfigurerar sökvägen i datauppsättningen som "root/folder/year=2020/month=08/day=27": – Om du anger partitionsrotsökväg som "root/folder/year=2020" genererar kopieringsaktiviteten ytterligare två kolumner month och day med värdet "08" respektive "27", utöver kolumnerna i filerna.– Om partitionsrotsökvägen inte har angetts genereras ingen extra kolumn. |
Nej |
maxConcurrentConnections | Den övre gränsen för samtidiga anslutningar som upprättats till datalagret under aktivitetskörningen. Ange endast ett värde när du vill begränsa samtidiga anslutningar. | Nej |
Exempel:
"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>"
}
}
}
]
Filsystem som mottagare
Azure Data Factory stöder följande filformat. Se varje artikel för formatbaserade inställningar.
Kommentar
Alternativet MergeFiles copyBehavior är endast tillgängligt i Azure Data Factory-pipelines och inte Synapse Analytics-pipelines.
Följande egenskaper stöds för filsystemet under storeSettings
inställningar i formatbaserad kopieringsmottagare:
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen under storeSettings måste anges till FileServerWriteSettings. |
Ja |
copyBehavior | Definierar kopieringsbeteendet när källan är filer från ett filbaserat datalager. Tillåtna värden är: – PreserveHierarchy (standard): Bevarar filhierarkin i målmappen. Den relativa sökvägen för källfilen till källmappen är identisk med den relativa sökvägen för målfilen till målmappen. – FlattenHierarchy: Alla filer från källmappen finns på den första nivån i målmappen. Målfilerna har automatiskt genererade namn. – MergeFiles: Sammanfogar alla filer från källmappen till en fil. Om filnamnet anges är det kopplade filnamnet det angivna namnet. Annars är det ett automatiskt genererat filnamn. |
Nej |
maxConcurrentConnections | Den övre gränsen för samtidiga anslutningar som upprättats till datalagret under aktivitetskörningen. Ange endast ett värde när du vill begränsa samtidiga anslutningar. | Nej |
Exempel:
"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"
}
}
}
}
]
Exempel på mapp- och filfilter
I det här avsnittet beskrivs det resulterande beteendet för mappsökvägen och filnamnet med jokerteckenfilter.
folderPath | fileName | rekursiv | Källmappens struktur och filterresultat (filer i fetstil hämtas) |
---|---|---|---|
Folder* |
(tom, använd standard) | falskt | MappA File1.csv File2.json Undermapp1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
Folder* |
(tom, använd standard) | true | MappA File1.csv File2.json Undermapp1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
Folder* |
*.csv |
falskt | MappA File1.csv File2.json Undermapp1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
Folder* |
*.csv |
true | MappA File1.csv File2.json Undermapp1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
Exempel på fillista
I det här avsnittet beskrivs det resulterande beteendet för att använda sökvägen till fillistan i kopieringsaktivitetskällan.
Förutsatt att du har följande källmappstruktur och vill kopiera filerna i fetstil:
Exempel på källstruktur | Innehåll i FileListToCopy.txt | Pipelinekonfiguration |
---|---|---|
rot MappA File1.csv File2.json Undermapp1 File3.csv File4.json File5.csv Metadata FileListToCopy.txt |
File1.csv Undermapp1/File3.csv Undermapp1/File5.csv |
I datauppsättning: – Mappsökväg: root/FolderA I kopieringsaktivitetskällan: – Sökväg till fillista: root/Metadata/FileListToCopy.txt Sökvägen till fillistan pekar på en textfil i samma datalager. Den innehåller en lista över filer som du vill kopiera. Varje rad innehåller den relativa sökvägen till filen baserat på den rotsökväg som konfigurerats i datauppsättningen. |
rekursiva och copyBehavior-exempel
I det här avsnittet beskrivs det resulterande beteendet för kopieringsåtgärden för olika kombinationer av rekursiva och copyBehavior-värden.
rekursiv | copyBehavior | Källmappsstruktur | Resulterande mål |
---|---|---|---|
true | preserveHierarchy | Mapp1 Fil1 Fil 2 Undermapp1 Fil 3 Fil 4 Fil5 |
Målmappen Folder1 skapas med samma struktur som källan: Mapp1 Fil1 Fil 2 Undermapp1 Fil 3 Fil 4 Fil 5. |
true | flatHierarchy | Mapp1 Fil1 Fil 2 Undermapp1 Fil 3 Fil 4 Fil5 |
Målmapp1 skapas med följande struktur: Mapp1 autogenererat namn för File1 autogenererat namn för File2 autogenererat namn för File3 autogenererat namn för File4 autogenererat namn för File5 |
true | mergeFiles | Mapp1 Fil1 Fil 2 Undermapp1 Fil 3 Fil 4 Fil5 |
Målmapp1 skapas med följande struktur: Mapp1 File1 + File2 + File3 + File4 + File 5-innehåll sammanfogas i en fil med automatiskt genererat filnamn |
falskt | preserveHierarchy | Mapp1 Fil1 Fil 2 Undermapp1 Fil 3 Fil 4 Fil5 |
Målmappen Mapp1 skapas med följande struktur Mapp1 Fil1 Fil 2 Undermapp1 med File3, File4 och File5 hämtas inte. |
falskt | flatHierarchy | Mapp1 Fil1 Fil 2 Undermapp1 Fil 3 Fil 4 Fil5 |
Målmappen Mapp1 skapas med följande struktur Mapp1 autogenererat namn för File1 autogenererat namn för File2 Undermapp1 med File3, File4 och File5 hämtas inte. |
falskt | mergeFiles | Mapp1 Fil1 Fil 2 Undermapp1 Fil 3 Fil 4 Fil5 |
Målmappen Mapp1 skapas med följande struktur Mapp1 Fil1 + Fil2-innehåll sammanfogas i en fil med automatiskt genererat filnamn. autogenererat namn för File1 Undermapp1 med File3, File4 och File5 hämtas inte. |
Egenskaper för uppslagsaktivitet
Mer information om egenskaperna finns i Sökningsaktivitet.
Egenskaper för GetMetadata-aktivitet
Mer information om egenskaperna finns i GetMetadata-aktiviteten.
Ta bort aktivitetsegenskaper
Information om egenskaperna finns i Ta bort aktivitet.
Äldre modeller
Kommentar
Följande modeller stöds fortfarande som de är för bakåtkompatibilitet. Du rekommenderas att använda den nya modellen som nämns i ovanstående avsnitt framöver, och redigeringsgränssnittet har växlat till att generera den nya modellen.
Äldre datauppsättningsmodell
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen för datauppsättningen måste anges till: FileShare | Ja |
folderPath | Sökväg till mappen. Jokerteckenfilter stöds. Tillåtna jokertecken är: * (matchar noll eller fler tecken) och ? (matchar noll eller ett enda tecken); använd ^ för att fly om ditt faktiska mappnamn har jokertecken eller detta escape-tecken inuti. Exempel: rootfolder/subfolder/, se fler exempel i Exempel på länkade tjänst- och datauppsättningsdefinitioner och exempel på mapp- och filfilter. |
Nej |
fileName | Namn- eller jokerteckenfilter för filerna under den angivna "folderPath". Om du inte anger något värde för den här egenskapen pekar datauppsättningen på alla filer i mappen. För filter är tillåtna jokertecken: * (matchar noll eller fler tecken) och ? (matchar noll eller enskilt tecken).- Exempel 1: "fileName": "*.csv" - Exempel 2: "fileName": "???20180427.txt" Använd ^ för att komma undan om det faktiska filnamnet har jokertecken eller det här escape-teckenet inuti.När fileName inte har angetts för en utdatauppsättning och preserveHierarchy inte anges i aktivitetsmottagaren genererar kopieringsaktiviteten automatiskt filnamnet med följande mönster: "Data.[ aktivitetskörnings-ID GUID]. [GUID om FlatHierarchy]. [format om det är konfigurerat]. [komprimering om konfigurerad]", till exempel "Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt.gz"; om du kopierar från tabellkälla med tabellnamn i stället för fråga är namnmönstret "[tabellnamn].[ format]. [komprimering om konfigurerad]", till exempel "MyTable.csv". |
Nej |
modifiedDatetimeStart | Filfilter baserat på attributet: Senast ändrad. Filerna väljs om deras senaste ändringstid är större än eller lika med modifiedDatetimeStart och mindre än modifiedDatetimeEnd . Tiden tillämpas på UTC-tidszonen i formatet YYYY-MM-DDTHH:mm:ssZ. Tänk på att den övergripande prestandan för dataförflyttning påverkas genom att aktivera den här inställningen när du vill filtrera filer från stora mängder filer. Egenskaperna kan vara NULL, vilket innebär att inget filattributfilter tillämpas på datamängden. När modifiedDatetimeStart har datetime-värde men modifiedDatetimeEnd är NULL innebär det att de filer vars senast ändrade attribut är större än eller lika med datetime-värdet har valts. När modifiedDatetimeEnd har datetime-värde men modifiedDatetimeStart är NULL innebär det att de filer vars senast ändrade attribut är mindre än datetime-värdet har valts. |
Nej |
modifiedDatetimeEnd | Filfilter baserat på attributet: Senast ändrad. Filerna väljs om deras senaste ändringstid är större än eller lika med modifiedDatetimeStart och mindre än modifiedDatetimeEnd . Tiden tillämpas på UTC-tidszonen i formatet "2018-12-01T05:00:00Z". Tänk på att den övergripande prestandan för dataförflyttning påverkas genom att aktivera den här inställningen när du vill filtrera filer från stora mängder filer. Egenskaperna kan vara NULL, vilket innebär att inget filattributfilter tillämpas på datamängden. När modifiedDatetimeStart har datetime-värde men modifiedDatetimeEnd är NULL innebär det att de filer vars senast ändrade attribut är större än eller lika med datetime-värdet har valts. När modifiedDatetimeEnd har datetime-värde men modifiedDatetimeStart är NULL innebär det att de filer vars senast ändrade attribut är mindre än datetime-värdet har valts. |
Nej |
format | Om du vill kopiera filer som de är mellan filbaserade lager (binär kopia) hoppar du över formatavsnittet i både indata- och utdatauppsättningsdefinitioner. Om du vill parsa eller generera filer med ett visst format stöds följande filformattyper: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Ange typegenskapen under format till ett av dessa värden. Mer information finns i avsnitten Textformat, Json-format, Avro-format, Orc-format och Parquet-format . |
Nej (endast för scenario med binär kopiering) |
komprimering | Ange typ och komprimeringsnivå för data. Mer information finns i Filformat som stöds och komprimeringskodex. Typer som stöds är: GZip, Deflate, BZip2 och ZipDeflate. Nivåerna som stöds är: Optimala och snabbaste. |
Nej |
Dricks
Om du vill kopiera alla filer under en mapp anger du endast folderPath .
Om du vill kopiera en enskild fil med ett angivet namn anger du folderPath med mappdel och fileName med filnamn.
Om du vill kopiera en delmängd av filer under en mapp anger du folderPath med mappdel och fileName med jokerteckenfilter.
Kommentar
Om du använder egenskapen "fileFilter" för filfilter stöds den fortfarande som den är, medan du rekommenderas att använda den nya filterfunktionen som läggs till i "fileName" framöver.
Exempel:
{
"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"
}
}
}
}
Källmodell för äldre kopieringsaktivitet
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen för kopieringsaktivitetskällan måste anges till: FileSystemSource | Ja |
rekursiv | Anger om data läse rekursivt från undermapparna eller endast från den angivna mappen. Observera att när rekursivt är inställt på sant och mottagare är filbaserat arkiv kopieras inte den tomma mappen/undermappen i mottagare. Tillåtna värden är: true (standard), false |
Nej |
maxConcurrentConnections | Den övre gränsen för samtidiga anslutningar som upprättats till datalagret under aktivitetskörningen. Ange endast ett värde när du vill begränsa samtidiga anslutningar. | Nej |
Exempel:
"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>"
}
}
}
]
Modell för äldre kopieringsaktivitetsmottagare
Property | Beskrivning | Obligatoriskt |
---|---|---|
type | Typegenskapen för kopieringsaktivitetsmottagaren måste anges till: FileSystemSink | Ja |
copyBehavior | Definierar kopieringsbeteendet när källan är filer från filbaserat datalager. Tillåtna värden är: – PreserveHierarchy (standard): bevarar filhierarkin i målmappen. Den relativa sökvägen för källfilen till källmappen är identisk med den relativa sökvägen för målfilen till målmappen. – FlattenHierarchy: alla filer från källmappen finns på den första nivån i målmappen. Målfilnamnen genereras automatiskt. – MergeFiles: sammanfogar alla filer från källmappen till en fil. Ingen postdeduplicering utförs under sammanfogningen. Om filnamnet anges är det kopplade filnamnet det angivna namnet. annars skulle vara automatiskt genererat filnamn. |
Nej |
maxConcurrentConnections | Den övre gränsen för samtidiga anslutningar som upprättats till datalagret under aktivitetskörningen. Ange endast ett värde när du vill begränsa samtidiga anslutningar. | Nej |
Exempel:
"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"
}
}
}
]
Relaterat innehåll
En lista över datalager som stöds som källor och mottagare av kopieringsaktiviteten finns i datalager som stöds.