Megosztás a következőn keresztül:


Microsoft Spark Utilities (MSSparkUtils) for Fabric

A Microsoft Spark Utilities (MSSparkUtils) egy beépített csomag, amely megkönnyíti a gyakori feladatok elvégzését. Az MSSparkUtils használatával fájlrendszerekkel dolgozhat, környezeti változókat kérhet le, jegyzetfüzeteket láncba rendezhet és titkos kódokkal dolgozhat. Az MSSparkUtils csomag a PySpark (Python) Scala, SparkR-jegyzetfüzetek és Fabric-folyamatokban érhető el.

Feljegyzés

  • Az MsSparkUtils hivatalosan notebookUtils névre lett átnevezve. A meglévő kód visszafelé kompatibilis marad, és nem okoz kompatibilitástörő változásokat. Határozottan javasoljuk, hogy frissítsen a notebookutilsra a folyamatos támogatás és az új funkciókhoz való hozzáférés biztosítása érdekében. Az mssparkutils névtér a jövőben megszűnik.
  • A NotebookUtils a Spark 3.4(Futtatókörnyezet v1.2) és újabb verziók használatára lett tervezve. Minden új funkció és frissítés kizárólag a notebookutils névtér előrehaladtával támogatott.

Fájlrendszer-segédprogramok

Az mssparkutils.fs segédprogramokat biztosít a különböző fájlrendszerek, például az Azure Data Lake Storage (ADLS) Gen2 és az Azure Blob Storage használatához. Győződjön meg arról, hogy megfelelően konfigurálja az Azure Data Lake Storage Gen2 és az Azure Blob Storage elérését.

Futtassa az alábbi parancsokat az elérhető módszerek áttekintéséhez:

from notebookutils import mssparkutils
mssparkutils.fs.help()

Hozam

mssparkutils.fs provides utilities for working with various FileSystems.

Below is overview about the available methods:

cp(from: String, to: String, recurse: Boolean = false): Boolean -> Copies a file or directory, possibly across FileSystems
mv(from: String, to: String, recurse: Boolean = false): Boolean -> Moves a file or directory, possibly across FileSystems
ls(dir: String): Array -> Lists the contents of a directory
mkdirs(dir: String): Boolean -> Creates the given directory if it does not exist, also creating any necessary parent directories
put(file: String, contents: String, overwrite: Boolean = false): Boolean -> Writes the given String out to a file, encoded in UTF-8
head(file: String, maxBytes: int = 1024 * 100): String -> Returns up to the first 'maxBytes' bytes of the given file as a String encoded in UTF-8
append(file: String, content: String, createFileIfNotExists: Boolean): Boolean -> Append the content to a file
rm(dir: String, recurse: Boolean = false): Boolean -> Removes a file or directory
exists(file: String): Boolean -> Check if a file or directory exists
mount(source: String, mountPoint: String, extraConfigs: Map[String, Any]): Boolean -> Mounts the given remote storage directory at the given mount point
unmount(mountPoint: String): Boolean -> Deletes a mount point
mounts(): Array[MountPointInfo] -> Show information about what is mounted
getMountPath(mountPoint: String, scope: String = ""): String -> Gets the local path of the mount point

Use mssparkutils.fs.help("methodName") for more info about a method.

Az MSSparkUtils ugyanúgy működik a fájlrendszerrel, mint a Spark API-k. Vegyük például az mssparkuitls.fs.mkdirs() és a Fabric lakehouse használatát:

Használat Relatív elérési út a HDFS-gyökérből Az ABFS fájlrendszer abszolút elérési útja A helyi fájlrendszer abszolút elérési útja az illesztőprogram-csomópontban
Nondefault lakehouse Nem támogatott mssparkutils.fs.mkdirs("abfss://< container_name>@<storage_account_name.dfs.core.windows.net/<> new_dir>") mssparkutils.fs.mkdirs("fájl:/<new_dir>")
Alapértelmezett lakehouse Könyvtár a "Fájlok" vagy a "Tables" alatt: mssparkutils.fs.mkdirs("Files/<new_dir>") mssparkutils.fs.mkdirs("abfss://< container_name>@<storage_account_name.dfs.core.windows.net/<> new_dir>") mssparkutils.fs.mkdirs("fájl:/<new_dir>")

Fájlok listázása

A címtár tartalmának listázásához használja a mssparkutils.fs.ls('Saját könyvtár elérési útja') lehetőséget. Példa:

mssparkutils.fs.ls("Files/tmp") # works with the default lakehouse files using relative path 
mssparkutils.fs.ls("abfss://<container_name>@<storage_account_name>.dfs.core.windows.net/<path>")  # based on ABFS file system 
mssparkutils.fs.ls("file:/tmp")  # based on local file system of driver node 

Fájltulajdonságok megtekintése

Ez a metódus fájltulajdonságokat ad vissza, beleértve a fájlnevet, a fájl elérési útját, a fájlméretet, valamint azt, hogy könyvtárról és fájlról van-e szó.

files = mssparkutils.fs.ls('Your directory path')
for file in files:
    print(file.name, file.isDir, file.isFile, file.path, file.size)

Új címtár létrehozása

Ez a metódus létrehozza a megadott könyvtárat, ha nem létezik, és létrehozza a szükséges szülőkönyvtárakat.

mssparkutils.fs.mkdirs('new directory name')  
mssparkutils.fs. mkdirs("Files/<new_dir>")  # works with the default lakehouse files using relative path 
mssparkutils.fs.ls("abfss://<container_name>@<storage_account_name>.dfs.core.windows.net/<new_dir>")  # based on ABFS file system 
mssparkutils.fs.ls("file:/<new_dir>")  # based on local file system of driver node 

Fájl másolása

Ez a módszer egy fájlt vagy könyvtárat másol, és támogatja a fájlrendszerek közötti másolási tevékenységet.

mssparkutils.fs.cp('source file or directory', 'destination file or directory', True)# Set the third parameter as True to copy all files and directories recursively

Performant copy file

Ezzel a módszerrel gyorsabban másolhat vagy áthelyezhet fájlokat, különösen nagy mennyiségű adatot.

mssparkutils.fs.fastcp('source file or directory', 'destination file or directory', True)# Set the third parameter as True to copy all files and directories recursively

Fájltartalom előnézete

Ez a metódus legfeljebb az adott fájl első "maxBytes" bájtját adja vissza UTF-8-ban kódolt sztringként.

mssparkutils.fs.head('file path', maxBytes to read)

Fájl áthelyezése

Ez a módszer áthelyez egy fájlt vagy könyvtárat, és támogatja a fájlrendszerek közötti áthelyezést.

mssparkutils.fs.mv('source file or directory', 'destination directory', True) # Set the last parameter as True to firstly create the parent directory if it does not exist
mssparkutils.fs.mv('source file or directory', 'destination directory', True, True) # Set the third parameter to True to firstly create the parent directory if it does not exist. Set the last parameter to True to overwrite the updates.

Fájl írása

Ez a metódus egy UTF-8 kóddal kódolt fájlba írja ki az adott sztringet.

mssparkutils.fs.put("file path", "content to write", True) # Set the last parameter as True to overwrite the file if it existed already

Tartalom hozzáfűzése fájlhoz

Ez a metódus hozzáfűzi az adott sztringet egy UTF-8 kódolt fájlhoz.

mssparkutils.fs.append("file path", "content to append", True) # Set the last parameter as True to create the file if it does not exist

Fájl vagy könyvtár törlése

Ez a metódus eltávolít egy fájlt vagy könyvtárat.

mssparkutils.fs.rm('file path', True) # Set the last parameter as True to remove all files and directories recursively

Könyvtár csatlakoztatása/leválasztása

További információ a részletes használatról a Fájl csatlakoztatása és leválasztása területen.

Jegyzetfüzet-segédprogramok

Az MSSparkUtils notebook segédprogrammal futtathat egy jegyzetfüzetet, vagy kiléphet egy értékekkel rendelkező jegyzetfüzetből. Futtassa a következő parancsot az elérhető módszerek áttekintéséhez:

mssparkutils.notebook.help()

Hozam:


exit(value: String): void -> This method lets you exit a notebook with a value.
run(path: String, timeoutSeconds: int, arguments: Map): String -> This method runs a notebook and returns its exit value.

Feljegyzés

A jegyzetfüzet-segédprogramok nem alkalmazhatók az Apache Spark-feladatdefiníciókra (SJD).

Jegyzetfüzet hivatkozása

Ez a metódus egy jegyzetfüzetre hivatkozik, és visszaadja a kilépési értékét. A beágyazott függvényhívásokat interaktívan vagy folyamatként is futtathatja egy jegyzetfüzetben. A hivatkozott jegyzetfüzet a függvényt meghívó jegyzetfüzet Spark-készletében fut.

mssparkutils.notebook.run("notebook name", <timeoutSeconds>, <parameterMap>, <workspaceId>)

Példa:

mssparkutils.notebook.run("Sample1", 90, {"input": 20 })

A hálójegyzetfüzet a munkaterület azonosítójának megadásával több munkaterületen is támogatja a jegyzetfüzetek hivatkozását.

mssparkutils.notebook.run("Sample1", 90, {"input": 20 }, "fe0a6e2a-a909-4aa3-a698-0a651de790aa")

A cellakimenetben megnyithatja a referenciafuttatás pillanatkép-hivatkozását. A pillanatkép rögzíti a kódfuttatási eredményeket, és lehetővé teszi a referenciafuttatások egyszerű hibakeresését.

Képernyőkép a referenciafuttatás eredményéről.

Képernyőkép egy pillanatkép-példáról.

Feljegyzés

  • A munkaterületek közötti referenciajegyzetfüzetet az 1.2-es és újabb futtatókörnyezet támogatja.
  • Ha a Jegyzetfüzet-erőforrás csoportban lévő fájlokat használja, a mssparkutils.nbResPath hivatkozott jegyzetfüzetben győződjön meg arról, hogy az az interaktív futtatáshoz használt mappára mutat.

Hivatkozás több jegyzetfüzet párhuzamos futtatására

Fontos

Ez a funkció előzetes verzióban érhető el.

A módszer mssparkutils.notebook.runMultiple() lehetővé teszi több jegyzetfüzet párhuzamos vagy előre definiált topológiai szerkezettel történő futtatását. Az API egy Spark-munkameneten belül többszálas implementációs mechanizmust használ, ami azt jelenti, hogy a számítási erőforrásokat a referenciajegyzetfüzet futtatja.

A következőkkel mssparkutils.notebook.runMultiple():

  • Egyszerre több jegyzetfüzet végrehajtása anélkül, hogy mindegyik befejeződik.

  • Egyszerű JSON-formátum használatával adja meg a jegyzetfüzetek függőségeit és végrehajtási sorrendjét.

  • Optimalizálja a Spark számítási erőforrások használatát, és csökkentse a Fabric-projektek költségeit.

  • A kimenetben megtekintheti az egyes jegyzetfüzet-futtatási rekordok pillanatképeit, és kényelmesen hibakeresést/monitorozást végezhet a jegyzetfüzet-feladatokban.

  • Szerezze be az egyes vezetői tevékenységek kilépési értékét, és használja őket az alsóbb rétegbeli feladatokban.

Az mssparkutils.notebook.help("runMultiple") futtatásával is megkeresheti a példát és a részletes használatot.

Íme egy egyszerű példa a jegyzetfüzetek listájának párhuzamos futtatására ezzel a módszerrel:


mssparkutils.notebook.runMultiple(["NotebookSimple", "NotebookSimple2"])

A gyökérjegyzetfüzet végrehajtási eredménye a következő:

Képernyőkép a jegyzetfüzetek listájáról.

Az alábbi példa a topológiai struktúrával rendelkező jegyzetfüzetek futtatására mutat mssparkutils.notebook.runMultiple()be. Ezzel a módszerrel könnyedén vezényelheti a jegyzetfüzeteket egy kódélményen keresztül.

# run multiple notebooks with parameters
DAG = {
    "activities": [
        {
            "name": "NotebookSimple", # activity name, must be unique
            "path": "NotebookSimple", # notebook path
            "timeoutPerCellInSeconds": 90, # max timeout for each cell, default to 90 seconds
            "args": {"p1": "changed value", "p2": 100}, # notebook parameters
        },
        {
            "name": "NotebookSimple2",
            "path": "NotebookSimple2",
            "timeoutPerCellInSeconds": 120,
            "args": {"p1": "changed value 2", "p2": 200}
        },
        {
            "name": "NotebookSimple2.2",
            "path": "NotebookSimple2",
            "timeoutPerCellInSeconds": 120,
            "args": {"p1": "changed value 3", "p2": 300},
            "retry": 1,
            "retryIntervalInSeconds": 10,
            "dependencies": ["NotebookSimple"] # list of activity names that this activity depends on
        }
    ],
    "timeoutInSeconds": 43200, # max timeout for the entire DAG, default to 12 hours
    "concurrency": 50 # max number of notebooks to run concurrently, default to 50
}
mssparkutils.notebook.runMultiple(DAG, {"displayDAGViaGraphviz": False})

A gyökérjegyzetfüzet végrehajtási eredménye a következő:

Képernyőkép a paraméterekkel rendelkező jegyzetfüzetek listájáról.

Feljegyzés

  • A több jegyzetfüzet-futtatás párhuzamossági foka a Spark-munkamenet teljes rendelkezésre álló számítási erőforrására korlátozódik.
  • A jegyzetfüzet-tevékenységek vagy az egyidejű jegyzetfüzetek felső korlátja 50. A korlát túllépése stabilitási és teljesítménybeli problémákhoz vezethet a magas számítási erőforrás-használat miatt. Ha problémák merülnek fel, érdemes lehet a jegyzetfüzeteket több runMultiple hívásra különválasztani, vagy csökkenteni az egyidejűséget a DAG paraméter egyidejűségi mezőjének módosításával.
  • A teljes DAG alapértelmezett időtúllépése 12 óra, a gyermekjegyzetfüzetben lévő cellák alapértelmezett időtúllépése pedig 90 másodperc. Az időtúllépést a DAG paraméter timeoutInSeconds és timeoutPerCellInSeconds mezőinek beállításával módosíthatja.

Jegyzetfüzet kilépése

Ez a metódus egy értékkel rendelkező jegyzetfüzetből kilép. A beágyazott függvényhívásokat interaktívan vagy folyamatként is futtathatja egy jegyzetfüzetben.

  • Amikor interaktívan meghív egy kilépési() függvényt egy jegyzetfüzetből, a Háló jegyzetfüzet kivételt jelez, kihagyja a további cellák futtatását, és életben tartja a Spark-munkamenetet.

  • Amikor egy olyan folyamat jegyzetfüzetét vezényeli, amely egy kilépési() függvényt hív meg, a jegyzetfüzet-tevékenység egy kilépési értékkel tér vissza, befejezi a folyamatfuttatást, és leállítja a Spark-munkamenetet.

  • Amikor meghív egy exit() függvényt egy hivatkozott jegyzetfüzetben, a Fabric Spark leállítja a hivatkozott jegyzetfüzet további végrehajtását, és folytatja a run() függvényt meghívó fő jegyzetfüzet következő celláinak futtatását. Például: A Jegyzetfüzet1 három cellával rendelkezik, és egy exit() függvényt hív meg a második cellában. A Jegyzetfüzet2 a harmadik cellában öt cellával és hívással (notebook1) rendelkezik. A Notebook2 futtatásakor a Notebook1 a második cellánál áll meg, amikor eléri a kilépési() függvényt. A Notebook2 továbbra is futtatja negyedik és ötödik celláját.

mssparkutils.notebook.exit("value string")

Példa:

1 . mintajegyzetfüzet a következő két cellával:

  • Az 1. cella egy bemeneti paramétert határoz meg, amelynek alapértelmezett értéke 10.

  • A 2. cella kilépési értékkel lép ki a jegyzetfüzetből.

Képernyőkép a kilépési függvény mintajegyzetfüzetéről.

A Minta1 egy másik, alapértelmezett értékekkel rendelkező jegyzetfüzetben is futtatható:

exitVal = mssparkutils.notebook.run("Sample1")
print (exitVal)

Hozam:

Notebook executed successfully with exit value 10

A Minta1 egy másik jegyzetfüzetben is futtatható, és a bemeneti érték 20 lehet:

exitVal = mssparkutils.notebook.run("Sample1", 90, {"input": 20 })
print (exitVal)

Hozam:

Notebook executed successfully with exit value 20

Hitelesítő adatok segédprogramok

Az MSSparkUtils hitelesítő adatok segédprogramjaival hozzáférési jogkivonatokat szerezhet be, és titkos kulcsokat kezelhet egy Azure Key Vaultban.

Futtassa a következő parancsot az elérhető módszerek áttekintéséhez:

mssparkutils.credentials.help()

Hozam:

getToken(audience, name): returns AAD token for a given audience, name (optional)
getSecret(keyvault_endpoint, secret_name): returns secret for a given Key Vault and secret name

Jogkivonat lekérése

A getToken egy Microsoft Entra-jogkivonatot ad vissza egy adott célközönséghez és névhez (nem kötelező). Az alábbi listában a jelenleg elérhető célközönségkulcsok láthatók:

  • Tároló célközönségének erőforrása: "storage"
  • Power BI-erőforrás: "pbi"
  • Azure Key Vault-erőforrás: "keyvault"
  • Synapse RTA KQL DB-erőforrás: "kusto"

Futtassa a következő parancsot a jogkivonat lekéréséhez:

mssparkutils.credentials.getToken('audience Key')

Titkos kulcs lekérése felhasználói hitelesítő adatokkal

A getSecret egy Azure Key Vault-titkos kulcsot ad vissza egy adott Azure Key Vault-végponthoz és titkos névhez a felhasználói hitelesítő adatok használatával.

mssparkutils.credentials.getSecret('https://<name>.vault.azure.net/', 'secret name')

Fájl csatlakoztatása és leválasztása

A Fabric a Következő csatlakoztatási forgatókönyveket támogatja a Microsoft Spark Utilities csomagban. A csatlakoztatás, a leválasztás, a getMountPath()és a mounts() API-k segítségével távoli tárolást (ADLS Gen2) csatolhat az összes munkacsomóponthoz (illesztőprogram-csomópont és feldolgozó csomópont). A tárolási csatlakoztatási pont létrehozása után a helyi fájl API-val úgy érheti el az adatokat, mintha a helyi fájlrendszerben tárolva lenne.

ADLS Gen2-fiók csatlakoztatása

Az alábbi példa az Azure Data Lake Storage Gen2 csatlakoztatását mutatja be. A Blob Storage csatlakoztatása hasonlóan működik.

Ez a példa feltételezi, hogy rendelkezik egy StoreGen2 nevű Data Lake Storage Gen2-fiókkal, és a fióknak van egy mycontainer nevű tárolója, amelyet csatlakoztatni szeretne a jegyzetfüzet Spark-munkamenetéhez/teszteléséhez.

Képernyőkép a csatlakoztatni kívánt tároló kiválasztásáról.

A mycontainer nevű tároló csatlakoztatásához az mssparkutilsnak először ellenőriznie kell, hogy rendelkezik-e engedéllyel a tároló eléréséhez. A Fabric jelenleg két hitelesítési módszert támogat az eseményindító csatlakoztatási műveletéhez: accountKey és sastoken.

Csatlakoztatás megosztott hozzáférésű jogosultságkód jogkivonaton vagy fiókkulcson keresztül

Az MSSparkUtils támogatja a fiókkulcs vagy a közös hozzáférésű jogosultságkód (SAS) jogkivonat paraméterként történő átadását a cél csatlakoztatásához.

Biztonsági okokból javasoljuk, hogy a fiókkulcsokat vagy SAS-jogkivonatokat az Azure Key Vaultban tárolja (ahogy az alábbi képernyőképen látható). Ezután lekérheti őket az mssparkutils.credentials.getSecret API használatával. Az Azure Key Vaultról további információt az Azure Key Vault által felügyelt tárfiókkulcsokról szóló cikkben talál.

Képernyőkép arról, hogy hol vannak tárolva a titkos kulcsok az Azure Key Vaultban.

Mintakód az accountKey metódushoz:

from notebookutils import mssparkutils  
# get access token for keyvault resource
# you can also use full audience here like https://vault.azure.net
accountKey = mssparkutils.credentials.getSecret("<vaultURI>", "<secretName>")
mssparkutils.fs.mount(  
    "abfss://mycontainer@<accountname>.dfs.core.windows.net",  
    "/test",  
    {"accountKey":accountKey}
)

Mintakód a sastokenhez:

from notebookutils import mssparkutils  
# get access token for keyvault resource
# you can also use full audience here like https://vault.azure.net
sasToken = mssparkutils.credentials.getSecret("<vaultURI>", "<secretName>")
mssparkutils.fs.mount(  
    "abfss://mycontainer@<accountname>.dfs.core.windows.net",  
    "/test",  
    {"sasToken":sasToken}
)

Feljegyzés

Előfordulhat, hogy importálnia mssparkutils kell, ha nem érhető el:

from notebookutils import mssparkutils

Csatlakoztatási paraméterek:

  • fileCacheTimeout: A blobok alapértelmezés szerint 120 másodpercig lesznek gyorsítótárazva a helyi ideiglenes mappában. Ez idő alatt a blobfuse nem ellenőrzi, hogy a fájl naprakész-e vagy sem. A paraméter beállítható úgy, hogy módosítsa az alapértelmezett időtúllépési időt. Ha egyszerre több ügyfél is módosítja a fájlokat, a helyi és a távoli fájlok közötti ellentmondások elkerülése érdekében javasoljuk, hogy lerövidítse a gyorsítótár idejét, vagy akár 0-ra módosítsa, és mindig a legújabb fájlokat kapja a kiszolgálótól.
  • időtúllépés: A csatlakoztatási művelet időkorlátja alapértelmezés szerint 120 másodperc. A paraméter beállítható úgy, hogy módosítsa az alapértelmezett időtúllépési időt. Ha túl sok végrehajtó van, vagy ha a csatlakoztatás túllépi az időkorlátot, javasoljuk az érték növelését.

A következő paramétereket használhatja:

mssparkutils.fs.mount(
   "abfss://mycontainer@<accountname>.dfs.core.windows.net",
   "/test",
   {"fileCacheTimeout": 120, "timeout": 120}
)

Feljegyzés

Biztonsági okokból javasoljuk, hogy ne tárolja a hitelesítő adatokat kódban. A hitelesítő adatok további védelme érdekében újra meg fogjuk adni a titkos kódját a jegyzetfüzet kimenetében. További információ: Titkos kód újraválasztása.

Tóház csatlakoztatása

Mintakód egy tóház csatlakoztatásához /teszteléshez:

from notebookutils import mssparkutils 
mssparkutils.fs.mount( 
 "abfss://<workspace_id>@onelake.dfs.fabric.microsoft.com/<lakehouse_id>", 
 "/test"
)

Feljegyzés

A regionális végpont csatlakoztatása nem támogatott. A Háló csak a globális végpont csatlakoztatását támogatja. onelake.dfs.fabric.microsoft.com

A csatlakoztatási pont alatti fájlok elérése az mssparktuils fs API használatával

A csatlakoztatási művelet fő célja, hogy az ügyfelek hozzáférhessenek egy távoli tárfiókban tárolt adatokhoz egy helyi fájlrendszer API-val. Az adatokat az mssparkutils fs API-val is elérheti egy csatlakoztatott elérési út paraméterként. Ez az elérési út formátuma egy kicsit más.

Tegyük fel, hogy csatlakoztatta a Data Lake Storage Gen2 tárolómontainert a csatlakoztatási API használatával történő /teszteléshez. Amikor egy helyi fájlrendszer API-val éri el az adatokat, az elérési út formátuma a következő:

/synfs/notebook/{sessionId}/test/{filename}

Ha az mssparkutils fs API-val szeretné elérni az adatokat, a getMountPath() használatát javasoljuk a pontos elérési út eléréséhez:

path = mssparkutils.fs.getMountPath("/test")
  • Címtárak listázása:

    mssparkutils.fs.ls(f"file://{mssparkutils.fs.getMountPath('/test')}")
    
  • Fájltartalom olvasása:

    mssparkutils.fs.head(f"file://{mssparkutils.fs.getMountPath('/test')}/myFile.txt")
    
  • Címtár létrehozása:

    mssparkutils.fs.mkdirs(f"file://{mssparkutils.fs.getMountPath('/test')}/newdir")
    

A csatlakoztatási pont alatti fájlok elérése helyi elérési úton

A standard fájlrendszerrel egyszerűen olvashatja és írhatja a fájlokat a csatlakoztatási pontban. Íme egy Python-példa:

#File read
with open(mssparkutils.fs.getMountPath('/test2') + "/myFile.txt", "r") as f:
    print(f.read())
#File write
with open(mssparkutils.fs.getMountPath('/test2') + "/myFile.txt", "w") as f:
    print(f.write("dummy data"))

Meglévő csatlakoztatási pontok ellenőrzése

Az mssparkutils.fs.mounts() API használatával ellenőrizheti az összes meglévő csatlakoztatási pontot:

mssparkutils.fs.mounts()

A csatlakoztatási pont leválasztása

A csatlakoztatási pont leválasztásához használja az alábbi kódot (/tesztelje ebben a példában):

mssparkutils.fs.unmount("/test")

Ismert korlátozások

  • Az aktuális csatlakoztatás feladatszintű konfiguráció; Javasoljuk, hogy a csatlakoztatási API használatával ellenőrizze, hogy létezik-e csatlakoztatási pont, vagy nem érhető el.

  • A leválasztó mechanizmus nem automatikus. Ha az alkalmazás futtatása befejeződött, a csatlakoztatási pont leválasztásához és a lemezterület felszabadításához explicit módon meg kell hívnia egy leválasztott API-t a kódban. Ellenkező esetben a csatlakoztatási pont az alkalmazás futtatása után is megmarad a csomópontban.

  • Az ADLS Gen1-tárfiók csatlakoztatása nem támogatott.

Lakehouse-segédprogramok

mssparkutils.lakehouse kifejezetten a Lakehouse-összetevők kezelésére szabott segédprogramokat biztosít. Ezek a segédprogramok lehetővé teszik a felhasználók számára a Lakehouse-összetevők könnyű létrehozását, lekérését, frissítését és törlését.

Feljegyzés

A Lakehouse API-k csak az 1.2-es futtatókörnyezetben támogatottak.

A metódusok áttekintése

Az alábbiakban áttekintjük a rendelkezésre álló módszereket mssparkutils.lakehouse:

# Create a new Lakehouse artifact
create(name: String, description: String = "", workspaceId: String = ""): Artifact

# Retrieve a Lakehouse artifact
get(name: String, workspaceId: String = ""): Artifact

# Update an existing Lakehouse artifact
update(name: String, newName: String, description: String = "", workspaceId: String = ""): Artifact

# Delete a Lakehouse artifact
delete(name: String, workspaceId: String = ""): Boolean

# List all Lakehouse artifacts
list(workspaceId: String = ""): Array[Artifact]

Felhasználási példák

A módszerek hatékony használatához vegye figyelembe a következő használati példákat:

Lakehouse-összetevő létrehozása

artifact = mssparkutils.lakehouse.create("artifact_name", "Description of the artifact", "optional_workspace_id")

Lakehouse-összetevő lekérése

artifact = mssparkutils.lakehouse.get("artifact_name", "optional_workspace_id")

Lakehouse-összetevő frissítése

updated_artifact = mssparkutils.lakehouse.update("old_name", "new_name", "Updated description", "optional_workspace_id")

Lakehouse-összetevő törlése

is_deleted = mssparkutils.lakehouse.delete("artifact_name", "optional_workspace_id")

Lakehouse-összetevők listázása

artifacts_list = mssparkutils.lakehouse.list("optional_workspace_id")

További információk

Az egyes metódusokkal és paramétereikkel kapcsolatos részletesebb információkért használja a függvényt mssparkutils.lakehouse.help("methodName") .

Az MSSparkUtils Lakehouse-segédprogramjaival a Lakehouse-összetevők kezelése hatékonyabbá válik, és integrálható a Fabric-folyamatokba, ezáltal növelve az általános adatkezelési élményt.

Nyugodtan felfedezheti ezeket a segédprogramokat, és beépítheti őket a Fabric-munkafolyamatokba a Lakehouse-összetevők zökkenőmentes kezelése érdekében.

Futtatókörnyezeti segédprogramok

A munkamenet környezeti adatainak megjelenítése

Ezzel mssparkutils.runtime.context lekérheti az aktuális élő munkamenet környezeti adatait, beleértve a jegyzetfüzet nevét, az alapértelmezett lakehouse-t, a munkaterület adatait, a folyamatfuttatást stb.

mssparkutils.runtime.context

Ismert probléma

Ha az 1.2-es verzió feletti futtatókörnyezetet használja, és futtatja mssparkutils.help(), a felsorolt fabricClient, warehouse és munkaterület API-k egyelőre nem támogatottak, a továbbiakban is elérhetők lesznek.