Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tato část obsahuje průvodce vývojem poznámkových bloků a úloh v Azure Databricks pomocí jazyka Python, včetně kurzů pro běžné pracovní postupy a úlohy a odkazů na rozhraní API, knihovny a nástroje.
Začněte tím, že:
- Import kódu: Buď naimportujte vlastní kód ze souborů nebo z úložišť Git, nebo vyzkoušejte kurz uvedený níže. Databricks doporučuje učení pomocí interaktivních poznámkových bloků Databricks.
- Spusťte kód v clusteru: Buď vytvořte vlastní cluster, nebo se ujistěte, že máte oprávnění k používání sdíleného clusteru. Připojte notebook ke clusteru a spusťte notebook.
- Pak můžete:
- Práce s většími datovými sadami pomocí Apache Sparku
- Přidání vizualizací
- Automatizujte svou práci jako úkol
- Použití strojového učení k analýze dat
- Vývoj v prostředích IDE
- Spouštějte a spravujte jednotkové testy v Pythonu v pracovní oblasti
Návody
Následující kurzy obsahují ukázkový kód a poznámkové bloky, které vám pomůžou seznámit se s běžnými pracovními postupy. Pokyny k importu příkladů poznámkových bloků do pracovního prostoru najdete v tématu Import poznámkového bloku .
Příprava dat
- Kurz: Načtení a transformace dat pomocí datových rámců Apache Spark poskytuje návod, který vám pomůže získat informace o datových rámcích Apache Spark pro přípravu a analýzu dat.
- Kurz: Vytváření a správa tabulek Delta Lake
- Kurz: Vytvoření kanálu ETL pomocí zachytávání dat změn
Datové vědy a strojové učení
- Začínáme s datovými rámci Apache Spark pro přípravu a analýzu dat: Kurz: Načtení a transformace dat pomocí datových rámců Apache Spark
- Tutorial: Kompletní klasické modely ML na Azure Databricks. Další příklady najdete v kurzech umělé inteligence a strojového učení.
- AutoML vám umožní rychle začít s vývojem modelů strojového učení na vlastních datových sadách. Jeho přístup typu „skleněná krabice“ generuje poznámkové bloky s kompletním pracovním postupem strojového učení, které můžete klonovat, upravovat a znovu spouštět.
- Správa životního cyklu modelu v katalogu Unity
Debug v poznámkových blocích Python
Ukázkový poznámkový blok ukazuje, jak používat ladicí program Python (pdb) v poznámkových blocích Databricks. Pokud chcete použít ladicí program Python, musíte používat Databricks Runtime 11.3 LTS nebo vyšší.
Ve verzi Databricks Runtime 12.2 LTS a novější můžete použít variable explorer ke sledování aktuální hodnoty Python proměnných v uživatelském rozhraní poznámkového sešitu. Průzkumníka proměnných můžete použít k pozorování hodnot Python proměnných při procházení zarážek.
Ukázkový poznámkový blok ladicího programu Python
Poznámka:
breakpoint() není podporován v IPythonu , a proto nefunguje v poznámkových blocích Databricks. Místo toho můžete použít import pdb; pdb.set_trace()breakpoint().
rozhraní API pro Python
Python kód, který běží mimo Databricks, může obecně běžet v Databricks a naopak. Pokud máte existující kód, stačí ho naimportovat do Databricks, abyste mohli začít. Podrobnosti najdete v části Správa kódu pomocí poznámkových bloků a složek Gitu Databricks .
Databricks může spouštět úlohy Python jak na jediném stroji, tak ve více rozprostřeném systému. Pro výpočty na jedné pracovní stanici můžete jako obvykle používat rozhraní API a knihovny pro Python; například pandas a scikit-learn budou „fungovat bez problémů“. V případě distribuovaných Python úloh nabízí Databricks dvě oblíbená rozhraní API: PySpark a Pandas API ve Sparku.
PySpark API
PySpark je oficiální rozhraní API Python pro Apache Spark a kombinuje výkon Python a Apache Sparku. PySpark je flexibilnější než rozhraní Pandas API ve Sparku a poskytuje rozsáhlou podporu a funkce pro datové vědy a technické funkce, jako jsou Spark SQL, Strukturované streamování, MLLib a GraphX.
API Pandas na Sparku
Poznámka:
Opensourcový projekt Koalas teď doporučuje přepnout na rozhraní PANDAS API ve Sparku. Rozhraní Pandas API ve Sparku je k dispozici v clusterech, na kterých běží Databricks Runtime 10.0 a vyšší. Pro clustery, na kterých běží Databricks Runtime 9.1 LTS a níže, použijte místo toho Koalas .
pandas je balíček Python běžně používaný datovými vědci pro analýzu a manipulaci s daty. Knihovna pandas se ale neškáluje na velká data. Rozhraní Pandas API ve Sparku tuto mezeru vyplní tím, že poskytuje rozhraní API ekvivalentní knihovně pandas, která pracují na Apache Sparku. Toto API s otevřeným zdrojovým kódem je ideální volbou pro datové vědce, kteří znají knihovnu pandas, ale ne Apache Spark.
Správa kódu pomocí poznámkových bloků a složek Git Databricks
poznámkové bloky Databricks podporují Python. Tyto poznámkové bloky poskytují funkce podobné Jupyteru, ale jsou rozšířeny o další možnosti, jako jsou zabudované vizualizace využívající velké objemy dat, integrace Apache Spark pro ladění a monitorování výkonu a integrace MLflow pro sledování experimentů strojového učení. Začněte importem poznámkového bloku. Jakmile budete mít přístup ke clusteru, můžete připojit poznámkový blok ke clusteru a spustit poznámkový blok.
Doporučení
Pokud chcete obnovit stav notebooku, restartujte jádro IPythonu. U uživatelů Jupyteru odpovídá možnost restartovat jádro v Jupyteru spuštění nové relace v Databricks. Pokud chcete v poznámkovém bloku Python restartovat jádro, klikněte na volič kompute na panelu nástrojů poznámkového bloku a najeďte myší na připojený cluster nebo SQL Warehouse v seznamu a zobrazte boční nabídku. Vyberte Nová relace. Tím se spustí nová relace, která restartuje proces Python.
Složky Gitu Databricks umožňují uživatelům synchronizovat poznámkové bloky a další soubory s úložišti Git. Složky Gitu databricks pomáhají se správou verzí kódu a spolupráci a můžou zjednodušit import celého úložiště kódu do Azure Databricks, prohlížení předchozích verzí poznámkových bloků a integraci s vývojem integrovaného vývojového prostředí (IDE). Začněte klonováním vzdáleného úložiště Git. Potom můžete otevřít nebo vytvořit poznámkové bloky pomocí klonování úložiště, připojit poznámkový blok ke clusteru a spustit poznámkový blok.
Clustery a knihovny
Azure Databricks compute poskytuje správu výpočetních prostředků pro clustery libovolné velikosti: od clusterů s jedním uzlem až po velké clustery. Hardware a knihovny clusteru můžete přizpůsobit podle svých potřeb. Datoví vědci obvykle začnou pracovat buď vytvořením clusteru , nebo použitím existujícího sdíleného clusteru. Jakmile budete mít přístup ke clusteru, můžete k clusteru připojit poznámkový blok nebo spustit úlohu v clusteru.
- U malých úloh, které vyžadují jenom jednotlivé uzly, můžou datoví vědci využít výpočetní prostředky s jedním uzlem a ušetřit tak náklady.
- Podrobné tipy najdete v tématu Doporučení ke konfiguraci výpočetních prostředků.
- Správci můžou nastavit zásady clusteru , které zjednoduší a provedou vytváření clusteru.
Azure Databricks clustery používají modul Databricks Runtime, který poskytuje řadu oblíbených knihoven, které jsou předinstalované, včetně Apache Spark, Delta Lake, pandas a dalších. Můžete také nainstalovat další knihovny třetích stran nebo vlastní Python pro použití s poznámkovými bloky a úlohami.
- Začněte s výchozími knihovnami v poznámkách k verzi Databricks Runtime, verze a kompatibilita. Pro úlohy machine learning použijte Databricks Runtime pro Machine Learning. Úplný seznam předinstalovaných knihoven najdete v poznámkách k verzi databricks Runtime a jejich kompatibilitu.
- Přizpůsobte si prostředí pomocí knihoven Python omezených na notebook, které umožňují upravovat notebooky nebo prostředí úloh za použití knihoven z PyPI nebo jiných úložišť. Magický příkaz
%pip install my_librarynainstalujemy_librarydo všech uzlů ve vašem aktuálně připojeném clusteru, ale nezasahuje do jiných úloh na výpočetních prostředích se standardním režimem přístupu. - Podle potřeby nainstalujte nepythonové knihovny jako knihovny s vymezeným oborem Compute.
- Další podrobnosti najdete v tématu Instalace knihoven.
Vizualizace
Azure Databricks Python notebooky mají integrovanou podporu mnoha typů vizualizací. Můžete také použít starší vizualizace.
Data můžete vizualizovat také pomocí knihoven třetích stran; Některé jsou předinstalované v prostředí Databricks Runtime, ale můžete také nainstalovat vlastní knihovny. Mezi oblíbené možnosti patří:
Úlohy
Úlohy Python můžete automatizovat podle plánu nebo aktivovat jobs v Databricks. Úlohy můžou spouštět notebooky, Python skripty a Python wheel soubory.
- Vytváření a aktualizace úloh pomocí uživatelského rozhraní
Databricks nebo rozhraní REST API Databricks . - Sada Databricks Python SDK umožňuje vytvářet, upravovat a odstraňovat úlohy prostřednictvím kódu programu.
- Rozhraní příkazového řádku Databricks poskytuje pohodlné rozhraní příkazového řádku pro automatizaci úloh.
Doporučení
Pokud chcete místo poznámkového bloku naplánovat Python skript, použijte pole spark_python_task v části tasks v textu žádosti o vytvoření úlohy.
Strojové učení
Databricks podporuje širokou škálu úloh strojového učení (ML), včetně tradičního strojového učení u tabulkových dat, hlubokého učení pro zpracování počítačového zpracování obrazu a přirozeného jazyka, systémů doporučení, analýzy grafů a dalších. Obecné informace o strojovém učení v Databricks najdete v tématu AI a strojové učení v Databricks.
V případě algoritmů ML můžete pro Machine Learning použít předem nainstalované knihovny v databricks Runtime, které zahrnují oblíbené Python nástroje, jako jsou scikit-learn, TensorFlow, Keras, PyTorch, Apache Spark MLlib a XGBoost. Můžete také nainstalovat vlastní knihovny.
Pro operace strojového učení (MLOps) Azure Databricks poskytuje spravovanou službu pro knihovnu MLflow open source. Pomocí nástroje MLflow Tracking můžete zaznamenávat vývoj modelů a ukládat modely v opakovaně použitelných formátech. Registr modelů MLflow můžete použít ke správě a automatizaci povýšení modelů do produkčního prostředí. Úlohy a obsluha modelů umožňují hostování modelů jako dávkové a streamované úlohy a jako koncové body REST. Další informace a příklady najdete v dokumentaci k MLflow v Databricks nebo dokumentaci k MLflow Python API.
Pokud chcete začít s běžnými úlohami strojového učení, podívejte se na následující stránky:
- Trénování scikit-learn a sledování pomocí MLflow: 10-minutový tutoriál: strojové učení na platformě Databricks s pomocí scikit-learn
- Trénování modelů hlubokého učení: Hluboké učení
- Ladění hyperparametrů: Ladění hyperparametrů pomocí Optuna
- Analýza grafů: Pokud použít GraphFrames na Azure Databricks
IdEs, vývojářské nástroje a sady SDK
Kromě vývoje Python kódu v poznámkových blocích Azure Databricks můžete vyvíjet externě pomocí integrovaných vývojových prostředí (IDE), jako jsou PyCharm, Jupyter a Visual Studio Code. Pokud chcete synchronizovat práci mezi externími vývojovými prostředími a Databricks, existuje několik možností:
- Kód: Kód můžete synchronizovat pomocí Gitu. Viz složky Git Azure Databricks.
- Knihovny a úlohy: Můžete vytvořit knihovny (například soubory wheel Python) externě a nahrát je do Databricks. Tyto knihovny se můžou importovat do poznámkových bloků Databricks nebo je můžete použít k vytváření úloh. Viz Instalace knihoven a Úloh Lakeflow.
- Vzdálené spuštění počítače: Kód můžete spustit z místního integrovaného vývojového prostředí (IDE) pro interaktivní vývoj a testování. Integrované vývojové prostředí (IDE) může komunikovat s Azure Databricks ke spouštění Apache Sparku a velkých výpočtů v clusterech Azure Databricks. Viz Databricks Connect.
Databricks poskytuje sadu sad SDK, včetně sady SDK Python SDK, která podporuje automatizaci a integraci s externími nástroji. Sady SDK Databricks můžete použít ke správě prostředků, jako jsou clustery a knihovny, kód a další objekty pracovního prostoru, pracovní vytížení a úlohy, a další. Podívejte se na sady SDK Databricks.
Další informace o prostředích IDE, vývojářských nástrojích a sadách SDK najdete v tématu Místní vývojové nástroje.
Další materiály
- The Databricks Academy nabízí kurzy řízené instruktorem a vlastním tempem na mnoha tématech.
- Databricks Labs poskytuje nástroje pro Python vývoj v Databricks, jako je modul plug-in pytest a modul plug-in pylint. Azure Databricks také nabízí funkce, které pomáhají spravovat soubory testů jednotek Python v pracovním prostoru.
- Mezi funkce, které podporují interoperabilitu mezi PySparkem a knihovnou pandas, patří:
- mezi nástroje pro připojení k Python a databázi SQL patří:
- Konektor SQL Databricks pro Python umožňuje používat Python kód ke spouštění příkazů SQL na Azure Databricks prostředcích.
- pyodbc umožňuje připojení z místního kódu Python prostřednictvím rozhraní ODBC k datům uloženým v Datovém jezeře Databricks.
- Nejčastější dotazy a tipy pro přesun úloh Python do Databricks najdete v Databricks Knowledge Base.