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.
Ez a szakasz útmutatót nyújt a jegyzetfüzetek és feladatok Azure Databricks Python nyelv használatával történő fejlesztéséhez, beleértve a gyakori munkafolyamatokhoz és feladatokhoz kapcsolódó oktatóanyagokat, valamint API-kra, tárakra és eszközökre mutató hivatkozásokat.
Első lépések:
- Kód importálása: Importálja a saját kódját a fájlokból vagy a Git-adattárakból, vagy próbálkozzon az alábbi oktatóanyagokkal. A Databricks interaktív Databricks-jegyzetfüzetek használatát javasolja.
- Futtassa a kódját egy klaszteren: Hozzon létre egy saját klaszter, vagy győződjön meg arról, hogy rendelkezik megosztott klaszter használatára vonatkozó engedélyekkel. Csatolja a jegyzetfüzetet a fürthöz, és futtassa a jegyzetfüzetet.
- Ezután a következőt teheti:
- Nagyobb adatkészletek használata az Apache Spark használatával
- Vizualizációk hozzáadása
- A számítási feladat automatizálása feladatként
- Gépi tanulás használata az adatok elemzéséhez
- Fejlesztés IDE-kben
- Python egységtesztek futtatása és kezelése a munkaterületen
Oktatóanyagok
Az alábbi oktatóanyagok példakódot és jegyzetfüzeteket nyújtanak a gyakori munkafolyamatok megismeréséhez. A jegyzetfüzetek a munkaterületre való importálásával kapcsolatos útmutatásért lásd: Jegyzetfüzet importálása .
Adatfeldolgozás
- Oktatóanyag: Adatok betöltése és átalakítása az Apache Spark DataFrames használatával – útmutató az Apache Spark DataFrame-ekről az adatok előkészítéséhez és elemzéséhez.
- Oktatóanyag: Delta Lake-táblák létrehozása és kezelése.
- Oktatóanyag: ETL-folyamat létrehozása változásadat-rögzítéssel.
Adatelemzés és gépi tanulás
- Az Apache Spark DataFrames használatának első lépései az adatok előkészítéséhez és elemzéséhez: Oktatóanyag: Adatok betöltése és átalakítása Az Apache Spark DataFrame-ek használatával
- Tutorial: Teljes körű klasszikus gépi tanulási modellek Azure Databricks. További példákért tekintse meg az AI-t és a gépi tanulási oktatóanyagokat.
- Az AutoML lehetővé teszi a gépi tanulási modellek saját adatkészleteken történő fejlesztésének gyors megkezdését. Üvegdobozos megközelítése a teljes gépi tanulási munkafolyamattal hozza létre a jegyzetfüzeteket, amelyeket klónozhat, módosíthat és újrafuttathat.
- Modell életciklusának kezelése a Unity Katalógusban
Python jegyzetfüzetek hibakeresése
A példajegyzetfüzet bemutatja, hogyan használható a Python hibakereső (pdb) a Databricks-jegyzetfüzetekben. A Python hibakereső használatához a Databricks Runtime 11.3 LTS vagy újabb verzióját kell futtatnia.
A Databricks Runtime 12.2 LTS-es és újabb verzióival variable Explorer használatával nyomon követheti Python változók aktuális értékét a jegyzetfüzet felhasználói felületén. A változókezelővel megfigyelheti Python változók értékeit a töréspontokon való lépés során.
Python hibakereső példajegyzetfüzete
Feljegyzés
breakpoint() az IPython nem támogatja , ezért nem működik a Databricks-jegyzetfüzetekben.
import pdb; pdb.set_trace() Használhatja ahelyett, hogy breakpoint().
Python API-k
Python Databricksen kívül futó kód általában a Databricksben futtatható, és fordítva. Ha már rendelkezik kóddal, csak importálja a Databricksbe az első lépésekhez. Részletekért lásd: Kód kezelése jegyzetfüzetekkel és Databricks Git-mappákkal .
A Databricks egygépes és elosztott Python számítási feladatokat is futtathat. Az egygépes számítástechnika esetében a szokásos módon használhat Python API-kat és kódtárakat; a pandas és a scikit-learn például "csak működik". Elosztott Python számítási feladatokhoz a Databricks két népszerű API-t kínál a dobozból: a PySparkot és a Pandas API-t a Sparkon.
PySpark API
PySpark az Apache Spark hivatalos Python API-ja, amely egyesíti a Python és az Apache Spark erejét. A PySpark rugalmasabb, mint a Pandas API a Sparkban, és széles körű támogatást és funkciókat biztosít az adatelemzéshez és a mérnöki funkciókhoz, például a Spark SQL-hez, a strukturált streameléshez, az MLLib-hez és a GraphX-hez.
Pandas API a Spark-keretrendszerben
Feljegyzés
A koalasi nyílt forráskódú projekt most azt javasolja, hogy váltson a Pandas API-ra a Sparkon. A Spark-alapú Pandas API a Databricks Runtime 10.0 vagy annál újabb verzióval rendelkező fürtökön érhető el. A Databricks Runtime 9.1 LTS-t és újabb verziót futtató fürtök esetében használja helyette a Koalast .
pandas egy Python csomag, amelyet az adatelemzők gyakran használnak adatelemzéshez és -manipulációhoz. Azonban a Pandas nem méretezhető nagy mennyiségű adatra. A Sparkon futó Pandas API ezt a rést azzal tölti ki, hogy olyan pandas-egyenértékű API-kat biztosít, amelyek az Apache Sparkon működnek. Ez a nyílt forráskódú API ideális választás azoknak az adattudósoknak, akik ismerik a pandast, de az Apache Sparkot nem.
Kód kezelése jegyzetfüzetekkel és Databricks Git-mappákkal
Databricks-jegyzetfüzetek támogatják Python. Ezek a jegyzetfüzetek a Jupyterhez hasonló funkciókat biztosítanak, de olyan kiegészítésekkel, mint a big data-ot használó beépített vizualizációk, a hibakereséshez és a teljesítményfigyeléshez használható Apache Spark-integrációk, valamint a gépi tanulási kísérletek nyomon követésére szolgáló MLflow-integrációk. Első lépésként importálj egy jegyzetfüzetet
Tipp
A jegyzetfüzet állapotának visszaállításához indítsa újra az iPython kernelt. A Jupyter-felhasználók számára a Jupyter "restart kernel" lehetősége egy új munkamenet indításának felel meg a Databricksben. Ha újra szeretné indítani a kernelt egy Python jegyzetfüzetben, kattintson a compute választóra a jegyzetfüzet eszköztárában, és mutasson a csatolt fürtre vagy SQL Warehouse-ra a listában egy oldalsó menü megjelenítéséhez. Válassza az Új munkamenet lehetőséget. Ez elindít egy új munkamenetet, amely újraindítja a Python folyamatot.
A Databricks Git-mappák lehetővé teszik a felhasználók számára, hogy szinkronizálják a jegyzetfüzeteket és más fájlokat a Git-adattárakkal. A Databricks Git-mappák segítenek a kód verziószámozásában és együttműködésében, és egyszerűbbé teheti a kód teljes tárházának importálását Azure Databricks, megtekintheti a korábbi jegyzetfüzet-verziókat, és integrálható az IDE-fejlesztéssel. Első lépésként klónozz egy távoli Git-adattárat. Ezután megnyithatja vagy létrehozhat jegyzetfüzeteket az adattár klónozásával, csatolhatja a jegyzetfüzetet egy fürthöz, és futtathatja a jegyzetfüzetet.
Klaszterek és könyvtárak
Azure Databricks compute bármilyen méretű fürthöz biztosít számításkezelést: az egycsomópontos fürtöktől a nagy fürtökig. Igényeinek megfelelően testre szabhatja a fürt hardverét és könyvtárait. Az adattudósok általában a munkát vagy egy fürt létrehozásával, vagy egy meglévő megosztott fürt használatával kezdik meg. Miután hozzáfér egy fürthöz, csatolhat egy jegyzetfüzetet a fürthöz, vagy futtathat egy feladatot a fürtön.
- A csak egyetlen csomópontot igénylő kis számítási feladatok esetében az adatelemzők egyetlen csomópontos számítást használhatnak a költségmegtakarításhoz.
- Részletes tippekért tekintse meg a számítási konfigurációra vonatkozó javaslatokat
- A rendszergazdák fürtszabályzatokat állíthatnak be a fürtlétrehozás egyszerűsítésére és útmutatás nyújtására.
Azure Databricks fürtök Databricks Runtime-ot használnak, amely számos népszerű könyvtárat biztosít, többek között az Apache Sparkot, a Delta Lake-t, a pandast és sok mást. További külső vagy egyéni Python tárakat is telepíthet a jegyzetfüzetekhez és feladatokhoz való használatra.
- Kezdje az alapértelmezett kódtárakkal a Databricks Runtime kibocsátási megjegyzéseinek verzióiban és kompatibilitásában. Databricks Runtime a gépi tanuláshoz a gépi tanulási számítási feladatokhoz. Az előre telepített kódtárak teljes listájáért tekintse meg a Databricks Runtime kiadási jegyzeteinek verzióit és kompatibilitását.
- A környezet testreszabása Notebook-hatókörű Python-kódtárak használatával, amelyekkel módosíthatja a jegyzetfüzetet vagy a feladatkörnyezetet a PyPI-ból vagy más adattárakból származó kódtárakkal. A
%pip install my_librarymagic parancs telepíti amy_library-et a jelenleg csatlakoztatott fürt összes csomópontjára, és nem zavarja a többi számítási feladatot a standard hozzáférési módú számítási kapacitáson. - Szükség szerint telepítse a nem Python könyvtárakat Compute-hatókörű könyvtárként.
- További részletekért lásd: Kódtárak telepítése.
Vizualizációk
Azure Databricks Python jegyzetfüzetek beépített támogatást nyújtanak a vizualizációk számos típusához. Régi vizualizációkat is használhat.
Az adatokat külső kódtárak használatával is megjelenítheti; néhány előre telepítve van a Databricks-futtatókörnyezetben, de egyéni kódtárakat is telepíthet. Népszerű lehetőségek a következők:
Feladatok
Automatizálhatja a Python munkaterheléseket ütemezett vagy indított feladatokként a Databricksben. A feladatok jegyzetfüzeteket, Python szkripteket és Python wheel fájlokat futtathatnak.
- Hozzon létre és frissítse a feladatokat a Databricks felhasználói felületén vagy a Databricks REST API-jával.
- A Databricks Python SDK lehetővé teszi feladatok programozott létrehozását, szerkesztését és törlését.
- A Databricks parancssori felülete kényelmes parancssori felületet biztosít a feladatok automatizálásához.
Tipp
Ha jegyzetfüzet helyett Python szkriptet szeretne ütemezni, használja a spark_python_task alatti tasks mezőt egy létrehozási feladatkérés törzsében.
Gépi tanulás
A Databricks számos gépi tanulási (ML) számítási feladatot támogat, beleértve a táblázatos adatok hagyományos gépi tanulását, a számítógépes látás és a természetes nyelvfeldolgozás mély tanulását, a javaslati rendszereket, a gráfelemzést stb. A Databricks gépi tanulásáról a Databricksen végzett gépi tanulással kapcsolatos általános információkért lásd a Databricks AI-ját és gépi tanulását.
Az ML-algoritmusok esetében a Databricks Runtime for Machine Learning előre telepített kódtárait használhatja, amelyek olyan népszerű Python eszközöket tartalmaznak, mint a scikit-learn, a TensorFlow, a Keras, a PyTorch, az Apache Spark MLlib és az XGBoost. Egyéni kódtárakat telepíthet is.
A gépi tanulási műveletekhez (MLOps) Azure Databricks egy felügyelt szolgáltatást biztosít a open source könyvtár MLflow-hoz. Az MLflow Tracking segítségével rögzítheti a modellfejlesztést, és újrahasználható formátumban mentheti a modelleket. Az MLflow modellregisztrációs adatbázisával kezelheti és automatizálhatja a modellek előléptetését az éles környezet felé. A feladatok és a modellszolgáltatás lehetővé teszi a modellek kötegelt és streamelési feladatokként, valamint REST-végpontként való üzemeltetését. További információ és példák: MLflow on Databricks vagy a MLflow Python API-dokumentumok.
A gyakori gépi tanulási számítási feladatok használatának megkezdéséhez tekintse meg a következő oldalakat:
- Scikit-learn és nyomon követés betanítása az MLflow használatával: 10 perces oktatóanyag: gépi tanulás a Databricksen a scikit-learn használatával
- Mélytanulási modellek betanítása: Mély tanulás
- Hiperparaméter-finomhangolás: Hiperparaméter-finomhangolás Optunával
- Gráfelemzés: Hogyan használjuk a GraphFrames-t az Azure Databricks-en
Integrált fejlesztői környezetek, fejlesztői eszközök és SDK-k
A Azure Databricks jegyzetfüzeteken belüli Python kód fejlesztése mellett külső fejlesztést is végezhet olyan integrált fejlesztési környezetek (IDE-k) használatával, mint a PyCharm, a Jupyter és a Visual Studio Code. A külső fejlesztési környezetek és a Databricks közötti munka szinkronizálásához több lehetőség is van:
- Kód: Szinkronizálhatja a kódot a Git használatával. Lásd: Azure Databricks Git-mappák.
- Naplók és feladatok: Külsőleg létrehozhat kódtárakat (például Python kerékfájlokat), és feltöltheti őket a Databricksbe. Ezek a kódtárak importálhatók a Databricks-jegyzetfüzetekbe, vagy használhatók feladatok létrehozására. Lásd: Kódtárak és Lakeflow-feladatok telepítése.
- Távoli gép végrehajtása: A helyi IDE-ből futtathat kódot interaktív fejlesztéshez és teszteléshez. Az IDE képes kommunikálni az Azure Databricks szolgáltatással, hogy Apache Spark-ot és nagy számításokat hajtson végre az Azure Databricks fürtökön. Lásd : Databricks Connect.
A Databricks számos SDK-t biztosít, köztük egy Python SDK, amelyek támogatják az automatizálást és a külső eszközökkel való integrációt. A Databricks SDK-ket olyan erőforrások kezelésére használhatja, mint a fürtök és könyvtárak, kód és más munkaterület-objektumok, munkaterhelések és feladatok, és még sok más. Lásd a Databricks SDK-ket.
Az IDE-kkel, fejlesztői eszközökkel és SDK-kkal kapcsolatos további információkért lásd: Helyi fejlesztési eszközök.
További erőforrások
- A Databricks Academy számos témakörben kínál öngyors és oktató által vezetett kurzusokat.
- Databricks Labs olyan eszközöket biztosít a Databricks Python fejlesztéséhez, mint például a pytest beépülő modul és a pylint beépülő modul. Azure Databricks a munkaterületen található Python egységtesztfájlok kezeléséhez is kínál funkciókat.
- A PySpark és a pandas közötti interoperabilitást támogató funkciók a következők:
- az Python és az SQL Database csatlakozási eszközei a következők:
- A Databricks SQL Connector for Python lehetővé teszi, hogy Python kódot használva SQL-parancsokat futtasson Azure Databricks erőforrásokon.
- pyodbc lehetővé teszi, hogy a helyi Python kódból az ODBC-n keresztül csatlakozzon a Databricks lakehouse-ban tárolt adatokhoz.
- A Python számítási feladatok Databricksbe való áthelyezésével kapcsolatos gyakori kérdések és tippek a Databricks tudásbázisban találhatók.