Udostępnij za pośrednictwem


Kopiowanie i przekształcanie danych w usłudze Amazon Simple Storage Service przy użyciu usługi Azure Data Factory lub Azure Synapse Analytics

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 używania działania kopiowania do kopiowania danych z usługi Amazon Simple Storage Service (Amazon S3) i używania Przepływ danych do przekształcania danych w usłudze Amazon S3. Aby dowiedzieć się więcej, przeczytaj artykuły wprowadzające dotyczące usług Azure Data Factory i Synapse Analytics.

Napiwek

Aby dowiedzieć się więcej na temat scenariusza migracji danych z usługi Amazon S3 do usługi Azure Storage, zobacz Migrowanie danych z usługi Amazon S3 do usługi Azure Storage.

Obsługiwane możliwości

Ten łącznik usługi Amazon S3 jest obsługiwany w następujących funkcjach:

Obsługiwane możliwości IR
działanie Kopiuj (źródło/-) (1) (2)
Przepływ danych mapowania (źródło/ujście) (1)
Działanie Lookup (1) (2)
Działanie GetMetadata (1) (2)
Działanie usuwania (1) (2)

(1) Środowisko Azure Integration Runtime (2) Self-hosted Integration Runtime

W szczególności ten łącznik Amazon S3 obsługuje kopiowanie plików w taki sposób, jak to jest lub analizowanie plików z obsługiwanymi formatami plików i koderami kompresyjnymi. Możesz również zachować metadane pliku podczas kopiowania. Łącznik używa usługi AWS Signature w wersji 4 do uwierzytelniania żądań do usługi S3.

Napiwek

Jeśli chcesz skopiować dane z dowolnego dostawcy magazynu zgodnego z usługą S3, zobacz Magazyn zgodny z usługą Amazon S3.

Wymagane uprawnienia

Aby skopiować dane z usługi Amazon S3, upewnij się, że udzielono następujących uprawnień do operacji obiektów Amazon S3: s3:GetObject i s3:GetObjectVersion.

Jeśli używasz interfejsu użytkownika usługi Data Factory do tworzenia, wymagane są dodatkowe s3:ListAllMyBuckets s3:ListBucket/s3:GetBucketLocation uprawnienia dla operacji, takich jak testowanie połączenia z połączoną usługą i przeglądanie z katalogu głównego. Jeśli nie chcesz udzielać tych uprawnień, możesz wybrać opcje "Testuj połączenie ze ścieżką pliku" lub "Przeglądaj z określonej ścieżki" z interfejsu użytkownika.

Aby uzyskać pełną listę uprawnień usługi Amazon S3, zobacz Określanie uprawnień w zasadach w witrynie platformy AWS.

Wprowadzenie

Aby wykonać działanie Kopiuj za pomocą potoku, możesz użyć jednego z następujących narzędzi lub zestawów SDK:

Tworzenie połączonej usługi Amazon Simple Storage Service (S3) przy użyciu interfejsu użytkownika

Wykonaj poniższe kroki, aby utworzyć połączoną usługę Amazon S3 w interfejsie użytkownika witryny Azure Portal.

  1. 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 kliknij pozycję Nowy:

  2. Wyszukaj pozycję Amazon i wybierz łącznik Amazon S3.

    Zrzut ekranu przedstawiający łącznik Amazon S3.

  3. Skonfiguruj szczegóły usługi, przetestuj połączenie i utwórz nową połączoną usługę.

    Zrzut ekranu przedstawiający konfigurację połączonej usługi Amazon S3.

Szczegóły konfiguracji łącznika

Poniższe sekcje zawierają szczegółowe informacje o właściwościach używanych do definiowania jednostek usługi Data Factory specyficznych dla usługi Amazon S3.

Właściwości połączonej usługi

Następujące właściwości są obsługiwane w przypadku połączonej usługi Amazon S3:

Właściwości Opis Wymagania
type Właściwość type musi być ustawiona na AmazonS3. Tak
authenticationType Określ typ uwierzytelniania używany do nawiązywania połączenia z usługą Amazon S3. Możesz użyć kluczy dostępu dla konta usługi AWS Identity and Access Management (IAM) lub tymczasowych poświadczeń zabezpieczeń.
Dozwolone wartości to: AccessKey (wartość domyślna) i TemporarySecurityCredentials.
Nie.
accessKeyId Identyfikator klucza dostępu wpisu tajnego. Tak
secretAccessKey Sam klucz dostępu wpisu tajnego. 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
sessionToken Ma zastosowanie w przypadku korzystania z uwierzytelniania poświadczeń zabezpieczeń tymczasowych . Dowiedz się, jak żądać tymczasowych poświadczeń zabezpieczeń z platformy AWS.
Zwróć uwagę, że poświadczenia tymczasowe platformy AWS wygasają od 15 minut do 36 godzin na podstawie ustawień. Upewnij się, że poświadczenia są prawidłowe podczas wykonywania działań, zwłaszcza w przypadku zoperacjonalizowanego obciążenia — na przykład można je okresowo odświeżać i przechowywać w usłudze Azure Key Vault.
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.
Nie.
serviceUrl Określ niestandardowy punkt końcowy https://<service url>S3 .
Zmień go tylko wtedy, gdy chcesz spróbować użyć innego punktu końcowego usługi lub chcesz przełączyć się między protokołem HTTPS i http.
Nie.
connectVia Środowisko Integration Runtime do nawiązania połączenia z magazynem danych. Możesz użyć środowiska Azure Integration Runtime lub własnego środowiska Integration Runtime (jeśli magazyn danych znajduje się w sieci prywatnej). Jeśli ta właściwość nie zostanie określona, usługa używa domyślnego środowiska Azure Integration Runtime. Nie.

Przykład: używanie uwierzytelniania klucza dostępu

{
    "name": "AmazonS3LinkedService",
    "properties": {
        "type": "AmazonS3",
        "typeProperties": {
            "accessKeyId": "<access key id>",
            "secretAccessKey": {
                "type": "SecureString",
                "value": "<secret access key>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Przykład: używanie tymczasowego uwierzytelniania poświadczeń zabezpieczeń

{
    "name": "AmazonS3LinkedService",
    "properties": {
        "type": "AmazonS3",
        "typeProperties": {
            "authenticationType": "TemporarySecurityCredentials",
            "accessKeyId": "<access key id>",
            "secretAccessKey": {
                "type": "SecureString",
                "value": "<secret access key>"
            },
            "sessionToken": {
                "type": "SecureString",
                "value": "<session token>"
            }
        },
        "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.

Następujące właściwości są obsługiwane w przypadku usługi Amazon S3 w ustawieniach location w zestawie danych opartym na formacie:

Właściwości Opis Wymagania
type Właściwość type w obszarze location w zestawie danych musi być ustawiona na AmazonS3Location. Tak
bucketName Nazwa zasobnika S3. Tak
folderPath Ścieżka do folderu w danym zasobniku. Jeśli chcesz użyć symbolu wieloznakowego do filtrowania folderu, pomiń to ustawienie i określ je w ustawieniach źródła działania. Nie.
fileName Nazwa pliku w ramach danego zasobnika i ścieżki folderu. 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.
version Wersja obiektu S3, jeśli włączono przechowywanie wersji S3. Jeśli nie zostanie określona, zostanie pobrana najnowsza wersja. Nie.

Przykład:

{
    "name": "DelimitedTextDataset",
    "properties": {
        "type": "DelimitedText",
        "linkedServiceName": {
            "referenceName": "<Amazon S3 linked service name>",
            "type": "LinkedServiceReference"
        },
        "schema": [ < physical schema, optional, auto retrieved during authoring > ],
        "typeProperties": {
            "location": {
                "type": "AmazonS3Location",
                "bucketName": "bucketname",
                "folderPath": "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 (Potoki ). Ta sekcja zawiera listę właściwości, które obsługuje źródło Amazon S3.

Amazon S3 jako typ źródła

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.

Następujące właściwości są obsługiwane w przypadku usługi Amazon S3 w ustawieniach storeSettings w źródle kopiowania opartym na formacie:

Właściwości Opis Wymagania
type Właściwość type w obszarze storeSettings musi być ustawiona na AmazonS3ReadSettings. Tak
Znajdź pliki do skopiowania:
OPCJA 1: ścieżka statyczna
Skopiuj z danego zasobnika lub ścieżki folderu/pliku określonego w zestawie danych. Jeśli chcesz skopiować wszystkie pliki z zasobnika lub folderu, dodatkowo określ wildcardFileName wartość *.
OPCJA 2: Prefiks S3
-przedrostek
Prefiks nazwy klucza S3 w danym zasobniku skonfigurowanym w zestawie danych do filtrowania źródłowych plików S3. Wybrano klucze S3, których nazwy zaczynają się od bucket_in_dataset/this_prefix . Wykorzystuje filtr po stronie usługi S3, który zapewnia lepszą wydajność niż filtr wieloznaczny.

Jeśli używasz prefiksu i zdecydujesz się skopiować do ujścia opartego na plikach z zachowaniem hierarchii, zwróć uwagę, że ścieżka podrzędna po ostatnim prefiksie "/" zostanie zachowana. Na przykład masz źródłowy bucket/folder/subfolder/file.txtprefiks i skonfiguruj prefiks jako folder/sub, a następnie zachowaną ścieżkę pliku to subfolder/file.txt.
Nie.
OPCJA 3: symbol wieloznaczny
- symbol wieloznacznyFolderPath
Ścieżka folderu z symbolami wieloznacznymi w danym zasobniku skonfigurowanym w zestawie danych do filtrowania folderów źródłowych.
Dozwolone symbole wieloznaczne to: * (pasuje do zera lub większej liczby znaków) i ? (pasuje do zera lub pojedynczego znaku). Użyj ^ polecenia , aby uniknąć, jeśli 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: symbol wieloznaczny
- symbol wieloznacznyFileName
Nazwa pliku z symbolami wieloznacznymi w ramach danego zasobnika i ścieżki folderu (lub ścieżki folderu z symbolami wieloznacznymi) do filtrowania plików źródłowych.
Dozwolone symbole wieloznaczne to: * (pasuje do zera lub większej liczby znaków) i ? (pasuje do zera lub pojedynczego znaku). Użyj ^ polecenia , aby uniknąć, jeśli 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 4: lista plików
- fileListPath
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.
Jeśli używasz tej opcji, nie należy określać nazwy pliku w zestawie danych. Zobacz więcej przykładów na przykładach na liście plików.
Nie.
Dodatkowe ustawienia:
Cykliczne Wskazuje, czy dane są odczytywane rekursywnie z podfolderów, czy tylko z określonego folderu. Należy pamiętać, że gdy rekursywna ma 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 fileListPathelementu .
Nie.
deleteFilesAfterCompletion Wskazuje, czy pliki binarne zostaną usunięte z magazynu źródłowego po pomyślnym przeniesieniu do magazynu docelowego. Usunięcie pliku jest na plik, więc gdy działanie kopiowania nie powiedzie się, zobaczysz, że 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.
modifiedDatetimeStart Pliki są filtrowane na podstawie atrybutu: ostatnia modyfikacja.
Pliki zostaną wybrane, 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".
Właściwości mogą mieć wartość NULL, co oznacza, że do zestawu danych nie zostanie zastosowany filtr atrybutu pliku. Jeśli modifiedDatetimeStart ma wartość data/godzina, ale modifiedDatetimeEnd ma wartość NULL, zostaną wybrane pliki, których ostatnio zmodyfikowany atrybut jest większy lub równy wartości daty/godziny. Jeśli modifiedDatetimeEnd ma wartość data/godzina, ale modifiedDatetimeStart ma wartość NULL, zostaną wybrane pliki, których ostatnio zmodyfikowany atrybut jest mniejszy niż wartość typu data/godzina.
Ta właściwość nie ma zastosowania podczas konfigurowania fileListPathelementu .
Nie.
modifiedDatetimeEnd Jak wyżej. Nie.
enablePartitionDiscovery 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 zostanie 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.
— W przypadku używania prefiksu ścieżka główna partycji jest ścieżką podrzędną przed ostatnim "/".

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 wygeneruje dwie kolejne kolumny month i day z wartością "08" i "27" odpowiednio, oprócz kolumn wewnątrz plików.
— Jeśli nie określono ścieżki głównej partycji, nie zostanie wygenerowana żadna dodatkowa kolumna.
Nie.
maxConcurrentConnections 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": "CopyFromAmazonS3",
        "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": "AmazonS3ReadSettings",
                    "recursive": true,
                    "wildcardFolderPath": "myfolder*A",
                    "wildcardFileName": "*.csv"
                }
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Przykłady filtrów folderów i plików

W tej sekcji opisano wynikowe zachowanie ścieżki folderu i nazwy pliku z filtrami wieloznacznymi.

wiadro key Cykliczne Struktura folderu źródłowego i wynik filtru (pobierane są pliki pogrubione)
wiadro Folder*/* fałsz wiadro
    FolderA
        File1.csv
        File2.json
        Podfolder1
            File3.csv
            File4.json
            File5.csv
    InnyfolderB
        File6.csv
wiadro Folder*/* prawda wiadro
    FolderA
        File1.csv
        File2.json
        Podfolder1
            File3.csv
            File4.json
            File5.csv
    InnyfolderB
        File6.csv
wiadro Folder*/*.csv fałsz wiadro
    FolderA
        File1.csv
        File2.json
        Podfolder1
            File3.csv
            File4.json
            File5.csv
    InnyfolderB
        File6.csv
wiadro Folder*/*.csv prawda wiadro
    FolderA
        File1.csv
        File2.json
        Podfolder1
            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łanie Kopiuj.

Załóżmy, że masz następującą strukturę folderu źródłowego i chcesz skopiować pliki pogrubioną:

Przykładowa struktura źródła Zawartość w FileListToCopy.txt Konfigurowanie
wiadro
    FolderA
        File1.csv
        File2.json
        Podfolder1
            File3.csv
            File4.json
            File5.csv
    Metadane
        FileListToCopy.txt
File1.csv
Podfolder1/File3.csv
Podfolder1/File5.csv
W zestawie danych:
-Wiadro: bucket
- Ścieżka folderu: FolderA

W działanie Kopiuj źródle:
- Ścieżka listy plików: bucket/Metadata/FileListToCopy.txt

Ścieżka listy plików wskazuje plik tekstowy w tym samym magazynie danych, który zawiera listę plików, które chcesz skopiować, jeden plik na wiersz, ze ścieżką względną do ścieżki skonfigurowanej w zestawie danych.

Zachowywanie metadanych podczas kopiowania

Podczas kopiowania plików z usługi Amazon S3 do usługi Azure Data Lake Storage Gen2 lub Azure Blob Storage można zachować metadane pliku wraz z danymi. Dowiedz się więcej na temat zachowywania metadanych.

Właściwości przepływu mapowania danych

Podczas przekształcania danych w przepływach mapowania danych można odczytywać pliki z usługi Amazon S3 w następujących formatach:

Ustawienia specyficzne dla formatu znajdują się w dokumentacji dla tego formatu. Aby uzyskać więcej informacji, zobacz Przekształcanie źródła w przepływie danych mapowania.

Przekształcanie źródła

W transformacji źródłowej można odczytywać dane z kontenera, folderu lub pojedynczego pliku w usłudze Amazon S3. Użyj karty Opcje źródła, aby zarządzać sposobem odczytywania plików.

Zrzut ekranu przedstawiający opcje źródła.

Ścieżki z symbolami wieloznacznymi: użycie wzorca z symbolami wieloznacznymi spowoduje, że usługa będzie przechodzić w pętli przez każdy pasujący folder i plik w ramach jednej transformacji źródłowej. Jest to skuteczny sposób przetwarzania wielu plików w ramach jednego przepływu. Dodaj wiele wzorców dopasowania symboli wieloznacznych z znakiem plusa wyświetlanym po umieszczeniu wskaźnika myszy na istniejącym wzorcu wieloznacznymi.

W kontenerze źródłowym wybierz serię plików pasujących do wzorca. W zestawie danych można określić tylko kontener. W związku z tym ścieżka wieloznaczny musi zawierać również ścieżkę folderu z folderu głównego.

Przykłady symboli wieloznacznych:

  • * Reprezentuje dowolny zestaw znaków.

  • ** Reprezentuje zagnieżdżanie katalogów cyklicznych.

  • ? Zamienia jeden znak.

  • [] Pasuje do co najmniej jednego znaku w nawiasach kwadratowych.

  • /data/sales/**/*.csv Pobiera wszystkie pliki .csv w obszarze /data/sales.

  • /data/sales/20??/**/ Pobiera wszystkie pliki w XX wieku.

  • /data/sales/*/*/*.csv Pobiera pliki .csv dwa poziomy w obszarze /data/sales.

  • /data/sales/2004/*/12/[XY]1?.csv Pobiera wszystkie pliki .csv w grudniu 2004 r., począwszy od X lub Y poprzedzonej dwucyfrową liczbą.

Ścieżka główna partycji: jeśli foldery partycjonowane w źródle key=value pliku mają format (na przykład year=2019), możesz przypisać najwyższy poziom drzewa folderów partycji do nazwy kolumny w strumieniu danych przepływu danych.

Najpierw ustaw symbol wieloznaczny, aby zawierał wszystkie ścieżki, które są folderami podzielonymi na partycje oraz plikami liścia, które chcesz odczytać.

Zrzut ekranu przedstawiający ustawienia pliku źródłowego partycji.

Użyj ustawienia Ścieżka główna partycji, aby zdefiniować, jaki jest najwyższy poziom struktury folderów. Podczas wyświetlania zawartości danych za pośrednictwem podglądu danych zobaczysz, że usługa doda rozpoznane partycje znajdujące się na każdym z poziomów folderów.

Zrzut ekranu przedstawiający ścieżkę katalogu głównego partycji.

Lista plików: jest to zestaw plików. Utwórz plik tekstowy zawierający listę plików ścieżki względnej do przetworzenia. Wskaż ten plik tekstowy.

Kolumna do przechowywania nazwy pliku: zapisz nazwę pliku źródłowego w kolumnie w danych. Wprowadź tutaj nową nazwę kolumny, aby zapisać ciąg nazwy pliku.

Po zakończeniu: wybierz opcję wykonania niczego z plikiem źródłowym po uruchomieniu przepływu danych, usunięciu pliku źródłowego lub przeniesieniu pliku źródłowego. Ścieżki przenoszenia są względne.

Aby przenieść pliki źródłowe do innej lokalizacji po przetworzeniu, najpierw wybierz pozycję "Przenieś" dla operacji na plikach. Następnie ustaw katalog "from". Jeśli nie używasz żadnych symboli wieloznacznych dla ścieżki, ustawienie "from" będzie tym samym folderem co folder źródłowy.

Jeśli masz ścieżkę źródłową z symbolem wieloznacznymi, składnia będzie wyglądać następująco:

/data/sales/20??/**/*.csv

Możesz określić wartość "from" jako:

/data/sales

Możesz również określić wartość "do":

/backup/priorSales

W takim przypadku wszystkie pliki, które zostały pozyskane w obszarze /data/sales , są przenoszone do /backup/priorSales.

Uwaga

Operacje na plikach są uruchamiane tylko po uruchomieniu przepływu danych z uruchomienia potoku (przebiegu debugowania lub wykonywania potoku), które używa działania Wykonaj Przepływ danych w potoku. Operacje na plikach nie są uruchamiane w trybie debugowania Przepływ danych.

Filtruj według ostatniej modyfikacji: możesz filtrować, które pliki są przetwarzane, określając zakres dat ostatniej modyfikacji. Wszystkie daty/godziny są w formacie UTC.

Właściwości działania wyszukiwania

Aby dowiedzieć się więcej o właściwościach, sprawdź działanie Wyszukiwania.

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 dowiedzieć się więcej o właściwościach, zobacz Działanie Usuń.

Starsze modele

Uwaga

Następujące modele są nadal obsługiwane w celu zapewnienia zgodności z poprzednimi wersjami. Zalecamy użycie nowego modelu wymienionego wcześniej. Interfejs użytkownika tworzenia został przełączony na generowanie nowego modelu.

Starszy model zestawu danych

Właściwości Opis Wymagania
type Właściwość type zestawu danych musi być ustawiona na AmazonS3Object. Tak
bucketName Nazwa zasobnika S3. Filtr wieloznaczny nie jest obsługiwany. Tak dla działania Kopiowanie lub Wyszukiwanie, nie dla działania GetMetadata
key Nazwa lub filtr wieloznaczny klucza obiektu S3 w określonym zasobniku. Dotyczy tylko wtedy, gdy właściwość prefiksu nie jest określona.

Filtr wieloznaczny jest obsługiwany zarówno dla części folderu, jak i części nazwy pliku. Dozwolone symbole wieloznaczne to: * (pasuje do zera lub większej liczby znaków) i ? (pasuje do zera lub pojedynczego znaku).
- Przykład 1: "key": "rootfolder/subfolder/*.csv"
— Przykład 2: "key": "rootfolder/subfolder/???20180427.txt"
Zobacz więcej przykładów w przykładach filtru folderów i plików. Użyj ^ polecenia , aby uniknąć, jeśli rzeczywista nazwa folderu lub pliku ma symbol wieloznaczny lub znak ucieczki wewnątrz.
Nie.
przedrostek Prefiks klucza obiektu S3. Wybrane są obiekty, których klucze zaczynają się od tego prefiksu. Dotyczy tylko wtedy, gdy właściwość klucza nie jest określona. Nie.
version Wersja obiektu S3, jeśli włączono przechowywanie wersji S3. Jeśli wersja nie zostanie określona, zostanie pobrana najnowsza wersja. Nie.
modifiedDatetimeStart Pliki są filtrowane na podstawie atrybutu: ostatnia modyfikacja. Pliki zostaną wybrane, 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 włączenie tego ustawienia wpłynie na ogólną wydajność przenoszenia danych, gdy chcesz filtrować ogromne ilości plików.

Właściwości mogą mieć wartość NULL, co oznacza, że do zestawu danych nie zostanie zastosowany filtr atrybutu pliku. Jeśli modifiedDatetimeStart ma wartość data/godzina, ale modifiedDatetimeEnd ma wartość NULL, zostaną wybrane pliki, których ostatnio zmodyfikowany atrybut jest większy lub równy wartości daty/godziny. Jeśli modifiedDatetimeEnd ma wartość data/godzina, ale modifiedDatetimeStart ma wartość NULL, zostaną wybrane pliki, których ostatnio zmodyfikowany atrybut jest mniejszy niż wartość typu data/godzina.
Nie.
modifiedDatetimeEnd Pliki są filtrowane na podstawie atrybutu: ostatnia modyfikacja. Pliki zostaną wybrane, 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 włączenie tego ustawienia wpłynie na ogólną wydajność przenoszenia danych, gdy chcesz filtrować ogromne ilości plików.

Właściwości mogą mieć wartość NULL, co oznacza, że do zestawu danych nie zostanie zastosowany filtr atrybutu pliku. Jeśli modifiedDatetimeStart ma wartość data/godzina, ale modifiedDatetimeEnd ma wartość NULL, zostaną wybrane pliki, których ostatnio zmodyfikowany atrybut jest większy lub równy wartości daty/godziny. Jeśli modifiedDatetimeEnd ma wartość data/godzina, ale modifiedDatetimeStart ma wartość NULL, zostaną wybrane pliki, których ostatnio zmodyfikowany atrybut jest mniejszy niż wartość typu data/godzina.
Nie.
format Jeśli chcesz skopiować pliki w postaci między magazynami opartymi na plikach (kopiowanie binarne), pomiń sekcję formatowania zarówno w definicjach wejściowych, jak i wyjściowych zestawu danych.

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, Format Avro, Format Orc i Parquet.
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 są optymalne i najszybsze.
Nie.

Napiwek

Aby skopiować wszystkie pliki w folderze, określ wartość bucketName dla zasobnika i prefiksu dla części folderu.

Aby skopiować pojedynczy plik o podanej nazwie, określ wartość bucketName dla zasobnika i klucza dla części folderu i nazwy pliku.

Aby skopiować podzbiór plików w folderze, określ wartość bucketName dla zasobnika i klucza dla części folderu oraz filtr wieloznaczny.

Przykład: używanie prefiksu

{
    "name": "AmazonS3Dataset",
    "properties": {
        "type": "AmazonS3Object",
        "linkedServiceName": {
            "referenceName": "<Amazon S3 linked service name>",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "bucketName": "testbucket",
            "prefix": "testFolder/test",
            "modifiedDatetimeStart": "2018-12-01T05:00:00Z",
            "modifiedDatetimeEnd": "2018-12-01T06:00:00Z",
            "format": {
                "type": "TextFormat",
                "columnDelimiter": ",",
                "rowDelimiter": "\n"
            },
            "compression": {
                "type": "GZip",
                "level": "Optimal"
            }
        }
    }
}

Przykład: używanie klucza i wersji (opcjonalnie)

{
    "name": "AmazonS3Dataset",
    "properties": {
        "type": "AmazonS3",
        "linkedServiceName": {
            "referenceName": "<Amazon S3 linked service name>",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "bucketName": "testbucket",
            "key": "testFolder/testfile.csv.gz",
            "version": "XXXXXXXXXczm0CJajYkHf0_k6LhBmkcL",
            "format": {
                "type": "TextFormat",
                "columnDelimiter": ",",
                "rowDelimiter": "\n"
            },
            "compression": {
                "type": "GZip",
                "level": "Optimal"
            }
        }
    }
}

Starszy model źródłowy dla działanie Kopiuj

Właściwości Opis Wymagania
type Właściwość type źródła działanie Kopiuj musi być ustawiona na FileSystemSource. Tak
Cykliczne Wskazuje, czy dane są odczytywane rekursywnie z podfolderów, czy tylko z określonego folderu. Należy pamiętać, że gdy rekursywna jest ustawiona wartość true , a ujście jest magazynem opartym na plikach, pusty folder lub podfolder nie zostanie skopiowany ani utworzony w ujściu.
Dozwolone wartości to true (wartość domyślna) i false.
Nie.
maxConcurrentConnections 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": "CopyFromAmazonS3",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Amazon S3 input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "FileSystemSource",
                "recursive": true
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Aby uzyskać listę magazynów danych obsługiwanych przez działanie Kopiuj jako źródła i ujścia, zobacz Obsługiwane magazyny danych.