Sdílet prostřednictvím


Azure Databricks pro vývojáře v Pythonu

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:

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

Datové vědy a strojové učení

Ladění v poznámkových blocích Pythonu

Ukázkový poznámkový blok ukazuje, jak používat ladicí program Pythonu (pdb) v poznámkových blocích Databricks. Pokud chcete použít ladicí program Pythonu, musíte používat Databricks Runtime 11.3 LTS nebo vyšší.

S modulem Databricks Runtime 12.2 LTS a novějším můžete pomocí průzkumníka proměnných sledovat aktuální hodnoty proměnných v Pythonu v uživatelském rozhraní poznámkového bloku. Průzkumník proměnných můžete použít k pozorování hodnot proměnných Pythonu při procházení jednotlivými body přerušení.

Ukázkový poznámkový blok ladicího programu Pythonu

Vezmi poznámkový blok

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 Pythonu

Kód Pythonu, který běží mimo Databricks, se může obecně spouštět 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 s jedním počítačem i distribuovanými úlohami Pythonu. Pro jednopočítačové výpočty můžete jako obvykle používat rozhraní API a knihovny Pythonu, například pandas a scikit-learn „prostě fungují“. V případě distribuovaných úloh Pythonu nabízí Databricks dvě oblíbená rozhraní API: PySpark a Pandas API ve Sparku.

PySpark API

PySpark je oficiální rozhraní API Pythonu pro Apache Spark a kombinuje výkon Pythonu 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 (EoS) a novější. Pro clustery, na kterých běží Databricks Runtime 9.1 LTS a níže, použijte místo toho Koalas .

Pandas je balíček Pythonu, který běžně používají datoví vědci pro analýzu a manipulaci s daty. Knihovna pandas se ale neškáluje na velká data. Rozhraní Pandas API na Sparku tuto mezeru vyplňuje poskytnutím API ekvivalentních Pandas, která fungují na Apache Spark. Toto open source rozhraní API je ideální volbou pro odborníky na data, 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 importováním notebooku. Jakmile budete mít přístup ke clusteru, můžete připojit poznámkový blok ke clusteru a spustit poznámkový blok.

Tip

Pokud chcete obnovit stav notebooku, restartujte jádro IPythonu. Uživatelům Jupyteru možnost „restartovat jádro“ odpovídá odpojení a opětovnému připojení notebooku v Databricks. Pokud chcete restartovat jádro v poznámkovém bloku Pythonu, klikněte na selektor výpočetních prostředků na panelu nástrojů poznámkového bloku a najeďte myší na připojený cluster nebo SQL warehouse v seznamu, abyste zobrazili boční nabídku. Vyberte Odpojte & znovu připojte. Tím se poznámkový blok odpojí od clusteru a znovu ho připojí, což restartuje proces Pythonu.

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

Výpočetní prostředky Azure Databricks poskytují 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.

Clustery Azure Databricks používají Databricks Runtime, který poskytuje mnoho oblíbených knihoven, včetně Apache Spark, Delta Lake, pandas a dalších. Můžete také nainstalovat další knihovny třetích stran nebo vlastní knihovny Pythonu pro použití s poznámkovými bloky a úlohami.

Vizualizace

Poznámkové bloky Pythonu v Azure Databricks mají integrovanou podporu pro mnoho 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 Pythonu můžete automatizovat podle naplánovaných nebo aktivovaných úloh v Databricks. Úlohy můžou spouštět poznámkové bloky, skripty Pythonu a soubory kol Pythonu.

  • Vytváření a aktualizace úloh pomocí uživatelského rozhraní Databricks nebo rozhraní REST API Databricks.
  • Sada Databricks Python SDK umožňuje programově vytvářet, upravovat a odstraňovat úlohy.
  • Rozhraní Databricks CLI poskytuje pohodlné uživatelské prostředí pro automatizaci úloh.

Tip

Pokud chcete místo poznámkového bloku naplánovat skript Pythonu, použijte pole spark_python_task v rámci tasks textu formuláře pro 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.

Pro algoritmy ML můžete použít předem nainstalované knihovny v Databricks Runtime pro Machine Learning, které zahrnují oblíbené nástroje Pythonu, 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) poskytuje Azure Databricks spravovanou službu pro opensourcovou knihovnu MLflow. 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 MLflow pro životní cyklus agenta generativní AI a modelu ML nebo v dokumentaci k rozhraní Python API MLflow.

Pokud chcete začít s běžnými úlohami strojového učení, podívejte se na následující stránky:

IdEs, vývojářské nástroje a sady SDK

Kromě vývoje kódu Pythonu 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 Integrace Gitu pro složky Git v Databricks.
  • Knihovny a úlohy: Knihovny (například soubory kol Pythonu) můžete vytvořit 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. Podívejte se na Knihovny a Přehled orchestrací na Databricks.
  • 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 a spouštět Apache Spark a velké výpočty v clusterech Azure Databricks. Viz Databricks Connect.

Databricks poskytuje sadu sad SDK, včetně sady 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 IDEs, vývojářských nástrojích a sadách SDK najdete v tématu místní vývojové nástroje.

Další materiály