Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Přidejte uživatelem definované funkce (UDF) zaregistrované v Katalogu Unity jako prostředky Databricks Apps, které vaší aplikaci umožní spouštět registrované funkce SQL a Pythonu. Funkce definované uživatelem poskytují opakovaně použitelnou obchodní logiku, transformace dat a vlastní operace, které je možné sdílet v rámci vaší organizace s centrálě spravovanou správou.
Požadavky na oprávnění
Aby bylo možné spustit UDF, musí mít služební účet aplikace oprávnění k nadřazenému katalogu USE CATALOG, oprávnění k nadřazenému schématu USE SCHEMA a oprávnění k funkci EXECUTE. Když přidáte prostředek UDF, Azure Databricks tato oprávnění automaticky udělí hlavní službě aplikace.
Aby bylo toto automatické udělení úspěšné, musí být pro každé oprávnění splněno jedno z následujících podmínek:
-
Pro
USE CATALOG: Buď všichni uživatelé účtu majíUSE CATALOGoprávnění k katalogu, nebo máteMANAGEoprávnění v katalogu. -
Pro
USE SCHEMA: Buď všichni uživatelé účtu majíUSE SCHEMAoprávnění ke schématu, nebo máteMANAGEoprávnění ke schématu. -
Pro
EXECUTE: Buď všichni uživatelé účtu majíEXECUTEoprávnění k funkci, nebo máteMANAGEoprávnění k funkci.
Viz oprávnění katalogu Unity a zabezpečitelné objekty.
Přidat zdroj funkce definované uživatelem (UDF)
Než přidáte uživatelsky definovanou funkci (UDF) jako prostředek, projděte si požadavky na prostředek aplikace.
- Při vytváření nebo úpravě aplikace přejděte ke kroku Konfigurace .
- V části Prostředky aplikace klikněte na + Přidat prostředek.
- Jako typ prostředku vyberte funkci UC.
- Zvolte UDF z dostupných funkcí ve vašem pracovním prostoru. Funkce už musí být zaregistrovaná v katalogu Unity.
- Vyberte úroveň oprávnění pro vaši aplikaci:
-
Může provést: Udělí aplikaci oprávnění ke spuštění UDF s použitím zadaných parametrů. Odpovídá oprávnění
EXECUTE
-
Může provést: Udělí aplikaci oprávnění ke spuštění UDF s použitím zadaných parametrů. Odpovídá oprávnění
- (Optional) Zadejte vlastní klíč prostředku, který určuje, jak odkazujete na uživatelem definovanou funkci v konfiguraci aplikace. Výchozí klíč je
function.
Proměnné prostředí
Když nasadíte aplikaci s prostředkem uživatelsky definované funkce, Azure Databricks zpřístupní úplný název ve třech úrovních prostřednictvím proměnných prostředí, na které můžete odkazovat pomocí valueFrom pole.
Příklad konfigurace:
env:
- name: UC_FUNCTION_NAME
valueFrom: function # Use your custom resource key if different
Použití funkce v aplikaci:
import os
from databricks.sdk import WorkspaceClient
# Access the function name
function_name = os.getenv("UC_FUNCTION_NAME")
# Initialize workspace client
w = WorkspaceClient()
# Execute the function via SQL
result = w.statement_execution.execute_statement(
warehouse_id="your_warehouse_id",
statement=f"SELECT {function_name}('parameter_value')"
)
# Process the result
print(f"Function result: {result}")
Další informace najdete v tématu Použití proměnných prostředí pro přístup k prostředkům.
Odeberte zdroj uživatelem definované funkce (UDF)
Když z aplikace odeberete uživatelsky definovanou funkci, principál služby aplikace ztratí přístup k funkci. UDF zůstává beze změny a zůstává dostupná pro ostatní uživatele a aplikace, které mají příslušná oprávnění.
Osvědčené postupy
Při práci s uživatelsky definovanými prostředky zvažte následující skutečnosti:
- Ujistěte se, že funkce definované uživatelem jsou dobře zdokumentované, s jasnými popisy parametrů a typy návratových hodnot.
- Ošetřete chyby UDF v kódu aplikace elegantně, včetně ověřování parametrů a zpracování výjimek.
- Před nasazením otestujte chování funkce definované uživatelem v kontextu aplikace a ověřte očekávané výsledky.
- Při plánování oprávnění aplikace zvažte závislosti UDF na podkladových tabulkách nebo zdrojích dat.