Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
DOTYCZY:
Azure Data Factory
Azure Synapse Analytics
Napiwek
Wypróbuj usługę Data Factory w usłudze Microsoft Fabric — rozwiązanie analityczne typu all-in-one dla przedsiębiorstw. Usługa Microsoft Fabric obejmuje wszystko, od przenoszenia danych do nauki o danych, analizy w czasie rzeczywistym, analizy biznesowej i raportowania. Dowiedz się, jak bezpłatnie rozpocząć nową wersję próbną !
W tym artykule opisano sposób kopiowania danych do i z systemu plików. Aby dowiedzieć się więcej, przeczytaj artykuł wprowadzający dotyczący usługi Azure Data Factory lub Azure Synapse Analytics.
Obsługiwane możliwości
Ten łącznik systemu plików jest obsługiwany w następujących funkcjach:
| Obsługiwane możliwości | środowisko IR |
|---|---|
| działanie Kopiuj (źródło/ujście) | (1) (2) |
| Działanie Wyszukiwania | (1) (2) |
| Działanie GetMetadata | (1) (2) |
| Usuń działanie | (1) (2) |
(1) Środowisko uruchomieniowe Azure (2) Lokalne środowisko uruchomieniowe
W szczególności ten łącznik systemu plików obsługuje następujące elementy:
- Kopiowanie plików z/do zasobu sieciowego. Aby używać udziału plików Linux, zainstaluj program Samba na swoim serwerze Linux.
- Kopiowanie plików przy użyciu uwierzytelniania systemu Windows .
- Kopiowanie plików bez zmian lub analizowanie/generowanie plików przy użyciu obsługiwanych formatów plików i kodeków kompresji.
Wymagania wstępne
Jeśli magazyn danych znajduje się w sieci lokalnej, sieci wirtualnej Azure lub w środowisku Amazon Virtual Private Cloud, musisz skonfigurować własne środowisko uruchomieniowe integracji, aby się z nim połączyć.
Jeśli magazyn danych jest zarządzaną usługą danych w chmurze, możesz użyć środowiska Azure Integration Runtime. Jeśli dostęp jest ograniczony do adresów IP zatwierdzonych w regułach zapory, możesz dodać adresy IP środowiska Azure Integration Runtime do listy dozwolonych.
Możesz również użyć funkcji środowiska Integration Runtime zarządzanej sieci wirtualnej w usłudze Azure Data Factory, aby uzyskać dostęp do sieci lokalnej bez instalowania i konfigurowania własnego środowiska Integration Runtime.
Aby uzyskać więcej informacji na temat mechanizmów zabezpieczeń sieci i opcji obsługiwanych przez usługę Data Factory, zobacz Strategie dostępu do danych.
Wprowadzenie
Aby wykonać działanie kopiowania za pomocą potoku, możesz użyć jednego z następujących narzędzi lub zestawów SDK:
- Narzędzie do kopiowania danych
- Portal Azure
- zestawu SDK platformy .NET
- Zestaw SDK dla języka Python
- Azure PowerShell
- API REST
- Szablon usługi Azure Resource Manager
Tworzenie połączonej usługi systemu plików przy użyciu interfejsu użytkownika
Wykonaj poniższe kroki, aby utworzyć połączoną usługę systemu plików w interfejsie użytkownika witryny Azure Portal.
Przejdź do karty Zarządzanie w obszarze roboczym usługi Azure Data Factory lub Synapse i wybierz pozycję Połączone usługi, a następnie wybierz pozycję Nowe:
Wyszukaj plik i wybierz łącznik File System.
Skonfiguruj szczegóły usługi, przetestuj połączenie i utwórz nową połączoną usługę.
Szczegóły konfiguracji łącznika
Poniższe sekcje zawierają szczegółowe informacje o właściwościach używanych do definiowania jednostek potoku usługi Data Factory i Synapse specyficznych dla systemu plików.
Właściwości połączonej usługi
Następujące właściwości są obsługiwane w przypadku połączonej usługi systemu plików:
| Nieruchomość | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type musi być ustawiona na: FileServer. | Tak |
| gospodarz | Określa ścieżkę główną folderu, który chcesz skopiować. Użyj znaku ucieczki „"” do wprowadzenia znaków specjalnych w ciągu. Przykładowe definicje połączonej usługi i zestawu danych można znaleźć w temacie Sample linked service and dataset definitions (Przykładowe połączone definicje usług i zestawów danych). | Tak |
| Identyfikator użytkownika | Określ identyfikator użytkownika, który ma dostęp do serwera. | Tak |
| hasło | Określ hasło użytkownika (userId). Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. | Tak |
| connectVia | Środowisko Integration Runtime, które będzie używane do połączenia z magazynem danych. Dowiedz się więcej w sekcji Wymagania wstępne . Jeśli nie zostanie określony, używa domyślnego środowiska Azure Integration Runtime. | Nie. |
Przykładowe połączone definicje usług i zestawów danych
| Scenariusz | "host" w definicji połączonej usługi | "folderPath" w definicji zestawu danych |
|---|---|---|
| Zdalny folder udostępniony: Przykłady: \\myserver\share\* lub \\myserver\share\folder\subfolder\* |
W formacie JSON: \\\\myserver\\shareW interfejsie użytkownika: \\myserver\share |
W formacie JSON: .\\ lub folder\\subfolderW interfejsie użytkownika: .\ lub folder\subfolder |
Uwaga
Podczas tworzenia za pośrednictwem interfejsu użytkownika nie trzeba wprowadzać podwójnego ukośnika odwrotnego (\\), aby uniknąć takiego jak w przypadku kodu JSON, określ pojedynczy ukośnik odwrotny.
Uwaga
Kopiowanie plików z komputera lokalnego nie jest obsługiwane w środowisku Azure Integration Runtime.
Zapoznaj się z wierszem polecenia z tego miejsca, aby włączyć dostęp do maszyny lokalnej w ramach środowiska uruchomieniowego integracji hostowanego lokalnie. Domyślnie jest ona wyłączona.
Przykład:
{
"name": "FileLinkedService",
"properties": {
"type": "FileServer",
"typeProperties": {
"host": "<host>",
"userId": "<domain>\\<user>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Właściwości zestawu danych
Aby uzyskać pełną listę sekcji i właściwości dostępnych do definiowania zestawów danych, zobacz artykuł Zestawy danych.
Usługa Azure Data Factory obsługuje następujące formaty plików. Zapoznaj się z każdym artykułem, aby zapoznać się z ustawieniami opartymi na formacie.
- Format Avro
- Format binarny
- Format tekstu rozdzielanego
- Format programu Excel
- Format JSON
- Format ORC
- Format Parquet
- Format XML
Następujące właściwości są obsługiwane w przypadku systemu plików w ustawieniach location w zestawie danych opartym na formacie:
| Nieruchomość | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type w obszarze location w zestawie danych musi być ustawiona na FileServerLocation. |
Tak |
| folderPath | Ścieżka do folderu. Jeśli chcesz używać symbolu wieloznakowego do filtrowania folderu, pomiń to ustawienie i określ je w ustawieniach źródła działań. Aby udostępnić folder, należy ustawić lokalizację udziału plików w środowisku systemu Windows lub Linux. | Nie. |
| nazwaPliku | Nazwa pliku w danym folderPath. Jeśli chcesz używać symbolu wieloznakowego do filtrowania plików, pomiń to ustawienie i określ je w ustawieniach źródła działań. | Nie. |
Przykład:
{
"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"
}
}
}
Właściwości działania kopiowania
Aby uzyskać pełną listę sekcji i właściwości dostępnych do definiowania działań, zobacz artykuł Pipelines. Ta sekcja zawiera listę właściwości obsługiwanych przez źródło i ujście systemu plików.
System plików jako źródło
Usługa Azure Data Factory obsługuje następujące formaty plików. Zapoznaj się z każdym artykułem, aby zapoznać się z ustawieniami opartymi na formacie.
- Format Avro
- Format binarny
- Format tekstu rozdzielanego
- Format programu Excel
- Format JSON
- Format ORC
- Format Parquet
- Format XML
Następujące właściwości są obsługiwane w systemie plików w ramach ustawień storeSettings w źródle kopiowania opartym na formacie:
| Nieruchomość | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type w obszarze storeSettings musi być ustawiona na FileServerReadSettings. |
Tak |
| Znajdź pliki do skopiowania: | ||
| OPCJA 1: ścieżka statyczna |
Skopiuj z podanej ścieżki folderu/pliku określonej w zestawie danych. Jeśli chcesz skopiować wszystkie pliki z folderu, dodatkowo określ wildcardFileName jako *. |
|
| OPCJA 2: filtr po stronie serwera - fileFilter |
Filtr natywny po stronie serwera plików, który zapewnia lepszą wydajność niż filtr wieloznaczny OPTION 3. Użyj * , aby dopasować zero lub więcej znaków i ? dopasować zero lub pojedynczy znak. Dowiedz się więcej na temat składni i notatek z uwag w tej sekcji. |
Nie. |
| OPCJA 3. Filtr po stronie klienta - symbol wieloznacznyFolderPath |
Ścieżka folderu z symbolami wieloznacznymi do filtrowania folderów źródłowych. Taki filtr odbywa się w usłudze, która wylicza foldery/pliki w ramach podanej ścieżki, a następnie stosuje filtr wieloznaczny. Dozwolone symbole wieloznaczne to: * (pasuje do zera lub większej liczby znaków) i ? (pasuje do zera lub pojedynczego znaku); użyj ^ , aby uniknąć, jeśli rzeczywista nazwa folderu ma symbol wieloznaczny lub znak ucieczki wewnątrz. Zobacz więcej przykładów w przykładach filtru folderów i plików. |
Nie. |
| OPCJA 3. Filtr po stronie klienta - symbol wieloznacznyFileName |
Nazwa pliku z symbolami wieloznacznymi w ramach folderPath/wildcardFolderPath do filtrowania plików źródłowych. Taki filtr odbywa się w usłudze, która wylicza pliki w podanej ścieżce, a następnie stosuje filtr wieloznaczny. Dozwolone symbole wieloznaczne to: * (pasuje do zera lub większej liczby znaków) i ? (pasuje do zera lub pojedynczego znaku); użyj ^ , aby uniknąć, jeśli rzeczywista nazwa pliku ma symbol wieloznaczny lub znak ucieczki wewnątrz.Zobacz więcej przykładów w przykładach filtru folderów i plików. |
Tak |
| OPCJA 3: lista plików - ścieżka listy plików |
Wskazuje, aby skopiować dany zestaw plików. Wskaż plik tekstowy zawierający listę plików, które chcesz skopiować, jeden plik na wiersz, czyli ścieżkę względną do ścieżki skonfigurowanej w zestawie danych. W przypadku korzystania z tej opcji nie należy określać nazwy pliku w zestawie danych. Zobacz więcej przykładów w Liście przykładów plików. |
Nie. |
| Dodatkowe ustawienia: | ||
| Rekursywny | Wskazuje, czy dane są odczytywane rekursywnie z podfolderów, czy tylko z określonego folderu. Gdy rekursywna jest ustawiona na wartość true, a ujście jest magazynem opartym na plikach, pusty folder lub podfolder nie jest kopiowany ani tworzony w ujściu. Dozwolone wartości to true (wartość domyślna) i false. Ta właściwość nie ma zastosowania podczas konfigurowania fileListPath. |
Nie. |
| Usuń pliki po zakończeniu | Wskazuje, czy pliki binarne są usuwane z magazynu źródłowego po pomyślnym przeniesieniu do magazynu docelowego. Usuwanie odbywa się dla każdego pliku z osobna. Oznacza to, że gdy działanie zakończy się niepowodzeniem, niektóre pliki zostały już skopiowane do miejsca docelowego i usunięte ze źródła, podczas gdy inne nadal pozostają w magazynie źródłowym. Ta właściwość jest prawidłowa tylko w scenariuszu kopiowania plików binarnych. Wartość domyślna: false. |
Nie. |
| zmodyfikowanaDataCzasPoczątek | Filtr plików na podstawie atrybutu: Ostatnia modyfikacja. Pliki są wybierane, jeśli ich czas ostatniej modyfikacji jest większy lub równy modifiedDatetimeStart i mniejszy niż modifiedDatetimeEnd. Czas jest stosowany do strefy czasowej UTC w formacie RRRR-MM-DDTHH:mm:ssZ. Właściwości mogą mieć wartość NULL, co oznacza, że do zestawu danych nie jest stosowany filtr atrybutu pliku. Jeśli modifiedDatetimeStart ma wartość data/godzina, ale modifiedDatetimeEnd ma wartość NULL, oznacza to, że wybrano pliki, których ostatnio zmodyfikowany atrybut jest większy lub równy wartości daty/godziny. Jeśli modifiedDatetimeEnd ma wartość datetime, ale modifiedDatetimeStart ma wartość NULL, oznacza to, że pliki, których ostatnio zmodyfikowany atrybut jest mniejszy niż wartość daty/godziny, są zaznaczone.Ta właściwość nie ma zastosowania podczas konfigurowania fileListPath. |
Nie. |
| zmodyfikowanyCzasKoniec | Tak samo jak modifiedDateTimeStart. | Nie. |
| aktywujOdkrywaniePartyji | W przypadku plików podzielonych na partycje określ, czy analizować partycje ze ścieżki pliku i dodać je jako dodatkowe kolumny źródłowe. Dozwolone wartości to false (wartość domyślna) i true. |
Nie. |
| partitionRootPath | Po włączeniu odnajdywania partycji określ bezwzględną ścieżkę katalogu głównego, aby odczytywać foldery podzielone na partycje jako kolumny danych. Jeśli nie jest określony, domyślnie, — Jeśli używasz ścieżki pliku w zestawie danych lub liście plików w źródle, ścieżka główna partycji jest ścieżką skonfigurowaną w zestawie danych. — W przypadku używania filtru folderów wieloznacznych ścieżka główna partycji jest ścieżką podrzędną przed pierwszym symbolem wieloznacznymi. Załóżmy na przykład, że ścieżka w zestawie danych zostanie skonfigurowana jako "root/folder/year=2020/month=08/day=27": - Jeśli określisz ścieżkę główną partycji jako "root/folder/year=2020", działanie kopiowania generuje dwie kolejne kolumny month i day z wartością "08" i "27" odpowiednio, oprócz kolumn w plikach.— Jeśli ścieżka główna partycji nie jest określona, nie jest generowana żadna dodatkowa kolumna. |
Nie. |
| maksymalna liczba równoczesnych połączeń | Górny limit połączeń współbieżnych ustanowionych z magazynem danych podczas uruchamiania działania. Określ wartość tylko wtedy, gdy chcesz ograniczyć połączenia współbieżne. | Nie. |
Przykład:
"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>"
}
}
}
]
System plików jako ujście
Usługa Azure Data Factory obsługuje następujące formaty plików. Zapoznaj się z każdym artykułem, aby zapoznać się z ustawieniami opartymi na formacie.
Uwaga
Opcja MergeFilescopyBehavior jest dostępna tylko w potokach usługi Azure Data Factory, a nie w potokach usługi Synapse Analytics.
Następujące właściwości są obsługiwane dla systemu plików w ustawieniach storeSettings dotyczących kopiowania w oparciu o format:
| Nieruchomość | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type w obszarze storeSettings musi być ustawiona na FileServerWriteSettings. |
Tak |
| copyBehavior | Definiuje zachowanie kopiowania, gdy źródłem są pliki z magazynu danych opartego na plikach. Dozwolone wartości to: - PreserveHierarchy (wartość domyślna): Zachowuje hierarchię plików w folderze docelowym. Względna ścieżka pliku źródłowego do folderu źródłowego jest identyczna ze względną ścieżką pliku docelowego do folderu docelowego. - FlattenHierarchy: Wszystkie pliki z folderu źródłowego znajdują się na pierwszym poziomie folderu docelowego. Pliki docelowe mają automatycznie wygenerowane nazwy. - MergeFiles: Łączy wszystkie pliki z folderu źródłowego w jeden plik. Jeśli określono nazwę pliku, nazwa pliku wynikowego będzie tą określoną nazwą. W przeciwnym razie jest to automatycznie wygenerowana nazwa pliku. |
Nie. |
| maksymalna liczba równoczesnych połączeń | Górny limit połączeń współbieżnych ustanowionych z magazynem danych podczas uruchamiania działania. Określ wartość tylko wtedy, gdy chcesz ograniczyć połączenia współbieżne. | Nie. |
Przykład:
"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"
}
}
}
}
]
Przykłady filtrów folderów i plików
W tej sekcji opisano wynikowe zachowanie ścieżki folderu i nazwy pliku z filtrami wieloznacznymi.
| folderPath | nazwaPliku | Rekursywny | Struktura folderu źródłowego i wynik filtru (pobierane są pliki pogrubione ) |
|---|---|---|---|
Folder* |
(puste, użyj wartości domyślnej) | fałsz | FolderA File1.csv File2.json Podfolder 1 File3.csv File4.json File5.csv InnyFolderB File6.csv |
Folder* |
(puste, użyj wartości domyślnej) | prawda | FolderA File1.csv File2.json Podfolder 1 File3.csv File4.json File5.csv InnyFolderB File6.csv |
Folder* |
*.csv |
fałsz | FolderA File1.csv File2.json Podfolder 1 File3.csv File4.json File5.csv InnyFolderB File6.csv |
Folder* |
*.csv |
prawda | FolderA File1.csv File2.json Podfolder 1 File3.csv File4.json File5.csv InnyFolderB File6.csv |
Przykłady listy plików
W tej sekcji opisano wynikowe zachowanie używania ścieżki listy plików w źródle działania kopiowania.
Zakładając, że masz następującą strukturę folderów źródłowych i chcesz skopiować pogrubione pliki:
| Przykładowa struktura źródła | Zawartość pliku FileListToCopy.txt | Konfiguracja potoku |
|---|---|---|
| korzeń FolderA File1.csv File2.json Podfolder 1 File3.csv File4.json File5.csv Metadane FileListToCopy.txt |
File1.csv Podfolder1/File3.csv Podfolder1/Plik5.csv |
W zestawie danych: - Ścieżka folderu: root/FolderAW źródle działania kopiowania: - Ścieżka listy plików: root/Metadata/FileListToCopy.txt Ścieżka listy plików wskazuje plik tekstowy w tym samym magazynie danych. Zawiera listę plików, które chcesz skopiować. Każdy wiersz zawiera ścieżkę względną do pliku na podstawie ścieżki głównej skonfigurowanej w zestawie danych. |
przykłady zastosowania rekursji i zachowania kopiowania
W tej sekcji opisano wynikowe zachowanie operacji Kopiuj dla różnych kombinacji wartości rekursywnych i zachowań kopiowania.
| Rekursywny | copyBehavior | Struktura folderu źródłowego | Wynikowy cel |
|---|---|---|---|
| prawda | zachowaj hierarchię | Folder1 Plik1 Plik2 Podfolder 1 Plik3 Plik4 Plik5 |
Folder docelowy Folder1 jest tworzony z taką samą strukturą jak źródło: Folder1 Plik1 Plik2 Podfolder 1 Plik3 Plik4 Plik5. |
| prawda | spłaszczenie hierarchii | Folder1 Plik1 Plik2 Podfolder 1 Plik3 Plik4 Plik5 |
Folder docelowy1 jest tworzony z następującą strukturą: Folder1 automatycznie wygenerowana nazwa pliku File1 automatycznie wygenerowana nazwa dla pliku File2 automatycznie wygenerowana nazwa dla pliku File3 automatycznie wygenerowana nazwa dla pliku File4 automatycznie wygenerowana nazwa dla pliku File5 |
| prawda | połączPliki | Folder1 Plik1 Plik2 Podfolder 1 Plik3 Plik4 Plik5 |
Folder docelowy1 jest tworzony z następującą strukturą: Folder1 Plik1 + Plik2 + Plik3 + Plik4 + Zawartość pliku 5 są scalane w jeden plik z automatycznie wygenerowaną nazwą pliku |
| fałsz | zachowaj hierarchię | Folder1 Plik1 Plik2 Podfolder 1 Plik3 Plik4 Plik5 |
Folder docelowy Folder1 jest tworzony z następującą strukturą Folder1 Plik1 Plik2 Podfolder1 z plikami File3, File4 i File5 nie są pobierane. |
| fałsz | spłaszczenie hierarchii | Folder1 Plik1 Plik2 Podfolder 1 Plik3 Plik4 Plik5 |
Folder docelowy Folder1 jest tworzony z następującą strukturą Folder1 automatycznie wygenerowana nazwa pliku File1 automatycznie wygenerowana nazwa dla pliku File2 Podfolder1 z plikami File3, File4 i File5 nie są pobierane. |
| fałsz | połączPliki | Folder1 Plik1 Plik2 Podfolder 1 Plik3 Plik4 Plik5 |
Folder docelowy Folder1 jest tworzony z następującą strukturą Folder1 Zawartości File1 i File2 są scalone w jeden plik o automatycznie wygenerowanej nazwie pliku. automatycznie wygenerowana nazwa pliku File1 Podfolder1 z plikami File3, File4 i File5 nie są pobierane. |
Właściwości działania wyszukiwania
Aby dowiedzieć się więcej o właściwościach, sprawdź aktywność przeszukiwania.
Właściwości działania GetMetadata
Aby dowiedzieć się więcej o właściwościach, sprawdź działanie GetMetadata.
Usuń właściwości działania
Aby poznać szczegóły dotyczące właściwości, sprawdź Usuń aktywność.
Starsze modele
Uwaga
Następujące modele są nadal obsługiwane w ramach zgodności wstecznej. Sugeruje się, aby używać nowego modelu wymienionego w powyższych sekcjach, a autorski interfejs użytkownika teraz generuje nowy model.
Dziedziczony model zestawu danych
| Nieruchomość | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type zestawu danych musi być ustawiona na: FileShare | Tak |
| folderPath | Ścieżka do folderu. Filtr wieloznaczny jest obsługiwany. Dozwolone symbole wieloznaczne to: * (pasuje do zera lub większej liczby znaków) i ? (pasuje do zera lub pojedynczego znaku); użyj ^ , aby uniknąć, jeśli rzeczywista nazwa folderu ma symbol wieloznaczny lub znak ucieczki wewnątrz. Przykłady: rootfolder/subfolder/, zobacz więcej przykładów w przykładowych definicjach połączonych usług i zestawów danych oraz przykładach filtrów folderów i plików. |
Nie. |
| nazwaPliku |
Nazwa lub filtr symboli wieloznacznych dla plików w określonej ścieżce folderu "folderPath". Jeśli nie określisz wartości dla tej właściwości, zestaw danych wskazuje wszystkie pliki w folderze. W przypadku filtru dozwolone symbole wieloznaczne to: * (pasuje do zera lub większej liczby znaków) i ? (pasuje do zera lub pojedynczego znaku).- Przykład 1: "fileName": "*.csv"— Przykład 2: "fileName": "???20180427.txt"Użyj ^ do zastosowania znaku ucieczki, jeśli rzeczywista nazwa pliku zawiera symbol wieloznaczny lub ten znak.Jeśli parametr fileName nie jest określony dla wyjściowego zestawu danych i parametr preserveHierarchy nie jest określony w ujściu działania kopiowania, działanie kopiowania automatycznie generuje nazwę pliku zgodnie z następującym schematem: "Data.[identyfikator GUID przebiegu działania].[IDENTYFIKATOR GUID, jeśli FlattenHierarchy].[format, jeśli został skonfigurowany].[kompresja, jeśli skonfigurowano]", np. "Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt.gz"; jeśli kopiujesz ze źródła tabelarycznego używając nazwy tabeli zamiast kwerendy, schemat nazwy to "[nazwa tabeli].[format].[kompresja, jeśli została skonfigurowana]", np. "MyTable.csv". |
Nie. |
| zmodyfikowanaDataCzasPoczątek | Filtr plików na podstawie atrybutu: Ostatnia modyfikacja. Pliki są wybierane, jeśli ich czas ostatniej modyfikacji jest większy lub równy modifiedDatetimeStart i mniejszy niż modifiedDatetimeEnd. Czas jest stosowany do strefy czasowej UTC w formacie RRRR-MM-DDTHH:mm:ssZ. Należy pamiętać, że ogólna wydajność przenoszenia danych ma wpływ na włączenie tego ustawienia, gdy chcesz filtrować pliki z ogromnych ilości plików. Właściwości mogą mieć wartość NULL, co oznacza, że do zestawu danych nie jest stosowany filtr atrybutu pliku. Jeśli modifiedDatetimeStart ma wartość data/godzina, ale modifiedDatetimeEnd ma wartość NULL, oznacza to, że wybrano pliki, których ostatnio zmodyfikowany atrybut jest większy lub równy wartości daty/godziny. Jeśli modifiedDatetimeEnd ma wartość datetime, ale modifiedDatetimeStart ma wartość NULL, oznacza to, że pliki, których ostatnio zmodyfikowany atrybut jest mniejszy niż wartość daty/godziny, są zaznaczone. |
Nie. |
| zmodyfikowanyCzasKoniec | Filtr plików na podstawie atrybutu: Ostatnia modyfikacja. Pliki są wybierane, jeśli ich czas ostatniej modyfikacji jest większy lub równy modifiedDatetimeStart i mniejszy niż modifiedDatetimeEnd. Czas jest stosowany do strefy czasowej UTC w formacie "2018-12-01T05:00:00Z". Należy pamiętać, że ogólna wydajność przenoszenia danych ma wpływ na włączenie tego ustawienia, gdy chcesz filtrować pliki z ogromnych ilości plików. Właściwości mogą mieć wartość NULL, co oznacza, że do zestawu danych nie jest stosowany filtr atrybutu pliku. Jeśli modifiedDatetimeStart ma wartość data/godzina, ale modifiedDatetimeEnd ma wartość NULL, oznacza to, że wybrano pliki, których ostatnio zmodyfikowany atrybut jest większy lub równy wartości daty/godziny. Jeśli modifiedDatetimeEnd ma wartość datetime, ale modifiedDatetimeStart ma wartość NULL, oznacza to, że pliki, których ostatnio zmodyfikowany atrybut jest mniejszy niż wartość daty/godziny, są zaznaczone. |
Nie. |
| format | Jeśli chcesz skopiować pliki w stanie niezmienionym między magazynami opartymi na plikach (kopiowanie binarne), pomiń sekcję formatowania zarówno w definicjach zestawów danych wejściowych, jak i wyjściowych. Jeśli chcesz przeanalizować lub wygenerować pliki w określonym formacie, obsługiwane są następujące typy formatów plików: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Ustaw właściwość type w formacie na jedną z tych wartości. Aby uzyskać więcej informacji, zobacz sekcje Format tekstu, Format JSON, Avro Format, Orc Format i Parquet Format . |
Nie (tylko w scenariuszu kopiowania binarnego) |
| kompresja | Określ typ i poziom kompresji danych. Aby uzyskać więcej informacji, zobacz Obsługiwane formaty plików i koderów kompresji. Obsługiwane typy to: GZip, Deflate, BZip2 i ZipDeflate. Obsługiwane poziomy to: Optymalne i najszybsze. |
Nie. |
Napiwek
Aby skopiować wszystkie pliki w folderze, określ tylko folderPath .
Aby skopiować pojedynczy plik o podanej nazwie, określ folderPath ze częścią folderu i fileName nazwą pliku.
Aby skopiować podzbiór plików w folderze, określ folderPath z częścią ścieżki folderu i fileName z filtrem wieloznacznym.
Uwaga
Jeśli używasz właściwości "fileFilter" dla filtru plików, jest ona nadal obsługiwana w niezmienionej postaci, podczas gdy zaleca się użycie nowej funkcji filtrowania dodanej do ciągu "fileName".
Przykład:
{
"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"
}
}
}
}
Dziedziczny model źródła zadania kopiowania
| Nieruchomość | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type źródła działania kopiowania musi być ustawiona na: FileSystemSource | Tak |
| Rekursywny | Wskazuje, czy dane są odczytywane rekursywnie z podfolderów, czy tylko z określonego folderu. Uwaga, gdy rekursja jest ustawiona na wartość true, a miejscem docelowym jest plikowy magazyn danych, puste foldery/podfoldery nie są kopiowane ani tworzone. Dozwolone wartości to: true (wartość domyślna), false |
Nie. |
| maksymalna liczba równoczesnych połączeń | Górny limit połączeń współbieżnych ustanowionych z magazynem danych podczas uruchamiania działania. Określ wartość tylko wtedy, gdy chcesz ograniczyć połączenia współbieżne. | Nie. |
Przykład:
"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>"
}
}
}
]
Model ujściowy starszego działania kopiowania
| Nieruchomość | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type ujścia działania kopiowania musi być ustawiona na: FileSystemSink | Tak |
| copyBehavior | Definiuje zachowanie kopiowania, gdy źródłem są pliki z magazynu danych opartego na plikach. Dozwolone wartości to: - PreserveHierarchy (wartość domyślna): zachowuje hierarchię plików w folderze docelowym. Względna ścieżka pliku źródłowego do folderu źródłowego jest identyczna ze względną ścieżką pliku docelowego do folderu docelowego. - FlattenHierarchy: wszystkie pliki z folderu źródłowego znajdują się na pierwszym poziomie folderu docelowego. Nazwy plików docelowych są generowane automatycznie. - MergeFiles: scala wszystkie pliki z folderu źródłowego do jednego pliku. Podczas scalania nie jest wykonywana deduplikacja rekordów. Jeśli określono nazwę pliku, scalona nazwa pliku będzie określoną nazwą; w przeciwnym razie nazwa pliku zostanie wygenerowana automatycznie. |
Nie. |
| maksymalna liczba równoczesnych połączeń | Górny limit połączeń współbieżnych ustanowionych z magazynem danych podczas uruchamiania działania. Określ wartość tylko wtedy, gdy chcesz ograniczyć połączenia współbieżne. | Nie. |
Przykład:
"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"
}
}
}
]
Powiązana zawartość
Aby uzyskać listę magazynów danych obsługiwanych jako źródła i ujścia działania kopiowania, zobacz obsługiwane magazyny danych.