aktivita funkce Azure v Azure Data Factory

VZTAHUJE SE NA: Azure Data Factory Azure Synapse Analytics

Tip

Pro ekvivalentní aktivitu v Data Factory v Microsoft Fabric viz aktivita Funkce. Aktivita Azure Function umožňuje spustit Azure Functions v potrubí Azure Data Factory nebo Synapse. Abyste mohli spustit funkci Azure, musíte vytvořit připojení služby. Propojenou službu pak můžete použít s aktivitou, která určuje funkci Azure, kterou chcete spustit.

Vytvoření aktivity funkce Azure pomocí uživatelského rozhraní

Pokud chcete v datovém kanálu použít aktivitu funkce Azure, proveďte následující kroky:

  1. Rozbalte část Azure Functions v podokně aktivit kanálu a přetáhněte aktivitu funkce Azure na plátno kanálu.

  2. Vyberte novou aktivitu funkce Azure na plátně, pokud ještě není vybraná, přejděte na její kartu Nastavení a upravte její podrobnosti.

    Screenshot uživatelského rozhraní pro aktivitu funkcí Azure.

  3. Pokud ještě nemáte definovanou propojenou službu Azure Function, vyberte Možnost Nový a vytvořte novou. V novém podokně propojené služby Azure Funkce zvolte existující adresu URL aplikace funkcí Azure a zadejte klíč funkce.

    Screenshot nového podokna pro vytvoření propojené služby funkce Azure.

  4. Po výběru propojené služby Azure Funkce zadejte název funkce a další podrobnosti pro dokončení konfigurace.

propojená služba Azure Function

Návratový typ funkce Azure musí být platný JObject. (Mějte na paměti, že JArrayneníJObject.) Jakýkoli jiný návratový typ než JObject selže a vyvolá chybu uživatelský obsah odpovědi není platným objektem JObject.

Klíč funkce poskytuje zabezpečený přístup k názvu funkce, přičemž každý z nich má samostatné jedinečné klíče nebo hlavní klíč v rámci aplikace funkcí. Spravovaná identita poskytuje zabezpečený přístup k celé aplikaci funkcí. Uživatel musí zadat klíč pro přístup k názvu funkce. Další informace najdete v dokumentaci k funkci, kde najdete další podrobnosti o přístupovém klíči funkce.

Vlastnost Popis Povinné
Typ Vlastnost typu musí být nastavená na: AzureFunction. Ano
Adresa URL funkční aplikace Adresa URL aplikace funkcí Azure Formát je https://<accountname>.azurewebsites.net. Tato adresa URL je hodnota v části URL při prohlížení aplikace funkcí na portálu Azure. Ano
Funkční klávesa Přístupový klíč pro funkci Azure. Vyberte oddíl Spravovat pro příslušnou funkci a zkopírujte klíč funkce nebo klíč hostitele. Další informace najdete tady: Práce s přístupovými klíči Ano
Ověřování Metoda ověřování používaná pro volání funkce Azure. Podporované hodnoty jsou spravovaná identita přiřazená systémem nebo anonymní. Ano
ID zdroje ID aplikace (klienta) funkce Azure. Přejděte do části Ověřování příslušné funkce a získejte ID aplikace (klienta) u Poskytovatele identity. Tato vlastnost se zobrazí při použití spravované identity přiřazené systémem. Další informace najdete v tématu Konfigurování služby App Service nebo aplikace Azure Functions pro použití Microsoft Entra pro přihlášení. Ne*

/* Vlastnost resourceId je vyžadována při použití ověřování spravované identity přiřazené systémem.

Ověřování spravované identity přiřazené systémem

Ověřování spravované identity přiřazené systémem (SAMI) můžete použít dvěma způsoby:

  • Nastavte ID prostředku na https://management.azure.com. Data Factory se připojí k aplikaci funkcí pomocí spravované identity přiřazené systémem a spustí aplikaci funkcí s anonymním ověřováním.

  • Pro zabezpečená prostředí, ve kterých nechcete používat anonymní ověřování, nakonfigurujte jako ID prostředku hlavní název služby (SPN). Hlavní název služby (SPN) musí být správně nakonfigurovaný v aplikaci Function App:

    1. Vytvořte novou registraci aplikace jako službovou hlavní identitu.

    2. V aplikaci funkcí přejděte do části Ověřování v části Nastavení a vytvořte zprostředkovatele identity.

    3. Přidejte ID aplikace ADF do části Povolené požadavky od specifických klientských aplikací a ID objektu v části Povolit požadavky od konkrétních identit. ID aplikace a ID objektu najdete pomocí následujícího postupu:

      1. Otevřete portál Azure
      2. Přechod na podnikové aplikace
      3. Vyhledejte název vaší spravované identity Azure Data Factory.
      4. Zkopírujte ID objektů a aplikací nalezených v tabulce.

      Snímek obrazovky s registrací aplikace zobrazující pole, která se mají vyplnit ID aplikace a ID objektu

aktivita funkce Azure

Vlastnost Popis Povolené hodnoty Povinné
Název Název aktivity v potrubí Řetězec Ano
Typ Typ aktivity je AzureFunctionActivity. Řetězec Ano
Propojená služba Propojená služba Azure Function pro příslušnou Azure Function App Odkaz na propojenou službu Ano
Název funkce Název funkce v aplikaci funkcí Azure, kterou tato aktivita volá Řetězec Ano
metoda Metoda REST API pro volání funkce Podporované typy řetězců: GET, POST, PUT Ano
Hlavička Hlavičky, které jsou odesílány s požadavkem. Pokud chcete například nastavit jazyk a typ požadavku: "headers": { "Accept-Language": "en-us", "Content-Type": "application/json" } Řetězec (nebo výraz s typem výsledku řetězce) Ne
Obsah Text, který se odešle spolu s požadavkem na metodu rozhraní API funkce Řetězec (nebo výraz s výsledkovým typem řetězec) nebo objekt. Vyžadováno pro metody PUT/POST

Viz schéma datové části požadavku v sekci Schéma datové části požadavku.

Směrování a dotazy

Aktivita funkce Azure podporuje přesměrování. Pokud má například funkce Azure koncový bod https://functionAPP.azurewebsites.net/api/<functionName>/<value>?code=<secret>, functionName, která se má použít v aktivitě funkce Azure, je <functionName>/<value>. Tuto funkci můžete parametrizovat tak, aby poskytovala požadovanou functionName za běhu.

Poznámka:

Vlastnost functionName pro Durable Functions by měla být převzata z vlastnosti route vazby funkce v definici JSON, aby zahrnovala informace o směrování. Použití functionName bez zahrnutí podrobností o trase vede k selhání, protože nelze najít aplikaci funkcí.

Aktivita funkce Azure také podporuje queries. Dotaz musí být součástí functionName. Pokud je například název funkce HttpTriggerCSharp a dotaz, který chcete zahrnout, je name=hello, můžete vytvořit functionName v aktivitě funkce Azure jako HttpTriggerCSharp?name=hello. Tuto funkci lze parametrizovat, aby byla hodnota určena za běhu.

Vypršení časového limitu a dlouho běžících funkcí

Azure Functions vyprší časový limit po 230 sekundách bez ohledu na nastavení functionTimeout, které jste nakonfigurovali v nastavení. Další informace najdete v tomto článku. Chcete-li toto chování obejít, postupujte podle asynchronního vzoru nebo použijte Durable Functions. Výhodou Durable Functions je, že nabízejí vlastní mechanismus sledování stavu, takže nemusíte implementovat vlastní sledování stavu.

Další informace o Durable Functions najdete v článku this. Můžete nastavit aktivitu funkce Azure tak, aby volala Durable Function, která vrátí odpověď s jiným identifikátorem URI, například s example. Vzhledem k tomu, že statusQueryGetUri vrací stav HTTP 202, zatímco funkce běží, můžete stav funkce dotazovat pomocí webové aktivity. Nastavte webovou aktivitu s polem nastaveným url na @activity('<AzureFunctionActivityName>').output.statusQueryGetUri. Po dokončení Durable Function je výstupem funkce výstup webové aktivity.

Vzorek

Můžete najít ukázku, která pomocí funkce Azure extrahuje obsah souboru tar .

Přečtěte si další informace o podporovaných aktivitách v Kanálech a aktivitách.