Kopiowanie danych z usługi Oracle Cloud Storage przy użyciu usługi Azure Data Factory lub 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 kopiowania danych z usługi Oracle Cloud Storage. Aby dowiedzieć się więcej, przeczytaj artykuły wprowadzające dotyczące usług Azure Data Factory i Synapse Analytics.

Obsługiwane możliwości

Ten łącznik Oracle Cloud Storage jest obsługiwany w następujących funkcjach:

Obsługiwane możliwości IR
działanie Kopiuj (źródło/-) ① ②
Działanie Lookup ① ②
Działanie GetMetadata ① ②
Działanie usuwania ① ②

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

W szczególności ten łącznik Oracle Cloud Storage obsługuje kopiowanie plików w taki sposób, jak to jest lub analizowanie plików przy użyciu obsługiwanych formatów plików i koderów koderów kompresji. Korzysta z współdziałania zgodnego z usługą Oracle Cloud Storage S3.

Wymagania wstępne

Aby skopiować dane z usługi Oracle Cloud Storage, zapoznaj się tutaj z wymaganiami wstępnymi i wymaganymi uprawnieniami.

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 z usługą Oracle Cloud Storage przy użyciu interfejsu użytkownika

Wykonaj poniższe kroki, aby utworzyć połączoną usługę z usługą Oracle Cloud Storage 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ę Oracle i wybierz łącznik Oracle Cloud Storage.

    Screenshot of the Oracle Cloud Storage connector.

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

    Screenshot of linked service configuration for Oracle Cloud Storage.

szczegóły konfiguracji Połączenie or

Poniższe sekcje zawierają szczegółowe informacje o właściwościach używanych do definiowania jednostek specyficznych dla usługi Oracle 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 Oracle Cloud Storage:

Właściwości Opis Wymagania
type Właściwość type musi być ustawiona na OracleCloudStorage. Tak
accessKeyId Identyfikator klucza dostępu wpisu tajnego. Aby znaleźć klucz dostępu i klucz tajny, zobacz Wymagania wstępne. Tak
secretAccessKey Sam klucz dostępu wpisu tajnego. Oznacz to pole jako SecureString , aby bezpiecznie je przechowywać lub odwołuje się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. Tak
serviceUrl Określ niestandardowy punkt końcowy jako https://<namespace>.compat.objectstorage.<region identifier>.oraclecloud.com. Aby uzyskać więcej informacji, zobacz tutaj Tak
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.

Oto przykład:

{
    "name": "OracleCloudStorageLinkedService",
    "properties": {
        "type": "OracleCloudStorage",
        "typeProperties": {
            "accessKeyId": "<access key id>",
            "secretAccessKey": {
                "type": "SecureString",
                "value": "<secret access key>"
            },
            "serviceUrl": "https://<namespace>.compat.objectstorage.<region identifier>.oraclecloud.com"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Właściwości zestawu 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 usłudze Oracle Cloud Storage 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 OracleCloudStorageLocation. Tak
bucketName Nazwa zasobnika Oracle Cloud Storage. 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.
fileName 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": "<Oracle Cloud Storage linked service name>",
            "type": "LinkedServiceReference"
        },
        "schema": [ < physical schema, optional, auto retrieved during authoring > ],
        "typeProperties": {
            "location": {
                "type": "OracleCloudStorageLocation",
                "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 usługi Oracle Cloud Storage.

Oracle Cloud Storage 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 usłudze Oracle Cloud Storage 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 OracleCloudStorageRead Ustawienia. 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 usługi Oracle Cloud Storage
-Prefiks
Prefiks nazwy klucza usługi Oracle Cloud Storage w ramach danego zasobnika skonfigurowanego w zestawie danych w celu filtrowania źródłowych plików Oracle Cloud Storage. Wybrano klucze magazynu Oracle Cloud Storage, których nazwy zaczynają się od bucket_in_dataset/this_prefix . Korzysta z filtru po stronie usługi Oracle Cloud Storage, 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 ^ 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 4: 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 5: 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.

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.
maxConcurrent Połączenie ions 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": "CopyFromOracleCloudStorage",
        "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": "OracleCloudStorageReadSettings",
                    "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
        Plik1.csv
        Plik2.json
        Podfolder1
            Plik3.csv
            Plik4.json
            Plik5.csv
    InnyfolderB
        Plik6.csv
Wiadro Folder*/* prawda Wiadro
    FolderA
        Plik1.csv
        Plik2.json
        Podfolder1
            Plik3.csv
            Plik4.json
            Plik5.csv
    InnyfolderB
        Plik6.csv
Wiadro Folder*/*.csv fałsz Wiadro
    FolderA
        Plik1.csv
        Plik2.json
        Podfolder1
            Plik3.csv
            Plik4.json
            Plik5.csv
    InnyfolderB
        Plik6.csv
Wiadro Folder*/*.csv prawda Wiadro
    FolderA
        Plik1.csv
        Plik2.json
        Podfolder1
            Plik3.csv
            Plik4.json
            Plik5.csv
    InnyfolderB
        Plik6.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 pliku FileListToCopy.txt Konfigurowanie
Wiadro
    FolderA
        Plik1.csv
        Plik2.json
        Podfolder1
            Plik3.csv
            Plik4.json
            Plik5.csv
    Metadane
        FileListToCopy.txt
Plik1.csv
Podfolder1/File3.csv
Podfolder1/File5.csv
W zestawie danych:
-Wiadro: bucket
- Ścieżka folderu: FolderA

W ź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 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ń.

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