działanie Przepływ danych w usługach Azure Data Factory i 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ą !
Użyj działania Przepływ danych, aby przekształcić i przenieść dane za pośrednictwem przepływów danych mapowania. Jeśli dopiero zaczynasz korzystać z przepływów danych, zobacz Mapowanie Przepływ danych omówienie
Tworzenie działania Przepływ danych za pomocą interfejsu użytkownika
Aby użyć działania Przepływ danych w potoku, wykonaj następujące kroki:
Wyszukaj Przepływ danych w okienku Działania potoku i przeciągnij działanie Przepływ danych na kanwę potoku.
Wybierz nowe działanie Przepływ danych na kanwie, jeśli nie zostało jeszcze wybrane, a jego karta Ustawienia, aby edytować jego szczegóły.
Klucz punktu kontrolnego służy do ustawiania punktu kontrolnego, gdy przepływ danych jest używany do przechwytywania zmienionych danych. Możesz go zastąpić. Działania przepływu danych używają wartości guid jako klucza punktu kontrolnego zamiast "nazwy potoku i nazwy działania", aby zawsze można było śledzić stan przechwytywania zmian danych klienta, nawet jeśli istnieją jakiekolwiek akcje zmiany nazwy. Wszystkie istniejące działania przepływu danych używają starego klucza wzorca w celu zapewnienia zgodności z poprzednimi wersjami. Opcja klucza punktu kontrolnego po opublikowaniu nowego działania przepływu danych z włączonym zasobem przepływu danych zmian jest pokazana poniżej.
Wybierz istniejący przepływ danych lub utwórz nowy przy użyciu przycisku Nowy. Wybierz inne opcje zgodnie z wymaganiami, aby ukończyć konfigurację.
Składnia
{
"name": "MyDataFlowActivity",
"type": "ExecuteDataFlow",
"typeProperties": {
"dataflow": {
"referenceName": "MyDataFlow",
"type": "DataFlowReference"
},
"compute": {
"coreCount": 8,
"computeType": "General"
},
"traceLevel": "Fine",
"runConcurrently": true,
"continueOnError": true,
"staging": {
"linkedService": {
"referenceName": "MyStagingLinkedService",
"type": "LinkedServiceReference"
},
"folderPath": "my-container/my-folder"
},
"integrationRuntime": {
"referenceName": "MyDataFlowIntegrationRuntime",
"type": "IntegrationRuntimeReference"
}
}
Właściwości typu
Właściwości | opis | Dozwolone wartości | Wymagania |
---|---|---|---|
Dataflow | Odwołanie do wykonywanego Przepływ danych | DataFlowReference | Tak |
integrationRuntime | Środowisko obliczeniowe, na których działa przepływ danych. Jeśli nie zostanie określony, zostanie użyte środowisko Azure Integration Runtime autoresolve. | IntegrationRuntimeReference | Nie. |
compute.coreCount | Liczba rdzeni używanych w klastrze spark. Można określić tylko wtedy, gdy jest używane środowisko Azure Integration Runtime autoresolve | 8, 16, 32, 48, 80, 144, 272 | Nie. |
compute.computeType | Typ zasobów obliczeniowych używanych w klastrze spark. Można określić tylko wtedy, gdy jest używane środowisko Azure Integration Runtime autoresolve | "Ogólne" | Nie. |
staging.linkedService | Jeśli używasz źródła lub ujścia usługi Azure Synapse Analytics, określ konto magazynu używane do przemieszczania programu PolyBase. Jeśli usługa Azure Storage jest skonfigurowana z punktem końcowym usługi sieci wirtualnej, musisz użyć uwierzytelniania tożsamości zarządzanej z włączoną funkcją "zezwalaj na zaufaną usługę firmy Microsoft" na koncie magazynu, zapoznaj się z tematem Wpływ używania punktów końcowych usługi sieci wirtualnej z usługą Azure Storage. Poznaj również wymagane konfiguracje odpowiednio usług Azure Blob i Azure Data Lake Storage Gen2 . |
LinkedServiceReference | Tylko wtedy, gdy przepływ danych odczytuje lub zapisuje w usłudze Azure Synapse Analytics |
staging.folderPath | Jeśli używasz źródła lub ujścia usługi Azure Synapse Analytics, ścieżka folderu na koncie magazynu obiektów blob używanym do przemieszczania technologii PolyBase | String | Tylko wtedy, gdy przepływ danych odczytuje lub zapisuje w usłudze Azure Synapse Analytics |
traceLevel | Ustawianie poziomu rejestrowania wykonywania działań przepływu danych | Grzywna, Gruba, Brak | Nie. |
Dynamiczne ustawianie rozmiaru obliczeniowego przepływu danych w czasie wykonywania
Właściwości Liczba rdzeni i Typ obliczeniowy można ustawić dynamicznie, aby dostosować rozmiar przychodzących danych źródłowych w czasie wykonywania. Użyj działań potoku, takich jak Wyszukiwanie lub Pobieranie metadanych, aby znaleźć rozmiar danych źródłowego zestawu danych. Następnie użyj polecenia Dodaj zawartość dynamiczną we właściwościach działania Przepływ danych. Możesz wybrać małe, średnie lub duże rozmiary obliczeniowe. Opcjonalnie wybierz opcję "Niestandardowy" i ręcznie skonfiguruj typy obliczeniowe i liczbę rdzeni.
Oto krótki samouczek wideo wyjaśniający tę technikę
Przepływ danych Integration Runtime
Wybierz środowisko Integration Runtime do użycia na potrzeby wykonywania działań Przepływ danych. Domyślnie usługa używa środowiska Azure Integration Runtime autoresolve z czterema rdzeniami procesu roboczego. To środowisko IR ma typ obliczeniowy ogólnego przeznaczenia i działa w tym samym regionie co wystąpienie usługi. W przypadku potoków zoperacjonalizowanych zdecydowanie zaleca się utworzenie własnych środowisk Azure Integration Runtime, które definiują określone regiony, typ obliczeniowy, liczbę rdzeni i czas wygaśnięcia dla wykonywania działań przepływu danych.
Minimalny typ obliczeniowy ogólnego przeznaczenia z konfiguracją 8+8 (łącznie 16 rdzeni wirtualnych) i 10-minutowym czasem wygaśnięcia (TTL) jest minimalnym zaleceniem dla większości obciążeń produkcyjnych. Ustawiając mały czas wygaśnięcia, środowisko Azure IR może obsługiwać ciepły klaster, który nie spowoduje naliczenie kilku minut czasu rozpoczęcia klastra zimnego. Aby uzyskać więcej informacji, zobacz Azure Integration Runtime.
Ważne
Wybór środowiska Integration Runtime w działaniu Przepływ danych dotyczy tylko wyzwolonych wykonań potoku. Debugowanie potoku przy użyciu przepływów danych jest uruchamiane w klastrze określonym w sesji debugowania.
PolyBase
Jeśli używasz usługi Azure Synapse Analytics jako ujścia lub źródła, musisz wybrać lokalizację przejściową dla obciążenia wsadowego programu PolyBase. Technologia PolyBase umożliwia zbiorcze ładowanie wsadowe zamiast ładowania wiersz po wierszu danych. Program PolyBase znacząco skraca czas ładowania do usługi Azure Synapse Analytics.
Klucz punktu kontrolnego
W przypadku korzystania z opcji przechwytywania zmian dla źródeł przepływu danych usługa ADF automatycznie obsługuje punkt kontrolny i zarządza nim. Domyślny klucz punktu kontrolnego to skrót nazwy przepływu danych i nazwy potoku. Jeśli używasz wzorca dynamicznego dla tabel źródłowych lub folderów, możesz zastąpić ten skrót i ustawić w tym miejscu własną wartość klucza punktu kontrolnego.
Poziom rejestrowania
Jeśli nie potrzebujesz każdego wykonania potoku działań przepływu danych, aby w pełni rejestrować wszystkie pełne dzienniki telemetrii, możesz opcjonalnie ustawić poziom rejestrowania na "Podstawowy" lub "Brak". Podczas wykonywania przepływów danych w trybie pełnej (ustawienie domyślne) żądasz, aby usługa w pełni rejestrowała aktywność na każdym poziomie poszczególnych partycji podczas przekształcania danych. Może to być kosztowna operacja, więc włączenie pełnej informacji podczas rozwiązywania problemów może poprawić ogólny przepływ danych i wydajność potoku. Tryb "Podstawowy" rejestruje tylko czasy trwania transformacji, podczas gdy "Brak" zawiera tylko podsumowanie czasów trwania.
Właściwości ujścia
Funkcja grupowania w przepływach danych umożliwia zarówno ustawienie kolejności wykonywania ujścia, jak i grupowanie ujść razem przy użyciu tej samej liczby grupy. Aby ułatwić zarządzanie grupami, możesz poprosić usługę o równoległe uruchamianie ujścia w tej samej grupie. Możesz również ustawić grupę ujścia, aby kontynuować nawet po wystąpieniu jednego z ujściów błędu.
Domyślnym zachowaniem ujścia przepływu danych jest wykonanie każdego ujścia sekwencyjnie, w sposób szeregowy i niepowodzenie przepływu danych w przypadku wystąpienia błędu w ujściu. Ponadto wszystkie ujścia są domyślne dla tej samej grupy, chyba że przejdziesz do właściwości przepływu danych i ustawisz różne priorytety ujścia.
Tylko pierwszy wiersz
Ta opcja jest dostępna tylko dla przepływów danych, które mają włączone ujścia pamięci podręcznej dla "Dane wyjściowe do działania". Dane wyjściowe przepływu danych, który jest wstrzykiwany bezpośrednio do potoku, jest ograniczony do 2 MB. Ustawienie "tylko pierwszego wiersza" pomaga ograniczyć dane wyjściowe z przepływu danych podczas wstrzykiwania danych wyjściowych działania przepływu danych bezpośrednio do potoku.
Parametryzacja Przepływ danych
Sparametryzowane zestawy danych
Jeśli przepływ danych używa sparametryzowanych zestawów danych, ustaw wartości parametrów na karcie Ustawienia .
Parametryzowane przepływy danych
Jeśli przepływ danych jest sparametryzowany, ustaw wartości dynamiczne parametrów przepływu danych na karcie Parametry . Możesz użyć języka wyrażeń potoku lub języka wyrażeń przepływu danych, aby przypisać wartości parametrów dynamicznych lub literałów. Aby uzyskać więcej informacji, zobacz parametry Przepływ danych.
Sparametryzowane właściwości obliczeniowe.
Możesz sparametryzować liczbę rdzeni lub typ obliczeniowy, jeśli używasz środowiska Azure Integration Runtime autoresolve i określ wartości parametrów compute.coreCount i compute.computeType.
Debugowanie potoku działania Przepływ danych
Aby wykonać uruchomienie potoku debugowania przy użyciu działania Przepływ danych, należy włączyć tryb debugowania przepływu danych za pomocą suwaka Przepływ danych Debuguj na górnym pasku. Tryb debugowania umożliwia uruchamianie przepływu danych względem aktywnego klastra Spark. Aby uzyskać więcej informacji, zobacz Tryb debugowania.
Potok debugowania jest uruchamiany względem aktywnego klastra debugowania, a nie środowiska Integration Runtime określonego w ustawieniach działania Przepływ danych. Podczas uruchamiania trybu debugowania możesz wybrać środowisko obliczeniowe debugowania.
Monitorowanie działania Przepływ danych
Działanie Przepływ danych ma specjalne środowisko monitorowania, w którym można wyświetlać informacje dotyczące partycjonowania, czasu etapu i pochodzenia danych. Otwórz okienko monitorowania za pomocą ikony okularów w obszarze Akcje. Aby uzyskać więcej informacji, zobacz Monitorowanie Przepływ danych.
Użycie działania Przepływ danych powoduje kolejne działanie
Działanie przepływu danych generuje metryki dotyczące liczby wierszy zapisanych w ujściu i wierszach odczytanych z każdego źródła. Te wyniki są zwracane w output
sekcji wyniku uruchomienia działania. Zwrócone metryki są w formacie poniższego kodu json.
{
"runStatus": {
"metrics": {
"<your sink name1>": {
"rowsWritten": <number of rows written>,
"sinkProcessingTime": <sink processing time in ms>,
"sources": {
"<your source name1>": {
"rowsRead": <number of rows read>
},
"<your source name2>": {
"rowsRead": <number of rows read>
},
...
}
},
"<your sink name2>": {
...
},
...
}
}
}
Aby na przykład uzyskać liczbę wierszy zapisanych w ujściu o nazwie "sink1" w działaniu o nazwie "dataflowActivity", użyj polecenia @activity('dataflowActivity').output.runStatus.metrics.sink1.rowsWritten
.
Aby uzyskać liczbę wierszy odczytanych ze źródła o nazwie "source1", które zostało użyte w tym ujściu, użyj polecenia @activity('dataflowActivity').output.runStatus.metrics.sink1.sources.source1.rowsRead
.
Uwaga
Jeśli ujście zawiera zero zapisanych wierszy, nie będzie ono wyświetlane w metrykach. Istnienie można zweryfikować przy użyciu contains
funkcji . Na przykład sprawdza, contains(activity('dataflowActivity').output.runStatus.metrics, 'sink1')
czy wszystkie wiersze zostały zapisane w ujściu 1.
Powiązana zawartość
Zobacz obsługiwane działania przepływu sterowania: