Zdieľať cez


Vytvorenie položky údajových funkcií používateľa služby Fabric (Preview)

V tejto príručke vytvoríme novú položku používateľské údajové funkcie a zapíšeme do nej nové funkcie. Každá položka používateľských údajových funkcií obsahuje kód definujúci jednu alebo viacero funkcií, ktoré môžete spustiť jednotlivo.

Konkrétne sa naučíte:

  • Vytvorte položku údajových funkcií používateľa.
  • Napíšte novú funkciu.
  • Spravovanie funkcií.
  • Spustite svoju funkciu.

Požiadavky

Vytvorenie novej položky používateľských údajových funkcií služby Fabric

  1. Vyberte pracovný priestor a vyberte položku + Nová položka.
  2. Vyberte položku Typ položky ako Všetky položky. Vyhľadajte a vyberte údajové funkcie používateľov.

Vytvorenie novej položky údajových funkcií používateľa

  1. V pracovnom priestore vyberte položky + Nová položka.

  2. Na table, ktorá sa otvorí, vyhľadajte položku user data functionsa potom vyberte dlaždicu.

    Snímka obrazovky zobrazujúca dlaždicu údajových funkcií používateľa na novej table položiek.

  3. Zadajte Name pre položku údajových funkcií používateľa.

  4. Výberom položky Nová funkcia vytvoríte šablónu funkcie hello_fabric jazyka Python. Prieskumník funkcií zobrazuje všetky publikované funkcie, ktoré sú pripravené na vyvolanie.

    Snímka obrazovky zobrazujúca spôsob vytvorenia novej funkcie pomocou šablóny.

  5. Po publikovaní funkcie hello_fabric ju môžete spustiť zo zoznamu funkcií v prieskumníkovi funkcií.

    Snímka obrazovky znázorňujúca kód funkcie hello-fabric.

Pridanie novej funkcie zo vzorky

Tu je príklad toho, ako pridať novú funkciu z ponuky Insert sample. V tomto prípade pridáme funkciu s názvom Manipulácia s údajmi pomocou knižnice pandas, ktorá ako požiadavku používa knižnicu pandas. Ak chcete pridať túto ukážku funkcie, postupujte podľa krokov:

  1. Vyberte na správu knižníc a pridajte knižnice, ktoré vaša funkcia vyžaduje.

    Snímka obrazovky zobrazujúca, ako spravovať knižnice.

    Nota

    fabric_user_data_functions knižnica sa predvolene pridáva a nedá sa odstrániť. Táto knižnica sa vyžaduje pre funkčnosť používateľských údajových funkcií. Je potrebné aktualizovať verziu tejto knižnice pre všetky budúce vydania tejto súpravy SDK.

  2. Vyberte knižnicu pandas a vyberte verziu. Po pridaní sa knižnica automaticky uloží do položky Používateľské údajové funkcie.

    Snímka obrazovky zobrazujúca, ako pridať knižnicu pandas.

  3. Vyberte položku Vložiť ukážky a vyberte položky Manipulovať s údajmi s knižnicou pandas. Táto akcia vloží vzorový kód do dolnej časti kódu za ostatné funkcie.

    Snímka obrazovky zobrazujúca ako vložiť vzorku, ktorá používa knižnicu pandas.

  4. Po vložení ukážky do editora môžete zmeny uložiť výberom položky Publikovať. Publikovanie zmien môže trvať niekoľko minút.

    Snímka obrazovky zobrazujúca úryvok kódu ukážky v editore.

  5. Po dokončení publikovania sa nová funkcia zobrazí v zozname Prieskumník funkcií. Táto funkcia je teraz pripravená na spustenie z portálu alebo vyvolaná z inej aplikácie alebo položky služby Fabric, ako je napríklad kanál údajov.

    Snímka obrazovky zobrazujúca úryvok kódu ukážky v editore.

Spustenie funkcie

  1. Vyberte položku Spustiť, ktorá sa zobrazí po ukázaní myšou na funkciu v zozname Prieskumník funkcií.

    Snímka obrazovky zobrazujúca, ako otestovať údajové funkcie.

  2. Odovzdajte povinné parametre prezentované ako formulár v prieskumníkovi funkcií. V tomto prípade spustíme funkciu manipulate_data, ktorá ako parameter vyžaduje reťazec JSON.

    [
     {
      "Name": "John",
      "Age": 22,
      "Gender": "male"
     }
    ]
    
  3. Funkciu spustíte výberom položky Spustiť.

    Snímka obrazovky zobrazujúca výstup pri úspešnom spustení funkcie.

  4. Môžete vidieť dynamické denníky a výstup pre funkciu na overenie úspešného fungovania. Prípadne sa zobrazí chybové hlásenie a denníky z vyvolania funkcie.

Napísanie novej funkcie

Každá spúšťateľná funkcia sa pred definíciou funkcie začína dekorátorom @udf.function(). Prečítajte si viac o našom modeli programovania v jazyku Python. Ak chcete napísať novú funkciu, deklarujte ju ako spustiteľnú funkciu pomocou dekorátora @udf.function() na začiatku. Tu je príklad funkcie:

# 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)

Keď je funkcia pripravená, publikujte na jej spustenie funkciu.

Kľúčové koncepty programovacieho modelu

Funkcie používateľských údajov používajú programovací model User Data Functions programu Python na vytváranie, spúšťanie, ladenie a úpravu jednotlivých funkcií. Toto je knižnica prvej strany, ktorá poskytuje potrebné funkcie na vyvolanie vašich funkcií v službe Fabric a využitie všetkých integrácií.

Po vytvorení prvej funkcie budú prvé riadky kódu obsahovať príkazy importu s potrebnými knižnicami na spustenie šablóny.

import datetime
import fabric.functions as fn
import logging

udf = fn.UserDataFunctions()

Nota

Príkaz importu obsahujúci knižnicu fabric.functions a riadok obsahujúci tento udf = fn.UserDataFunctions() príkazu sú potrebné na správne spustenie funkcií. Ak tieto riadky chýbajú, funkcie nebudú správne fungovať.

  • Ak chcete vytvárať, spúšťať a spravovať funkcie, potrebujete fabric.functions SDK a niekoľko ďalších dôležitých knižníc, ako napríklad logging umožňuje písať vlastné denníky.
  • udf=fn.UserDataFunctions() je konštrukt na definovanie funkcií v rámci položky údajových funkcií používateľa.

Spravovanie údajových funkcií

Premenovanie funkcie

  1. Vyberte položku do editora kódu a aktualizujte názov funkcie. Premenujte hello_fabric napríklad na hello_fabric1. Príklad:

    @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 zmene názvu vyberte položku Publikovať a uložte tieto zmeny.

  3. Po publikovaní zmien môžete zobraziť nový názov funkcie v prieskumníkovi funkcií.

Vymazať funkciu

Ak chcete funkciu odstrániť, vyberte v editore kódu položku Kód funkcie a odstráňte celú časť s kódom. Publikujte zmeny, aby ste ju úplne odstránili z položky údajových funkcií používateľa.

Ak chcete napríklad odstrániť funkciu hello_fabric, odstráňte nasledujúci 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 odstránení kódu môžete vybrať položky Publikovať a zmeny sa uložia. Po dokončení publikovania sa v prieskumníkovi funkcií zobrazí aktualizovaný zoznam dostupných funkcií.

Ďalšie kroky