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.
Průběžná integrace a průběžné doručování (CI/CD) odkazuje na proces vývoje a doručování softwaru v krátkém a častém cyklech používáním kanálů automatizace. CI/CD je běžné při vývoji softwaru a je stále důležitější v oblasti přípravy dat a datových věd. Díky automatizaci sestavování, testování a nasazení kódu poskytují vývojové týmy spolehlivější verze než ruční procesy.
Databricks poskytuje nástroje pro vývoj kanálů CI/CD, které podporují přístupy, které se můžou mírně lišit od organizace po organizaci kvůli jedinečným aspektům životního cyklu vývoje softwaru každé organizace. Tato stránka obsahuje informace o dostupných nástrojích pro kanály CI/CD v Databricks. Podrobnosti o doporučeních a osvědčených postupech CI/CD najdete v tématu Osvědčené postupy a doporučené pracovní postupy CI/CD v Databricks.
Přehled CI/CD pro projekty strojového učení na Azure Databricks najdete v tématu Pokud databricks podporuje CI/CD pro strojové učení?.
Tok vysoké úrovně
Běžným tokem pro CI/CD pipeline v Azure Databricks je:
-
Version: Uložte kód Azure Databricks a poznámkové bloky do systému správy verzí, jako je Git. Díky tomu můžete sledovat změny v průběhu času a spolupracovat s ostatními členy týmu.
- Jednotliví uživatelé používají složku Gitu k vytváření a testování změn před jejich potvrzením do úložiště Git. Viz CI/CD se složkami Git Databricks.
- Volitelně můžete nakonfigurovat nastavení sady Gitu.
-
Code: Vývoj testů kódu a jednotek v poznámkovém bloku Azure Databricks v pracovním prostoru nebo místně pomocí integrovaného vývojového prostředí (IDE).
- Pomocí Editoru kanálů Lakeflow můžete vyvíjet kanály v pracovním prostoru.
- Pomocí rozšíření Databricks Visual Studio Code můžete vyvíjet a nasazovat místní změny do pracovních prostorů Azure Databricks.
-
Sestavení: Nastavení deklarativních automatizačních balíčků slouží k automatickému sestavení určitých artefaktů během nasazení.
- Nakonfigurujte mapování konfigurace balíčku artefaktů.
- Pylint rozšířený pomocí modulu plug-in Pylint Databricks Labs pomáhá vynucovat standardy kódování a zjišťovat chyby v poznámkových blocích Databricks a kódu aplikace.
-
Deploy: Nasaďte změny do pracovního prostoru Azure Databricks pomocí deklarativních balíčků automatizace pomocí nástrojů, jako jsou Azure DevOps, GitHub Actions nebo Jenkins.
- Nakonfigurujte nasazení pomocí režimů nasazení svazků.
- Podrobnosti o používání Azure DevOps a Databricks najdete v tématu Kontinuá integrace a doručování Azure Databricks pomocí Azure DevOps.
- Příklady GitHub Actions Databricks najdete v tématu GitHub Actions.
- Pro použití Jenkins Pipeline s Databricks viz CI/CD s Jenkinsem na Azure Databricks.
-
Testování: Vývoj a spouštění automatizovaných testů pro ověření změn kódu
- K otestování integrací použijte nástroje, jako pytest.
-
Run: K automatizaci spuštění v pracovních prostorech Azure Databricks použijte rozhraní příkazového řádku Databricks s balíčky deklarativní automatizace.
- Spusťte zdroje sestavy pomocí databricks bundle run.
- Monitor: Monitorujte výkon kódu a produkčních úloh v Azure Databricks pomocí nástrojů, jako je monitorování úloh. To vám pomůže identifikovat a vyřešit všechny problémy, které vznikají ve vašem produkčním prostředí.
Dostupné nástroje
Následující nástroje podporují základní principy CI/CD: verze všech souborů a sjednocení správy prostředků, definování infrastruktury jako kódu, izolace prostředí, automatizace testování a monitorování a automatizace vrácení zpět.
| Plocha | Tyto nástroje použijte, když chcete... |
|---|---|
| Deklarativní balíčky automatizace | Prostředky Databricks můžete definovat, nasazovat a spouštět prostřednictvím kódu programu, včetně úloh Lakeflow, deklarativních kanálů Sparku Lakeflow a zásobníků MLOps s využitím osvědčených postupů a toků CI/CD. |
| Poskytovatel Terraformu pro Databricks | Zřiďte a spravujte pracovní prostory a infrastrukturu Databricks pomocí Terraformu. Podrobnosti o tom, kdy použít poskytovatele Databricks Terraform místo deklarativních automatizačních balíčků, viz Místní vývojové nástroje. |
| Kontinuásní integrace a doručování Azure Databricks pomocí Azure DevOps | Vytvořte kanál CI/CD pro Azure Databricks, který používá Azure DevOps. |
| Ověřte se pomocí Azure DevOps na Azure Databricks | Ověřte se pomocí Azure DevOps. |
| GitHub Actions | Do toku CI/CD zahrňte GitHub akci vyvinutou pro Azure Databricks. |
| CI/CD s Jenkinsem v Azure Databricks | Vytvořte kanál CI/CD pro Azure Databricks, který používá Jenkinse. |
| Orchestrace úloh Lakeflow pomocí Apache Airflow | Spravujte a naplánujte datový kanál, který používá Apache Airflow. |
| Instanční objekty pro CI/CD | Používejte servisní identity místo uživatelů v rámci CI/CD. |
| Ověřte přístup k Azure Databricks pomocí federace tokenů OAuth | K ověřování CI/CD použijte federaci identit úloh, která eliminuje potřebu tajných kódů Databricks, což z něj dělá nejbezpečnější způsob ověřování v Databricks. |
Deklarativní balíčky automatizace
Deklarativní balíčky automatizace jsou doporučeným přístupem k CI/CD v Databricks. Balíčky deklarativní automatizace slouží k popisu prostředků Databricks, jako jsou úlohy a kanály jako zdrojové soubory, a jejich spojení s dalšími prostředky k zajištění komplexní definice nasaditelného projektu. Tyto sady souborů můžou být řízeny zdroji a k aktivaci nasazení můžete použít externí automatizaci CI/CD, jako je GitHub Actions.
Balíčky zahrnují celou řadu funkcí, jako jsou vlastní šablony pro vynucování konzistence a osvědčených postupů ve vaší organizaci, a komplexní podpora nasazení souborů kódu a konfigurace pro mnoho prostředků Databricks. Vytvoření sady vyžaduje určité znalosti syntaxe konfigurace sady.
Doporučení týkající se použití sad v CI/CD najdete v tématu Osvědčené postupy a doporučené pracovní postupy CI/CD v Databricks.
Další nástroje pro správu zdrojového kódu
Jako alternativu k použití úplné CI/CD s deklarativními balíčky automatizace nabízí Databricks možnosti pouze pro správu zdrojového kódu a nasazování souborů kódu a poznámkových bloků.
Složka Git: Složky Gitu se dají použít k vyjádření stavu vzdáleného úložiště Git. Ke správě zdrojových souborů a poznámkových bloků můžete vytvořit složku Git pro produkční prostředí. Potom ručně stáhněte složku Git do nejnovějšího stavu nebo použijte externí nástroje CI/CD, jako je GitHub Actions, ke stažení složky Git při sloučení. Tento přístup použijte, pokud nemáte přístup k externím kanálům CI/CD.
Tento přístup funguje pro externí orchestrátory, jako je Airflow, ale mějte na paměti, že ve správě zdrojového kódu jsou pouze soubory jako notebooky a návrhy dashboardů. Konfigurace pro úlohy nebo kanály, které spouštějí prostředky ve složce Git a konfigurace pro publikování řídicích panelů, nejsou ve správě zdrojového kódu.
Git s úlohami: Git s úlohami umožňuje nakonfigurovat některé typy úloh tak, aby jako zdroj souborů kódu používal vzdálené úložiště Git. Když se spustí úloha, Databricks pořídí snímek úložiště a spustí všechny úlohy s danou verzí. Tento přístup podporuje pouze omezené úlohy a pouze soubory kódu (poznámkové bloky a další soubory) jsou řízeny zdrojem. Konfigurace úloh, jako jsou pořadí úkolů, nastavení výpočetních prostředků a plány, nejsou řízeny zdroji, takže tento přístup je méně vhodný pro nasazení napříč pracovními prostory ve více prostředích.