Poznámka
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete sa skúsiť prihlásiť alebo zmeniť adresáre.
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete skúsiť zmeniť adresáre.
Knižnice premenných vám pomáhajú vyhnúť sa tvrdému kódovaniu hodnôt v kóde zápisníka. Namiesto úpravy kódu aktualizujete hodnoty v knižnici a získavate ich za behu. Tento vzor vám pomáha opätovne používať zápisníky naprieč tímami a projektmi centralizovaním konfigurácie.
Nasledujúca tabuľka uvádza dostupné metódy knižníc premenných:
| Method | Podpis | Description |
|---|---|---|
getLibrary |
getLibrary(variableLibraryName: String): VariableLibrary |
Načíta objekt knižnice premenných. Pristupujte k premenným ako vlastnostiam na vrátenom objekte, napríklad library.variableName. Môžeš použiť getVariable('name') alebo vytvoriť zátvorkovú syntax library['name'] pre dynamický prístup. |
get |
get(variableReference: String): Any |
Získa hodnotu jednej premennej podľa jej referenčnej cesty vo formáte $(/**/libraryName/variableName). Predpona /**/ je povinná. Hodnota sa automaticky typuje na základe definície premennej. |
Definujte premenné
Definujte premenné vo svojej knižnici premenných pred použitím notebookutils.variableLibrary. Knižnice premenných môžete vytvárať a spravovať cez Fabric UI.
Knižnica premenných na získanie
Použite na getLibrary() získanie celej knižnice ako objektu a potom prístup k premenným ako vlastnostiam. Používajte alebo vytvárajte getVariable('name') zátvorkovú syntax, library['name'] keď potrebujete dynamický prístup.
samplevl = notebookutils.variableLibrary.getLibrary("sampleVL")
# Property access
samplevl.test_int
samplevl.test_str
# Method access (useful for dynamic variable names)
samplevl.getVariable("test_int")
# Bracket access
samplevl["test_int"]
Nasledujúci príklad ukazuje, ako dynamicky vytvoriť cestu k súboru pomocou hodnôt premenných knižníc:
samplevl = notebookutils.variableLibrary.getLibrary("sampleVL")
file_path = f"abfss://{samplevl.Workspace_name}@onelake.dfs.fabric.microsoft.com/{samplevl.Lakehouse_name}.Lakehouse/Files/<FileName>.csv"
df = spark.read.format("csv").option("header","true").load(file_path)
display(df)
Prístup k jednej premennej pomocou odkazu
Použite metódu get() s referenčným vzorom $(/**/libraryName/variableName) na získanie hodnoty jednej premennej. Hodnota sa automaticky typuje na základe definície premennej.
Dôležité
Predpona /**/ je povinná v referenčnom vzore. Celý vzor musí byť $(/**/libraryName/variableName), kde libraryName je presná premenná názov položky knižnice a variableName je definovaná premenná v tejto knižnici. Mená sú citlivé na veľkosť písmena.
notebookutils.variableLibrary.get("$(/**/samplevl/test_int)")
notebookutils.variableLibrary.get("$(/**/samplevl/test_str)")
notebookutils.variableLibrary.get("$(/**/samplevl/test_bool)")
Podporované typy premenných
Knižnice premenných podporujú nasledujúce dátové typy. Hodnoty sa automaticky zadávajú pri ich získaní – vo väčšine prípadov ich nemusíte explicitne odosielať.
| Typ | Description | Príklad |
|---|---|---|
| Povrázok | Textové hodnoty. | "my_connection_string" |
| Celé číslo | Celočíselné čísla. | 42 |
| Boolean | Booleovské pravdivé/nepravdivé. | true |
| Number | Desatinné čísla. | 3.14 |
| Dátum a čas | Hodnoty dátumu a času vo formáte ISO 8601. | "2025-01-15T08:30:00Z" |
| Sprievodca | Globálne jedinečné identifikátory. | "123e4567-e89b-12d3-a456-426614174000" |
| Referencia položky | Odkazy na podporované Fabric položky. | "workspace/item" |
Konfigurácia špecifická pre prostredie
Knižnice premenných podporujú hodnotové množiny, ktoré vám umožňujú definovať alternatívne množiny hodnôt pre tie isté premenné – napríklad vývoj, test a produkcia. Každý pracovný priestor má naraz jednu aktívnu hodnotu a nasadzovacie pipeline môžu automaticky aktivovať príslušnú hodnotu pre jednotlivé fázy.
Tento vzor eliminuje potrebu zmien v kóde pri propagácii zápisníkov naprieč prostrediami:
# These values change based on the active value set (dev/test/prod)
app_config = notebookutils.variableLibrary.getLibrary("app_config")
api_endpoint = app_config.api_endpoint
batch_size = app_config.batch_size
debug_mode = app_config.debug_enabled
print(f"API Endpoint: {api_endpoint}")
print(f"Batch Size: {batch_size}")
print(f"Debug Mode: {debug_mode}")
if debug_mode:
print("Running in debug mode")
Zváženia
Majte na pamäti tieto úvahy:
- API
notebookutils.variableLibrarypodporuje prístup len k premenným knižniciam v rámci toho istého pracovného priestoru. Prístup medzi pracovnými priestormi nie je podporovaný. - Počas referenčného behu nemôžete vyhľadávať knižnice premenných naprieč pracovnými priestormi v detských zápisníkoch.
- Kód zápisníka odkazuje na premenné definované v množine aktívnych hodnôt knižnice premenných. Ak chcete použiť rôzne hodnoty, aktivujte v pracovnom priestore inú sadu hodnôt alebo použite nasadovacie pipeline na správu hodnôt pre každé prostredie.
- Service Principal (SPN) momentálne nie je podporovaný pre variabilné knižničné nástroje.
- Knižnice premenných sú len na čítanie z notebookov. Zmeny robte cez Fabric UI alebo API.
- Každá knižnica podporuje až 1 000 premenných a 1 000 hodnotových množín, s maximálne 10 000 buniek a limitom veľkosti 1 MB.
- Názvy premenných a knižníc sú citlivé na veľkosť písmen. Pri odkazovaní na premenné používajte presné zhody názvov.
Prepitné
Použite deployment pipeline na automatickú aktiváciu príslušnej sady hodnôt pre každú fázu (vývoj, test, produkcia). Tým sa eliminuje potreba manuálne prepínať hodnotové sady alebo upravovať kód pri propagácii notebookov naprieč prostrediami.