Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
Variabelbiblioteker hjelper deg å unngå hardkoding av verdier i notatbokkode. I stedet for å redigere koden, oppdaterer du verdiene i biblioteket og henter dem under kjøring. Dette mønsteret hjelper deg å gjenbruke notatbøker på tvers av team og prosjekter ved å sentralisere konfigurasjonen.
Følgende tabell viser tilgjengelige metoder for variabelbibliotek:
| Metode | Signatur | Beskrivelse |
|---|---|---|
getLibrary |
getLibrary(variableLibraryName: String): VariableLibrary |
Henter et variabelt bibliotekobjekt. Aksessvariabler som egenskaper på det returnerte objektet, slik som library.variableName. Du kan bruke getVariable('name') eller parentessyntaks library['name'] for dynamisk tilgang. |
get |
get(variableReference: String): Any |
Henter en enkelt variabelverdi via dens referansesti i formatet $(/**/libraryName/variableName). Prefikset /**/ er påkrevd. Verdien skrives automatisk basert på variabeldefinisjonen. |
Definer variabler
Definer variablene i variabelbiblioteket ditt før du bruker notebookutils.variableLibrary. Du kan opprette og administrere variabelbiblioteker gjennom Fabric UI.
Hent variabelbibliotek
Bruk getLibrary() for å hente hele biblioteket som et objekt, og deretter få tilgang til variabler som egenskaper. Bruk getVariable('name') eller klammesyntaks library['name'] når du trenger dynamisk tilgang.
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"]
Følgende eksempel viser hvordan man dynamisk konstruerer en filsti ved bruk av variabelbibliotekverdier:
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)
Få tilgang til én enkelt variabel etter referanse
Bruk get() metoden med referansemønsteret $(/**/libraryName/variableName) for å hente en enkelt variabelverdi. Verdien skrives automatisk basert på variabeldefinisjonen.
Viktig!
Prefikset /**/ kreves i referansemønsteret. Det fullstendige mønsteret må være $(/**/libraryName/variableName), hvor libraryName er det eksakte variabelnavnet på bibliotekets element og variableName er den definerte variabelen i det biblioteket. Navnene er små og små bokstaver.
notebookutils.variableLibrary.get("$(/**/samplevl/test_int)")
notebookutils.variableLibrary.get("$(/**/samplevl/test_str)")
notebookutils.variableLibrary.get("$(/**/samplevl/test_bool)")
Støttede variabeltyper
Variabelbiblioteker støtter følgende datatyper. Verdier skrives automatisk når du henter dem—du trenger i de fleste tilfeller ikke kaste dem eksplisitt.
| Type | Beskrivelse | Eksempel |
|---|---|---|
| Streng | Tekstverdier. | "my_connection_string" |
| Heltall | Heltall. | 42 |
| Boolsk | Boolsk sann/usant. | true |
| Number | Desimaltall. | 3.14 |
| DateTime | Dato- og tidsverdier i ISO 8601-format. | "2025-01-15T08:30:00Z" |
| GUID | Globalt unike identifikatorer. | "123e4567-e89b-12d3-a456-426614174000" |
| Gjenstandsreferanse | Referanser til støttede Fabric-produkter. | "workspace/item" |
Miljøspesifikk konfigurasjon
Variabelbiblioteker støtter verdisett, som lar deg definere alternative verdisett for de samme variablene—for eksempel dev, test og prod. Hvert arbeidsområde har ett aktivt verdisett om gangen, og distribusjonspipelines kan automatisk aktivere det riktige verdisettet per trinn.
Dette mønsteret eliminerer behovet for kodeendringer når du promoterer notatbøker på tvers av miljøer:
# 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")
Vurderinger
Husk disse hensynene:
- API-et
notebookutils.variableLibrarystøtter kun tilgang til variabelbiblioteker innenfor samme arbeidsområde. Kryss-arbeidsområde-tilgang støttes ikke. - Du kan ikke hente variabelbiblioteker på tvers av arbeidsområder i barnenotatbøker under en referansekjøring.
- Notatbokkoden refererer til variablene som er definert i det aktive verdisettet i variabelbiblioteket. For å bruke forskjellige verdier, aktiver et annet verdisett i arbeidsområdet eller bruk distribusjonspipelines for å administrere verdisett for hvert miljø.
- Service Principal (SPN) støttes for øyeblikket ikke for variable biblioteksverktøy.
- Variable biblioteker er skrivebeskyttet fra notatbøker. Gjør endringer gjennom Fabric UI eller API-er.
- Hvert bibliotek støtter opptil 1 000 variabler og 1 000 verdisett, med maksimalt 10 000 celler og en størrelsesgrense på 1 MB.
- Variabel- og biblioteksnavn er små og små og små bokstaver. Bruk nøyaktig navnematching når du refererer til variabler.
Tips
Bruk distribusjonspipelines for automatisk å aktivere det riktige verdisettet for hvert trinn (utvikling, test, produksjon). Dette eliminerer behovet for manuelt å bytte verdisett eller endre kode når man promoterer notatbøker på tvers av miljøer.