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
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ą !
Ten artykuł ułatwia zrozumienie zagnieżdżonych działań w usługach Azure Data Factory i Azure Synapse Analytics oraz sposobie ich używania, ograniczeń i najlepszych rozwiązań.
Omówienie
Potok usługi Data Factory lub obszaru roboczego usługi Synapse może zawierać działania przepływu sterowania, które umożliwiają zawarte w nich inne działania. Te zagnieżdżone działania można traktować jako kontenery, które przechowują co najmniej jedną inną czynność, która może być uruchamiana w zależności od aktywności przepływu sterowania najwyższego poziomu.
Zobacz poniższy przykład z działaniem If, które zawiera jedno działanie.
Działania przepływu kontrolnego
Następujące działania przepływu sterowania obsługują zagnieżdżone działania:
| Działanie sterowania | opis |
|---|---|
| Dla każdego | Działanie ForEach definiuje powtarzający się przepływ sterowania w potoku. To działanie służy do iterowania po kolekcji i wykonuje określone zadania w pętli. Implementacja pętli tego działania przypomina strukturę pętli Foreach w językach programowania. |
| Działanie instrukcji warunkowej 'If' | Instrukcja If Condition umożliwia tworzenie rozgałęzień na podstawie warunku, który ocenia, czy jest prawdziwy lub fałszywy. Działanie If Condition pełni taką samą rolę, co instrukcja if w językach programowania. Ocenia zestaw działań, gdy warunek jest obliczany na true i inny zestaw działań, gdy warunek ma wartość false. |
| Działanie Until | Wprowadza pętlę Do-Until, przypominającą strukturę pętli Do-Until w językach programowania. Służy do wykonywania zestawu działań w pętli do momentu, gdy warunek skojarzony z działaniem zostanie obliczony na wartość true. Możesz określić wartość limitu czasu dla działania typu until. |
| Zmień aktywność | Działanie Switch zapewnia te same funkcje, które instrukcja switch udostępnia w językach programowania. Ocenia zestaw działań odpowiadających przypadkowi, który spełnia ocenę warunku. |
Nawigowanie po zagnieżdżonych aktywnościach
Istnieją dwa podstawowe sposoby przechodzenia do zawartych działań w zagnieżdżonej aktywności.
Każde działanie przepływu sterowania, które obsługuje zagnieżdżone działania, ma kartę aktywności. Wybranie karty aktywności spowoduje, że pojawi się ikonka ołówka, którą można kliknąć, aby przejść do panelu wewnętrznych działań.
Z poziomu działania na kanwie potoku możesz wybrać ikonę ołówka, aby przejść do szczegółów w panelu działań wewnętrznych. Ponadto działania ForEach i Until obsługują dwukrotne kliknięcie działania w celu wejścia do panelu działań wewnętrznych.
Kanwa potoku danych przejdzie następnie do kontekstu wybranego przez ciebie kontenera aktywności wewnętrznej. W górnej części będzie również dostępny ślad do stron nadrzędnych, który można wybrać, aby wrócić do potoku nadrzędnego.
Ograniczenia osadzania zagnieżdżonych aktywności
Istnieją ograniczenia dotyczące działań, które obsługują zagnieżdżanie (ForEach, Until, Switch i If Condition) na potrzeby zagnieżdżenia innego zagnieżdżonego działania. Szczególnie:
- Jeśli i Switch mogą być używane wewnątrz ForEach lub Until aktywności.
- Jeśli i Switch nie mogą być używane wewnątrz działań If i Switch.
- ForEach lub Until obsługują tylko jeden poziom zagnieżdżania.
Zapoznaj się z poniższą sekcją najlepszych praktyk, jak używać innych działań potoku, aby umożliwić ten scenariusz. Ponadto nie można umieścić działania sprawdzania poprawności wewnątrz zagnieżdżonego działania.
Jeśli i Switch mogą być używane wewnątrz ForEach lub Until aktywności. ForEach lub Until obsługuje tylko zagnieżdżanie na poziomie pojedynczym. If i Switch nie mogą być używane wewnątrz działań If i Switch.
Najlepsze praktyki dotyczące wielu poziomów zagnieżdżonych działań
Aby mieć logikę, która obsługuje zagnieżdżanie na więcej niż jednym poziomie, możesz użyć Execute Pipeline Activity wewnątrz zagnieżdżonego działania, aby wywołać inny potok, który może mieć kolejny poziom zagnieżdżonych działań. Typowym przypadkiem użycia tego wzorca jest pętla ForEach, w której należy dodatkowo iterować w oparciu o logikę w wewnętrznych działaniach.
Przykładem tego wzorca byłoby, gdyby istniał system plików z listą folderów, a każdy folder zawiera wiele plików, które chcesz przetworzyć. Ten wzorzec można wykonać, ogólnie, wykonując następujące czynności.
- Najpierw użyj działania Pobierz metadane, aby uzyskać listę tylko folderów.
- Przekaż wynik aktywności Pobierz Metadane do listy Elementy w aktywności ForEach. Każda iteracja reprezentuje następnie jeden folder do przetworzenia.
- W panelu działań wewnętrznych działania ForEach użyj innego działania Pobierz metadane, aby uzyskać listę plików w folderze.
- Wywołaj działanie Execute Pipeline z parametrem tablicy i przekaż tablicę tych nazw plików.
- W potoku podrzędnym można następnie użyć innego zagnieżdżonego działania (takiego jak ForEach) z przekazaną listą tablicy w celu iterowania plików i wykonywania co najmniej jednego zestawu działań wewnętrznych.
Potok nadrzędny będzie wyglądać podobnie do poniższego przykładu.
Podrzędny potok przetwarzania będzie wyglądał podobnie do poniższego przykładu.
Powiązana zawartość
Zapoznaj się z poniższymi samouczkami, aby uzyskać instrukcje krok po kroku dotyczące tworzenia potoków i zestawów danych.