Jegyzetfüzetcellák futtatása és hibakeresése a Databricks Connecttel a Visual Studio Code Databricks-bővítményével
Egyszerre egy cellát vagy az összes cellát futtathat és hibakeresést végezhet, és az eredményeket a Visual Studio Code felhasználói felületén tekintheti meg a Visual Studio Code Databricks Connect-integráció Databricks bővítményével. Az összes kód helyileg fut, míg a DataFrame-műveleteket tartalmazó összes kód a távoli Azure Databricks-munkaterület fürtjén fut, és a futtatási válaszok vissza lesznek küldve a helyi hívónak. Az összes kód helyileg van hibakeresve, míg az összes Spark-kód továbbra is fut a fürtben a távoli Azure Databricks munkaterületen. Az alapvető Spark-motorkódot nem lehet közvetlenül az ügyfélből hibakeresésre használni.
Feljegyzés
Ez a funkció a Databricks Runtime 13.3-at vagy újabb verzióját használja.
A Visual Studio Code Databricks-bővítményében lévő jegyzetfüzetek Databricks Connect-integrációjának engedélyezéséhez telepítenie kell a Databricks Connectet a Visual Studio Code Databricks bővítményében. Lásd: Hibakeresési kód a Databricks Connect használatával a Visual Studio Code Databricks-bővítményéhez.
Python-jegyzetfüzetcellák futtatása
Az .py
kiterjesztésű fájlnevekkel rendelkező jegyzetfüzetek esetében, amikor megnyitja a jegyzetfüzetet a Visual Studio Code IDE-ben, minden cellában megjelenik a 'Cella futtatása', a 'Futtatás fent' és a 'Cella hibakeresése' gomb. A cella futtatásakor az eredmények az IDE egy külön lapján jelennek meg. Hibakeresés közben a hibakeresés alatt lévő cella a Folytatás, a Leállítás és a Lépésátlépés gombot jeleníti meg. A cellák hibakeresése során használhatja a Visual Studio Code hibakeresési funkcióit, például a változók állapotának figyelését, a hívásverem és a hibakeresési konzol megtekintését.
A kiterjesztéssel rendelkező fájlnevekkel rendelkező jegyzetfüzetek .ipynb
esetében, amikor a jegyzetfüzetet a Visual Studio Code IDE-ben nyitja meg, a jegyzetfüzet és annak cellái további funkciókat tartalmaznak. Lásd: Cellák futtatása és Kódcellák használata a Jegyzetfüzetszerkesztőben.
A fájlnevek .py
és .ipynb
kiterjesztéseihez használt jegyzetfüzetformátumokról további információt a Databricks-jegyzetfüzetek exportálása és importálása című témakörben talál.
Python Jupyter jegyzettömbcellák futtatása
Python Jupyter-jegyzetfüzet futtatása vagy hibakeresése (.ipynb
):
A projektben nyissa meg a futtatni vagy hibakeresésre használni kívánt Python Jupyter-jegyzetfüzetet. Győződjön meg arról, hogy a Python-fájl Jupyter notebook formátumban van, és rendelkezik a kiterjesztéssel
.ipynb
.Tipp.
Létrehozhat egy új Python Jupyter-jegyzetfüzetet a >Create: New Jupyter Notebook parancs futtatásával a parancskatalóguson belül.
Kattintson a Az összes cella futtatása lehetőségre az összes cella hibakeresés nélküli futtatásához, a Cella végrehajtása gombra egy egyedi cella hibakeresés nélküli futtatásához, vagy a Futtatás soronként opcióra egy adott cella soronkénti futtatásához korlátozott hibakereséssel, a változók értékei megjelennek a Jupyter panelen (Nézet > Nézet megnyitása > Jupyter).
Ha egy cellán belül teljes hibakeresést szeretne végezni, állítsa be a töréspontokat, majd kattintson Cella hibakeresésére a cella Futtatás gomb melletti menüben.
A beállítások bármelyikére való kattintás után előfordulhat, hogy a rendszer kérni fogja, hogy telepítsen hiányzó Python Jupyter-notebookcsomag-függőségeket. Kattintson ide a telepítéshez.
További információ: Jupyter Notebooks in VS Code.
Notebook globals
A következő globális jegyzetfüzetek is engedélyezve vannak:
spark
, amely adatabricks.connect.DatabricksSession
egy példányát képviseli, előre van konfigurálva aDatabricksSession
példányosításához az Azure Databricks hitelesítő adatainak a bővítményből való lekérése által. Ha aDatabricksSession
már példányosítva van egy jegyzetfüzetcella kódjában, akkor ezeket aDatabricksSession
beállításokat használja a rendszer. Lásd a Pythonhoz készült Databricks Connect kód példáit.udf
, amely előre be van konfigurálva mintpyspark.sql.functions.udf
alias, amely pedig a Python UDF-ek aliasa. Lásd: pyspark.sql.functions.udf.sql
, előre konfigurálva a(z)spark.sql
aliasaként.spark
, a korábban ismertetett módon, adatabricks.connect.DatabricksSession
előre konfigurált példányát jelöli. Lásd: Spark SQL.dbutils
, előre konfigurálva a Databricks Utilities példányaként, amelyet adatabricks-sdk
importál, és az Azure Databricks hitelesítési hitelesítő adatainak a bővítményből való lekérésével hozható létre. Lásd: Databricks segédprogramok használata.Feljegyzés
A Databricks Connecttel rendelkező jegyzetfüzetek csak a Databricks Utilities egy részhalmazát támogatják.
Az engedélyezéshez
dbutils.widgets
először telepítenie kell a Pythonhoz készült Databricks SDK-t a következő parancs futtatásával a helyi fejlesztőgép terminálján:pip install 'databricks-sdk[notebook]'
display
, előre konfigurálva a Jupyter beépítettIPython.display.display
aliasaként. Lásd: IPython.display.display.displayHTML
, amely előre be van konfigurálva adbruntime.display.displayHTML
aliasaként, amely adisplay.HTML
aliasa a(z)ipython
-ből. Lásd: IPython.display.html.
Jegyzetfüzet-varázslatok
A következő notebook varázslatok is be vannak kapcsolva:
%fs
, ami megegyezikdbutils.fs
hívásokkal. Lásd a Kevert nyelvek című témakört.Egy parancsot futtat a helyi gépen, a "
%%script
" cellavarázst használva. Ez nem futtatja a parancsot a távoli Azure Databricks-munkaterületen. Lásd a Kevert nyelvek című témakört.%md
és%md-sandbox
, amely a cellavarázslót%%markdown
futtatja . Lásd a Kevert nyelvek című témakört.%sql
, amely futspark.sql
. Lásd a Kevert nyelvek című témakört.%pip
, amely a helyi gépen futpip install
. Ez nem a távoli Azure Databricks-munkaterületen futpip install
. Lásd: Kódtárak kezelése %pip parancsokkal.%run
, amely egy másik jegyzetfüzetet futtat. Lásd jegyzetfüzetek vezénylése és a kód modularizálása a jegyzetfüzetekben.Feljegyzés
Az engedélyezéshez
%run
először telepítenie kell az nbformat könyvtárat a következő parancs futtatásával a helyi fejlesztőgép terminálján:pip install nbformat
Az engedélyezett további funkciók a következők:
- A Spark DataFrame-ek pandas DataFrame-ekre lesznek konvertálva, amelyek Jupyter-táblaformátumban jelennek meg.
Korlátozások
A Visual Studio Code-ban a jegyzetfüzetek celláinak futtatására vonatkozó korlátozások a következők:
- A jegyzetfüzetek varázstrükkjei
%r
és%scala
nem támogatottak, és hibát jeleznek, ha hívják őket. Lásd a Kevert nyelvek című témakört. - A jegyzetfüzet varázslat
%sql
nem támogat néhány DML-parancsot, például Táblák megjelenítése.