Udostępnij za pośrednictwem


Działanie funkcji platformy Azure w usłudze Azure Data Factory

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ą !

Działanie funkcji platformy Azure umożliwia uruchamianie usługi Azure Functions w potoku usługi Azure Data Factory lub Synapse. Aby uruchomić funkcję platformy Azure, musisz utworzyć połączone połączenie usługi. Następnie możesz użyć połączonej usługi z działaniem, które określa funkcję platformy Azure, którą planujesz wykonać.

Tworzenie działania funkcji platformy Azure za pomocą interfejsu użytkownika

Aby użyć działania funkcji platformy Azure w potoku, wykonaj następujące kroki:

  1. Rozwiń sekcję Funkcja platformy Azure w okienku Działania potoku i przeciągnij działanie funkcji platformy Azure do kanwy potoku.

  2. Wybierz nowe działanie funkcji platformy Azure na kanwie, jeśli nie zostało jeszcze wybrane, a jej karta Ustawienia , aby edytować jego szczegóły.

    Pokazuje interfejs użytkownika działania funkcji platformy Azure.

  3. Jeśli nie masz jeszcze zdefiniowanej usługi połączonej funkcji platformy Azure, wybierz pozycję Nowy, aby utworzyć nową. W nowym okienku połączonej usługi funkcji platformy Azure wybierz istniejący adres URL aplikacji funkcji platformy Azure i podaj klucz funkcji.

    Pokazuje nowe okienko tworzenia połączonej usługi funkcji platformy Azure.

  4. Po wybraniu połączonej usługi funkcji platformy Azure podaj nazwę funkcji i inne szczegóły, aby ukończyć konfigurację.

Połączona usługa funkcji platformy Azure

Zwracany typ funkcji platformy Azure musi być prawidłowym JObjecttypem . (Pamiętaj, że JArray nie jest .JObject) Każdy typ zwracany inny niż JObject niepowodzenie i zgłasza błąd użytkownika Zawartość odpowiedzi nie jest prawidłowym obiektem JObject.

Klucz funkcji zapewnia bezpieczny dostęp do nazwy funkcji z każdym z nich z oddzielnymi unikatowymi kluczami lub kluczem głównym w aplikacji funkcji. Tożsamość zarządzana zapewnia bezpieczny dostęp do całej aplikacji funkcji. Użytkownik musi podać klucz dostępu do nazwy funkcji. Aby uzyskać więcej informacji, zobacz dokumentację funkcji, aby uzyskać więcej informacji na temat klucza dostępu funkcji

Właściwości Opis Wymagane
Typ Właściwość type musi być ustawiona na: AzureFunction Tak
Adres URL aplikacji funkcji Adres URL aplikacji funkcji platformy Azure. Format to https://<accountname>.azurewebsites.net. Ten adres URL jest wartością w sekcji Adres URL podczas wyświetlania aplikacji funkcji w witrynie Azure Portal Tak
Klucz funkcji Klucz dostępu dla funkcji platformy Azure. Kliknij sekcję Zarządzanie odpowiednią funkcją i skopiuj klucz funkcji lub klucz hosta. Dowiedz się więcej tutaj: Praca z kluczami dostępu Tak
Uwierzytelnianie Metoda uwierzytelniania używana do wywoływania funkcji platformy Azure. Obsługiwane wartości to "Tożsamość zarządzana przypisana przez system" lub "anonimowa". Tak
Identyfikator zasobu Identyfikator aplikacji (klienta) funkcji platformy Azure. Przejdź do sekcji Uwierzytelnianie dla odpowiedniej funkcji i pobierz identyfikator aplikacji (klienta) w obszarze Dostawca tożsamości. Ta właściwość będzie wyświetlana podczas korzystania z tożsamości zarządzanej przypisanej przez system. Aby uzyskać więcej informacji, zobacz Configure your App Service or Azure Functions app to use Microsoft Entra login (Konfigurowanie usługi App Service lub aplikacji usługi Azure Functions w celu korzystania z logowania firmy Microsoft Entra). Nie.

Uwaga

W przypadku korzystania z uwierzytelniania anonimowego upewnij się, że tożsamość zostanie zdjęta po stronie funkcji platformy Azure.

Działanie funkcji platformy Azure

Właściwości Opis Dozwolone wartości Wymagane
Nazwisko Nazwa działania w potoku String Tak
Typ Typ działania to "AzureFunctionActivity" String Tak
Połączona usługa Połączona usługa funkcji platformy Azure dla odpowiedniej aplikacji funkcji platformy Azure Dokumentacja połączonej usługi Tak
Nazwa funkcji Nazwa funkcji w aplikacji funkcji platformy Azure, która wywołuje to działanie String Tak
Method Metoda interfejsu API REST dla wywołania funkcji Obsługiwane typy ciągów: "GET", "POST", "PUT" Tak
Nagłówek Nagłówki wysyłane do żądania. Aby na przykład ustawić język i typ żądania: "headers": { "Accept-Language": "en-us", "Content-Type": "application/json" } Ciąg (lub wyrażenie z wartością resultType ciągu) Nie.
Treść Treść, która jest wysyłana wraz z żądaniem do metody interfejsu API funkcji Ciąg (lub wyrażenie z wartością resultType ciągu) lub obiekt. Wymagane dla metod PUT/POST

Zobacz schemat ładunku żądania w sekcji Schemat ładunku żądania.

Routing i zapytania

Działanie funkcji platformy Azure obsługuje routing. Jeśli na przykład funkcja platformy Azure ma punkt końcowy https://functionAPP.azurewebsites.net/api/<functionName>/<value>?code=<secret>, parametr functionName do użycia w działaniu funkcji platformy Azure to <functionName>/<value>. Tę funkcję można sparametryzować, aby zapewnić żądaną functionName wartość w czasie wykonywania.

Uwaga

Właściwość functionName for Durable Functions powinna zostać pobrana z właściwości route powiązania funkcji w definicji JSON, aby uwzględnić informacje o routingu. Po prostu użycie functionName szczegółów bez dołączonej trasy spowoduje niepowodzenie, ponieważ nie można odnaleźć aplikacji funkcji.

Działanie funkcji platformy Azure obsługuje również zapytania. Zapytanie musi być dołączone jako część .functionName Na przykład gdy nazwa funkcji to HttpTriggerCSharp i zapytanie, które chcesz uwzględnić, to name=hello, możesz skonstruować element functionName w działaniu funkcji platformy Azure jako HttpTriggerCSharp?name=hello. Tę funkcję można sparametryzować, aby można było określić wartość w czasie wykonywania.

Limit czasu i długotrwałe funkcje

Czas usługi Azure Functions po upływie 230 sekund niezależnie od functionTimeout ustawienia skonfigurowanego w ustawieniach. Aby uzyskać więcej informacji, zobacz ten artykuł. Aby obejść to zachowanie, wykonaj wzorzec asynchroniczny lub użyj rozszerzenia Durable Functions. Zaletą rozszerzenia Durable Functions jest to, że oferują własny mechanizm śledzenia stanu, więc nie trzeba implementować własnego śledzenia stanu.

Dowiedz się więcej na temat rozszerzenia Durable Functions w tym artykule. Możesz skonfigurować działanie funkcji platformy Azure w celu wywołania funkcji Durable, która zwróci odpowiedź z innym identyfikatorem URI, na przykład w tym przykładzie. Ponieważ statusQueryGetUri zwraca stan HTTP 202, gdy funkcja jest uruchomiona, można sondować stan funkcji przy użyciu działania sieci Web. Skonfiguruj działanie internetowe z polem ustawionym url na @activity('<AzureFunctionActivityName>').output.statusQueryGetUri. Po zakończeniu działania trwałego dane wyjściowe funkcji będą danymi wyjściowymi działania internetowego.

Przykład

Przykład, który używa funkcji platformy Azure do wyodrębniania zawartości pliku tar, można znaleźć tutaj.

Dowiedz się więcej o obsługiwanych działaniach w temacie Potoki i działania.