Jaa


NotebookUtils variable library utilities for Fabric

Muuttujakirjastot auttavat välttämään arvojen kovakoodauksen muistikirjan koodissa. Koodin muokkaamisen sijaan päivität arvot kirjastossa ja haet ne ajonaikaisesti. Tämä malli auttaa sinua käyttämään muistikirjoja uudelleen tiimien ja projektien välillä keskittämällä konfigurointia.

Seuraavassa taulukossa on lueteltu käytettävissä olevat muuttujakirjastomenetelmät:

Menetelmä Allekirjoitus Description
getLibrary getLibrary(variableLibraryName: String): VariableLibrary Hae muuttujakirjaston objektin. Käytä muuttujia ominaisuuksina palautetussa objektissa, kuten library.variableName. Voit käyttää getVariable('name') tai sulkea syntaksia library['name'] dynaamiseen pääsyyn.
get get(variableReference: String): Any Hae yhden muuttujan arvon sen viitepolun kautta muodossa $(/**/libraryName/variableName). Etuliite /**/ on pakollinen. Arvo kirjoitetaan automaattisesti muuttujan määritelmän perusteella.

Määrittele muuttujat

Määrittele muuttujat muuttujakirjastossasi ennen kuin käytät notebookutils.variableLibrary. Voit luoda ja hallita muuttujakirjastoja Fabric-käyttöliittymän kautta.

Näyttökuva muuttujakirjaston muuttujien luettelosta.

Hae muuttujakirjasto

Käytä getLibrary() hakemaan koko kirjasto objektina ja sitten käyttämään muuttujia ominaisuuksina. Käytä getVariable('name') tai merkitse syntaksia library['name'] , kun tarvitset dynaamista pääsyä.

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"]

Seuraava esimerkki näyttää, miten tiedostopolku rakennetaan dynaamisesti muuttuvien kirjastoarvojen avulla:

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)

Käytä yksittäistä muuttujaa viittauksella

Käytä get() metodia, jossa on referenssikuvio $(/**/libraryName/variableName) , hakeaksesi yhden muuttujan arvon. Arvo kirjoitetaan automaattisesti muuttujan määritelmän perusteella.

Tärkeää

Etuliite /**/ vaaditaan viitekuviossa. Koko kuvio on $(/**/libraryName/variableName), missä libraryName on tarkka muuttujan kirjaston nimi ja variableName on kyseisen kirjaston määritelty muuttuja. Nimet ovat kirjainkoon herkkiä.

notebookutils.variableLibrary.get("$(/**/samplevl/test_int)")
notebookutils.variableLibrary.get("$(/**/samplevl/test_str)")
notebookutils.variableLibrary.get("$(/**/samplevl/test_bool)")

Tuetut muuttujatyypit

Muuttujakirjastot tukevat seuraavia tietotyyppejä. Arvot kirjoitetaan automaattisesti, kun haet ne – useimmissa tapauksissa niitä ei tarvitse loitsia suoraan.

Tyyppi Description Esimerkki
Merkkijono Tekstiarvot. "my_connection_string"
Kokonaisluku Kokonaislukuja. 42
Boolean Boolen tosi/epätosi. true
Number Desimaaliluvut. 3.14
Päivämäärä ja aika Päivämäärä- ja aikaarvot ISO 8601 -muodossa. "2025-01-15T08:30:00Z"
GUID-tunnus Maailmanlaajuisesti yksilölliset tunnisteet. "123e4567-e89b-12d3-a456-426614174000"
Kohteen viite Viittauksia tuettuihin Fabric-tuotteisiin. "workspace/item"

Ympäristökohtainen konfiguraatio

Muuttujakirjastot tukevat arvojoukkoja, joiden avulla voi määritellä vaihtoehtoisia arvojoukkoja samoille muuttujille—esimerkiksi dev, test ja prod. Jokaisessa työtilassa on yksi aktiivinen arvo kerrallaan, ja käyttöönottoputket voivat automaattisesti aktivoida sopivan arvojoukon per vaihe.

Tämä malli poistaa tarpeen koodin muutoksille, kun ylennetään muistikirjoja eri ympäristöissä:

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

Huomioitavia seikkoja

Pidä nämä seikat mielessä:

  • API notebookutils.variableLibrary tukee pääsyä vain muuttuviin kirjastoihin samassa työtilassa. Työtilan välinen käyttöoikeus ei ole tuettu.
  • Et voi hakea muuttuvia kirjastoja työtilojen välillä lapsimuistikirjoissa viiteajojen aikana.
  • Muistikirjan koodi viittaa muuttujakirjaston aktiivisen arvojoukon muuttujiin. Eri arvojen käyttämiseksi aktivoi eri arvojoukko työtilassa tai käytä käyttöönottoputkia hallintaan kunkin ympäristön arvojoukkojen hallinnassa.
  • Service Principal (SPN) ei tällä hetkellä ole tuettu muuttuvien kirjastojen työkaluille.
  • Muuttujakirjastot ovat vain luku -lukua varten muistikirjoista. Tee muutoksia Fabricin käyttöliittymän tai API:n kautta.
  • Jokainen kirjasto tukee enintään 1 000 muuttujaa ja 1 000 arvojoukkoa, enintään 10 000 solua ja 1 MB kokorajoituksen.
  • Muuttujien ja kirjastojen nimet ovat kirjainkoon herkkiä. Käytä tarkkaa nimisovitusta, kun viittaat muuttujiin.

Vinkki

Käytä käyttöönottoputkia aktivoidaksesi automaattisesti sopivan arvojoukon jokaiselle vaiheelle (kehittäjä, testi, tuotanto). Tämä poistaa tarpeen vaihtaa arvojoukkoja manuaalisesti tai muokata koodia, kun notebookeja markkinoidaan eri ympäristöissä.