Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
DOTYCZY:
Azure Data Factory
Azure Synapse Analytics
Napiwek
Data Factory w usłudze Microsoft Fabric jest następną generacją Azure Data Factory z prostszą architekturą, wbudowaną sztuczną inteligencją i nowymi funkcjami. Jeśli dopiero zaczynasz integrować dane, zacznij od Fabric Data Factory. Istniejące obciążenia ADF można zaktualizować do Fabric, aby uzyskać dostęp do nowych możliwości w zakresie nauki o danych, analiz w czasie rzeczywistym oraz raportowania.
W tym artykule opisano sposób kopiowania danych z usługi Google Cloud Storage (GCS). Aby dowiedzieć się więcej, przeczytaj artykuły wprowadzające dotyczące Azure Data Factory i Synapse Analytics.
Obsługiwane możliwości
Ten łącznik usługi Google Cloud Storage jest obsługiwany w następujących funkcjach:
| Obsługiwane możliwości | środowisko IR |
|---|---|
| Kopiuj działanie (źródło/-) | (1) (2) |
| Przepływ danych mapowania (źródło/-) | Krok 1: |
| Działanie Wyszukiwania | (1) (2) |
| Działanie GetMetadata | (1) (2) |
| Usuń aktywność | (1) (2) |
(1) Środowisko uruchomieniowe Azure (2) Środowisko uruchomieniowe lokalnie hostowane
W szczególności ten łącznik usługi Google Cloud Storage obsługuje kopiowanie plików bez zmian lub analizowanie plików z obsługiwanymi formatami plików i kodekami kompresji. Korzysta z interoperacyjności zgodnej ze standardem S3 GCS.
Wymagania wstępne
Na koncie usługi Google Cloud Storage wymagana jest następująca konfiguracja:
- Włącz współdziałanie konta usługi Google Cloud Storage
- Ustaw domyślny projekt zawierający dane, które chcesz skopiować z docelowego zasobnika GCS.
- Utwórz konto usługi i zdefiniuj odpowiednie poziomy uprawnień przy użyciu usługi Cloud IAM w usłudze GCP.
- Wygeneruj klucze dostępu dla tego konta usługi.
Wymagane uprawnienia
Aby skopiować dane z usługi Google Cloud Storage, upewnij się, że udzielono następujących uprawnień do operacji obiektów: storage.objects.get i storage.objects.list.
Jeśli używasz interfejsu użytkownika do tworzenia, do operacji takich jak storage.buckets.list testowanie połączenia z połączoną usługą i przeglądanie z poziomu katalogu głównego wymagane jest uprawnienie. Jeśli nie chcesz udzielać tego uprawnienia, 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ę ról usługi Google Cloud Storage i skojarzonych uprawnień, zobacz Role zarządzania dostępem i tożsamościami dla usługi Cloud Storage w witrynie Google Cloud.
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
- .NET SDK
- Python SDK
- Azure PowerShell
- API REST
- Szablon menedżera zasobów Azure
Tworzenie połączonej usługi z usługą Google Cloud Storage przy użyciu interfejsu użytkownika
Wykonaj poniższe kroki, aby utworzyć połączoną usługę z usługą Google Cloud Storage w interfejsie użytkownika portalu Azure.
Przejdź do karty Zarządzanie w obszarze roboczym Azure Data Factory lub Synapse i wybierz pozycję Połączone usługi, a następnie wybierz pozycję Nowe:
Wyszukaj Google, a następnie wybierz łącznik Google Cloud Storage z interfejsem API S3.
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 usługi Data Factory specyficznych dla usługi Google Cloud Storage.
Właściwości połączonej usługi
Następujące właściwości są obsługiwane w przypadku połączonych usług Google Cloud Storage:
| Właściwości | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type musi być ustawiona na GoogleCloudStorage. | Tak |
| accessKeyId | Identyfikator tajnego klucza dostępu. Aby znaleźć klucz dostępu i klucz tajny, zobacz Wymagania wstępne. | Tak |
| tajnyKluczDostępu | Klucz dostępu tajnego. Oznacz to pole jako SecureString do bezpiecznego przechowywania lub aby odwołać się do tajnego wpisu przechowywanego w Azure Key Vault. | Tak |
| serviceUrl | Określ niestandardowy punkt końcowy GCS jako https://storage.googleapis.com. |
Tak |
| connectVia | Środowisko Integration Runtime będzie używane do połączenia z magazynem danych. Możesz użyć środowiska Integration Runtime Azure 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 Azure integration runtime. | Nie. |
Oto przykład:
{
"name": "GoogleCloudStorageLinkedService",
"properties": {
"type": "GoogleCloudStorage",
"typeProperties": {
"accessKeyId": "<access key id>",
"secretAccessKey": {
"type": "SecureString",
"value": "<secret access key>"
},
"serviceUrl": "https://storage.googleapis.com"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Właściwości zestawu danych
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 rozdzielonego
- Format Excel
- Format JSON
- Format ORC
- Format Parquet
- Format XML
Następujące właściwości są obsługiwane w usłudze Google Cloud Storage w ustawieniach location w zestawie danych opartym na formacie:
| Właściwości | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type w obszarze location w zestawie danych musi być ustawiona na GoogleCloudStorageLocation. |
Tak |
| bucketName | Nazwa zasobnika GCS. | 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łań. | Nie. |
| nazwaPliku | Nazwa pliku w ramach danego zasobnika i ścieżki folderu. Jeśli chcesz użyć 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": "<Google Cloud Storage linked service name>",
"type": "LinkedServiceReference"
},
"schema": [ < physical schema, optional, auto retrieved during authoring > ],
"typeProperties": {
"location": {
"type": "GoogleCloudStorageLocation",
"bucketName": "bucketname",
"folderPath": "folder/subfolder"
},
"columnDelimiter": ",",
"quoteChar": "\"",
"firstRowAsHeader": true,
"compressionCodec": "gzip"
}
}
}
Właściwości aktywności 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 usługi Google Cloud Storage.
Usługa Google Cloud Storage jako typ źródła
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 rozdzielonego
- Format Excel
- Format JSON
- Format ORC
- Format Parquet
- Format XML
Następujące właściwości są obsługiwane w usłudze Google Cloud Storage w ustawieniach storeSettings w źródle kopiowania opartym na formacie:
| Właściwości | Opis | Wymagane |
|---|---|---|
| typ | Właściwość type w obszarze storeSettings musi być ustawiona na GoogleCloudStorageReadSettings. |
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 wprowadź wildcardFileName jako *. |
|
| OPCJA 2: prefiks GCS - przedrostek |
Prefiks nazwy klucza GCS w ramach danego zasobnika skonfigurowanego w zestawie danych do filtrowania źródłowych plików GCS. Klucze GCS, których nazwy zaczynają się od bucket_in_dataset/this_prefix , są zaznaczone. Wykorzystuje filtr po stronie usługi GCS, który zapewnia lepszą wydajność niż filtr wieloznaczny. |
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 ^ do ucieczki, jeśli nazwa folderu zawiera symbol wieloznaczny lub znak zapobiegający interpretacji. 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 ^ do uchodzenia jeśli nazwa pliku zawiera symbol wieloznaczności lub znak uchodzenia. 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. Jeśli używasz tej opcji, nie określaj nazwy pliku w zestawie danych. Zobacz więcej przykładów w przykładach listy plików. |
Nie. |
| Dodatkowe ustawienia: | ||
| Rekurencyjny | Wskazuje, czy dane są odczytywane rekursywnie z podfolderów, czy tylko z określonego folderu. Należy pamiętać, że gdy rekursywny ma wartość true, a odbiornik jest magazynem opartym na plikach, pusty folder lub podfolder nie jest kopiowany ani tworzony w odbiorniku. Dozwolone wartości to true (wartość domyślna) i false. Ta właściwość nie ma zastosowania podczas konfigurowania fileListPathelementu . |
Nie. |
| usuńPlikiPoZakończeniu | Wskazuje, czy pliki binarne zostaną usunięte z magazynu źródłowego po pomyślnym przeniesieniu do magazynu docelowego. Usuwanie plików odbywa się na poziomie pojedynczego pliku, więc gdy działanie kopiowania zakończy się niepowodzeniem, zobaczysz, że niektóre pliki zostały już skopiowane do lokalizacji docelowej i usunięte ze źródła, podczas gdy inne 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. |
| zmienionaDataICzasKoniec | Jak wyżej. | Nie. |
| enablePartitionDiscovery | W przypadku plików podzielonych na partycje określ, czy analizować partycje ze ścieżki pliku i dodawać je jako więcej kolumn źródłowych. 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 to określone, to 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ą przedmiotową znajdującą się przed pierwszym symbolem wieloznacznym. 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 ścieżka główna partycji nie zostanie określona, nie zostanie wygenerowana żadna dodatkowa kolumna. |
Nie. |
| maksymalnaLiczbaJednoczesnychPołączeń | Górny limit połączeń współbieżnych ustanowionych z repozytorium danych podczas przeprowadzania operacji. Określ wartość tylko wtedy, gdy chcesz ograniczyć połączenia współbieżne. | Nie. |
Przykład:
"activities":[
{
"name": "CopyFromGoogleCloudStorage",
"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": "GoogleCloudStorageReadSettings",
"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.
| zasobnik | klucz | Rekurencyjny | Struktura folderu źródłowego i wynik filtru (pobierane są pliki pogrubione) |
|---|---|---|---|
| zasobnik | Folder*/* |
fałsz | zasobnik FolderA File1.csv File2.json Podfolder1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
| zasobnik | Folder*/* |
prawda | zasobnik FolderA File1.csv File2.json Podfolder1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
| zasobnik | Folder*/*.csv |
fałsz | zasobnik FolderA File1.csv File2.json Podfolder1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
| zasobnik | Folder*/*.csv |
prawda | zasobnik FolderA File1.csv File2.json Podfolder1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
Przykłady listy plików
W tej sekcji opisano wynikowe zachowanie używania ścieżki listy plików w źródle Copy activity.
Załóżmy, że masz następującą strukturę folderu źródłowego i chcesz skopiować pliki pogrubione.
| Przykładowa struktura źródła | Zawartość pliku o nazwie FileListToCopy.txt | Konfigurowanie |
|---|---|---|
| zasobnik FolderA File1.csv File2.json Podfolder1 File3.csv File4.json File5.csv Metadane FileListToCopy.txt |
File1.csv Podfolder1/File3.csv Podkatalog1/File5.csv |
W zestawie danych: -Wiadro: bucket- Ścieżka folderu: FolderAW źródle działania kopiowania: - Ś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. |
Właściwości przepływu danych w mapowaniu
Podczas przekształcania danych w przepływach mapowania danych można odczytywać pliki z usługi Google Cloud Storage w następujących formatach:
Ustawienia specyficzne dla formatu znajdują się w dokumentacji dla tego formatu. Aby uzyskać więcej informacji, zobacz Transformacja ź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 Google Cloud Storage. Użyj karty Opcje źródła, aby zarządzać sposobem odczytywania plików.
Ś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 za pomocą znaku plus, który pojawia się po umieszczeniu wskaźnika myszy na istniejącym wzorcu symbolu wieloznacznego.
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 wieloznaczna musi również zawierać ścieżkę folderu od folderu głównego.
Przykłady symboli wieloznacznych:
*Reprezentuje dowolny zestaw znaków.**Reprezentuje rekurencyjne zagnieżdżanie katalogów.?Zamienia jeden znak.[]Pasuje do co najmniej jednego znaku w nawiasach./data/sales/**/*.csvPobiera wszystkie pliki .csv w obszarze /data/sales./data/sales/20??/**/Pobiera wszystkie pliki z XX wieku./data/sales/*/*/*.csvPobiera pliki .csv dwa poziomy poniżej /data/sales./data/sales/2004/*/12/[XY]1?.csvPobiera wszystkie pliki .csv w grudniu 2004 r., począwszy od X lub Y poprzedzonej dwucyfrową liczbą.
Ścieżka główna partycji: jeśli w źródle pliku masz foldery partycjonowane w formacie key=value (na przykład year=2019), możesz przypisać najwyższy poziom tego folderu partycji do nazwy kolumny w strumieniu 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ć.
Użyj ustawienia Ścieżka główna partycji, aby zdefiniować 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.
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ę nie robienia niczego z plikiem źródłowym, usunięcia pliku źródłowego lub przeniesienia pliku źródłowego po uruchomieniu przepływu danych. Ścieżki przesunięcia są względne.
Aby przenieść pliki źródłowe do innej lokalizacji po przetworzeniu, najpierw wybierz pozycję "Przenieś" dla operacji na plikach. Następnie skonfiguruj 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 wieloznacznym, składnia będzie wyglądać następująco:
/data/sales/20??/**/*.csv
Możesz określić wartość "from" jako:
/data/sales
Możesz określić 'do' jako:
/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 data flow z uruchomienia potoku (debugowania potoku lub uruchomienia wykonywania), które używa działania Execute Data Flow w potoku. Operacje na plikach nie działają w trybie debugowania Data Flow.
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 czynności wyszukiwania
Aby dowiedzieć się więcej o właściwościach, sprawdź akcję Wyszukiwania.
Właściwości działania GetMetadata
Aby poznać szczegóły dotyczące właściwości, sprawdź GetMetadata activity.
Usuń właściwości działania
Aby dowiedzieć się szczegółów dotyczących właściwości, zobacz Usuń aktywność.
Starsze modele
Jeśli używasz łącznika Amazon S3 do kopiowania danych z usługi Google Cloud Storage, nadal jest obsługiwany w celu zapewnienia zgodności wstecznej. Zalecamy użycie nowego modelu wymienionego wcześniej. Interfejs użytkownika tworzenia został przełączony na generowanie nowego modelu.
Powiązana zawartość
Aby uzyskać listę magazynów danych obsługiwanych przez Copy activity jako źródła i ujścia, zobacz Obsługiwane magazyny danych.