Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A változókódtárak segítenek elkerülni a jegyzetfüzetkódban lévő keménykódolást. A kód szerkesztése helyett frissítenie kell a kódtár értékeit, és futásidőben kell lekérnie őket. Ez a minta segít a jegyzetfüzetek csapatok és projektek közötti újrafelhasználásában a konfiguráció központosításával.
Az alábbi táblázat az elérhető változótár-metódusokat sorolja fel:
| Módszer | Signature | Leírás |
|---|---|---|
getLibrary |
getLibrary(variableLibraryName: String): VariableLibrary |
Változótár-objektum lekérése. A változók tulajdonságként való elérése a visszaadott objektumon, például library.variableName. A dinamikus hozzáféréshez használhatja getVariable('name') vagy szögletes zárójelek szintaxisát library['name'] . |
get |
get(variableReference: String): Any |
Egyetlen változóértéket kér le a formátum $(/**/libraryName/variableName)referenciaútvonala alapján. Az /**/ előtag megadása kötelező. Az érték automatikusan be lesz adva a változódefiníció alapján. |
Változók meghatározása
Definiálja a változókat a változótárban a notebookutils.variableLibrary használata előtt. A Fabric felhasználói felületén keresztül változó könyvtárakat hozhat létre és kezelhet.
Változótár lekérése
A getLibrary() használatával kérje le a teljes könyvtárat objektumként, majd a változókat tulajdonságokként érje el. Ha dinamikus hozzáférésre van szüksége, használjon getVariable('name') vagy szögletes zárójel szintaxist library['name'] .
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"]
Az alábbi példa bemutatja, hogyan hozhat létre dinamikusan fájlelérési utat változó tárértékek használatával:
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)
Egyetlen változó elérése hivatkozás alapján
Egyetlen változó értékének lekéréséhez használja a get() referenciamintát $(/**/libraryName/variableName) tartalmazó metódust. Az érték automatikusan be lesz adva a változódefiníció alapján.
Fontos
Az /**/ előtagot a referenciamintában kell megadni. A teljes mintának a következőnek kell lennie: $(/**/libraryName/variableName), ahol libraryName a változókönyvtár elemének pontos neve, és variableName a kódtárban definiált változó. A nevek megkülönböztetik a kis- és nagybetűket.
notebookutils.variableLibrary.get("$(/**/samplevl/test_int)")
notebookutils.variableLibrary.get("$(/**/samplevl/test_str)")
notebookutils.variableLibrary.get("$(/**/samplevl/test_bool)")
Támogatott változótípusok
A változótárak a következő adattípusokat támogatják. A rendszer automatikusan beírja az értékeket a lekéréskor – a legtöbb esetben nem kell explicit módon megadnia őket.
| Típus | Leírás | Example |
|---|---|---|
| String | Szöveges értékek. | "my_connection_string" |
| Integer | Egész számok. | 42 |
| boolean | Logikai igaz/hamis. | true |
| Szám | Decimális számok. | 3.14 |
| DateTime | Dátum- és időértékek ISO 8601 formátumban. | "2025-01-15T08:30:00Z" |
| Guid | Globálisan egyedi azonosítók. | "123e4567-e89b-12d3-a456-426614174000" |
| Elemhivatkozás | Támogatott Fabric elemekre mutató hivatkozások. | "workspace/item" |
Környezetspecifikus konfiguráció
A változókódtárak támogatják az értékhalmazokat, amelyek lehetővé teszik, hogy azonos változókhoz – például fejlesztéshez, teszteléshez és teszteléshez – alternatív értékkészleteket definiáljon. Minden munkaterületen egyszerre egy aktív érték van beállítva, és az üzembe helyezési folyamatok automatikusan aktiválhatják a megfelelő értékhalmazt fázisonként.
Ez a minta szükségtelenné teszi a kódmódosításokat, amikor notebookokat környezetek között mozgatunk.
# 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")
Megfontolások
Tartsa szem előtt az alábbi szempontokat:
- Az
notebookutils.variableLibraryAPI csak ugyanazon a munkaterületen belül támogatja a változó kódtárak elérését. A munkaterületek közötti hozzáférés nem támogatott. - Referenciafuttatás során nem lehet változók könyvtárát lekérni gyermekjegyzetfüzetek munkaterületein keresztül.
- A jegyzetfüzet kódja a változótár aktív értékhalmazában definiált változókra hivatkozik. Különböző értékek használatához aktiváljon egy másik értékkészletet a munkaterületen, vagy használja az üzembehelyezési folyamatokat az egyes környezetek értékkészleteinek kezeléséhez.
- A szolgáltatásnév (SPN) jelenleg nem támogatott a változótár-segédprogramok esetében.
- A változó könyvtárak írásvédetten érhetők el a jegyzetfüzetekből. Módosítások végrehajtása a Fabric UI-n vagy API-kkal.
- Minden kódtár legfeljebb 1000 változót és 1000 értékkészletet támogat, legfeljebb 10 000 cellával és 1 MB méretkorláttal.
- A változó- és könyvtárnevek megkülönböztetik a kis- és nagybetűket. A változókra való hivatkozáskor pontos névegyezést használjon.
Jótanács
Üzembehelyezési folyamatokkal automatikusan aktiválhatja az egyes fázisokhoz (fejlesztés, tesztelés, prod) tartozó megfelelő értéket. Ez szükségtelenné teszi az értékkészletek manuális váltását vagy a kód módosítását a jegyzetfüzetek környezetek közötti előléptetése során.