Sdílet prostřednictvím


Vytvořit položku uživatelských datových funkcí Fabric

V této příručce vytvoříme novou položku funkce User Data Functions a zapíšeme do ní nové funkce. Každá položka Funkce uživatelských dat obsahuje kód, který definuje jednu nebo mnoho funkcí, které můžete spouštět jednotlivě.

Konkrétně se naučíte:

  • Umožňuje vytvořit položku funkcí uživatelských dat.
  • Napište novou funkci.
  • Správa funkcí
  • Spusťte funkci.

Požadavky

Vytvoření nové položky Funkce uživatelských dat Fabric

  1. Vyberte pracovní prostor a vyberte + Nová položka.
  2. Vyberte Typ položky jako Všechny položky. Vyhledejte a vyberte Funkce uživatelských dat.

Vytvoření nové položky funkcí uživatelských dat

  1. V pracovním prostoru vyberte + Nová položka.

  2. V podokně, které se otevře, vyhledejte user data functionsa vyberte dlaždici.

    Snímek obrazovky znázorňující dlaždici funkcí uživatelských dat v podokně nové položky

  3. Zadejte název položky funkcí uživatelských dat.

  4. Výběrem Nová funkce vytvořte šablonu funkce Python hello_fabric. Průzkumník služby Functions zobrazí všechny funkce, které jsou publikované a připravené k vyvolání.

    Snímek obrazovky znázorňující, jak vytvořit novou funkci pomocí šablony

  5. hello_fabric Jakmile je funkce publikovaná, můžete ji spustit ze seznamu funkcí v Průzkumníku funkcí.

    Snímek obrazovky s kódem pro funkci hello-fabric

Přidání nové funkce z ukázky

Toto je příklad, jak přidat novou funkci z nabídky Insert sample. V tomto případě přidáme funkci s názvem Manipulace s daty s knihovnou pandas , která knihovnu pandas používá jako požadavek. Podle kroků přidejte tuto ukázkovou funkci:

  1. Ujistěte se, že jste v režimu Vývoje. Vyberte správu knihovny a přidejte knihovny, které vaše funkce vyžaduje.

    Snímek obrazovky znázorňující, jak spravovat knihovny

    Poznámka:

    fabric_user_data_functions Knihovna se přidá ve výchozím nastavení a nedá se odebrat. Tato knihovna je nezbytná pro funkčnost funkcí uživatelských dat. Musíte aktualizovat verzi této knihovny pro všechny budoucí verze této sady SDK.

  2. Vyberte knihovnu pandas a vyberte verzi. Po přidání knihovny se automaticky uloží do položky Funkce uživatelských dat.

    Snímek obrazovky znázorňující, jak přidat knihovnu pandas

  3. Vyberte Vložit ukázku a vyberte Manipulovat s daty pomocí knihovny pandas. Tato akce vloží vzorový kód na konec vašeho kódu, po ostatních funkcích.

    Snímek obrazovky znázorňující, jak vložit ukázku, která používá knihovnu pandas

  4. Jakmile se ukázka vloží do editoru, otestujete ji pomocí funkce Testování v režimu vývoje.

  5. Až budete připraveni, můžete výběrem možnosti Publikovat uložit změny a aktualizovat funkce. Publikování může trvat několik minut.

    Snímek obrazovky znázorňující fragment kódu ukázky v editoru

  6. Po dokončení publikování se nová funkce zobrazí v seznamu Průzkumníka funkcí. Tato funkce je teď připravená ke spuštění z portálu nebo k vyvolání z jiné aplikace nebo položky Fabric, jako je kanál.

    Snímek obrazovky znázorňující fragment kódu ukázky v editoru

Spusťte svou funkci

  1. Chcete-li funkci spustit, musíte nejprve přepnout do režimu pouze spuštění kliknutím na přepínač režimu.

    Animovaný snímek obrazovky znázorňující, jak přepnout do režimu Pouze spustit

  2. Vyberte ikonu Spustit , která se zobrazí, když najedete myší na funkci v seznamu Průzkumníka funkcí.

    Snímek obrazovky znázorňující, jak spouštět funkce

  3. Předejte požadované parametry uvedené jako formulář v Průzkumníku funkcí. V tomto případě spustíme manipulate_data funkci, která jako parametr vyžaduje řetězec JSON.

    [
     {
      "Name": "John",
      "Age": 22,
      "Gender": "male"
     }
    ]
    
  4. Vyberte Spustit , aby se funkce spustila.

    Snímek obrazovky znázorňující výstup při úspěšném spuštění funkce

  5. Můžete zobrazit živé protokoly a výstup funkce, abyste ověřili, jestli se úspěšně spustila. Případně se zobrazí chybová zpráva a protokoly z volání funkce.

Napsání nové funkce

Každá spuštěná funkce začíná dekorátorem @udf.function() před definicí funkce. Přečtěte si další informace o našem programovacím modelu Pythonu. Pokud chcete napsat novou funkci, použijte dekorátor @udf.function() na začátku a deklarujte ji jako spustitelnou funkci. Tady je příklad funkce:

# This sample allows you to pass a credit card number as an integer and mask it, leaving the last 4 digits. 

@udf.function()
def maskCreditCard(cardNumber: int)-> str:
    # Convert the card number to a string
    cardNumberStr = str(cardNumber)
    
    # Check if the card number is valid
    if not cardNumberStr.isdigit() or not (13 <= len(cardNumberStr) <= 19):
        raise ValueError("Invalid credit card number")
    
    # Mask all but the last four digits
    maskedNumber = '*' * (len(cardNumberStr) - 4) + cardNumberStr[-4:]
    
    return str(maskedNumber)

Jakmile je funkce připravená, publikujte ji k jejímu spuštění.

Klíčové koncepty programovacího modelu

Funkce uživatelských dat používají programovací model User Data Functions v Pythonu k vytváření, spouštění, ladění a úpravě jednotlivých funkcí. Jedná se o interní knihovnu, která poskytuje potřebné funkce pro vyvolání vašich funkcí ve Fabricu a využití všech integrací.

Po vytvoření první funkce budou první řádky kódu obsahovat příkazy importu s potřebnými knihovnami ke spuštění šablony.

import datetime
import fabric.functions as fn
import logging

udf = fn.UserDataFunctions()

Poznámka:

Příkaz importu obsahující knihovnu fabric.functions a řádek obsahující tento příkaz udf = fn.UserDataFunctions() jsou nezbytné ke správnému spuštění funkcí. Pokud tyto řádky chybí, nebudou vaše funkce fungovat správně .

  • K vytváření, spouštění a správě funkcí potřebujete fabric.functions sadu SDK a několik dalších důležitých knihoven, jako je například logging, která umožňuje zápis vlastních protokolů.
  • udf=fn.UserDataFunctions() je konstruktor definující funkce v položce uživatelských datových funkcí.

Správa datových funkcí

Přejmenování funkce

  1. V režimu Vývoj vyberte v editoru kódu a aktualizujte název funkce. Přejmenujte hello_fabric například na hello_fabric1:

    @udf.function()
    def hello_fabric1(name: str) -> str:
       logging.info('Python UDF trigger function processed a request.')
    
       return f"Welcome to Fabric Functions, {name}, at {datetime.datetime.now()}!"
    
  2. Po změně názvu uložte tyto změny výběrem možnosti Publikovat .

  3. Po publikování změn můžete zobrazit nový název funkce v Průzkumníku funkcí.

Odstranění funkce

Pokud chcete funkci odstranit, vyberte kód funkce v editoru kódu a odeberte celý oddíl kódu. Publikujte změny, abyste položku funkcí uživatelských dat zcela odstranili.

Pokud chcete například odstranit hello_fabric funkci, odeberte následující blok kódu:

@udf.function()
def hello_fabric(name: str) -> str:
    logging.info('Python UDF trigger function processed a request.')

    return f"Welcome to Fabric Functions, {name}, at {datetime.datetime.now()}!"

Po odebrání kódu můžete výběrem možnosti Publikovat uložit změny. Po dokončení publikování se v Průzkumníku funkcí zobrazí aktualizovaný seznam dostupných funkcí.

Další kroky