Co je CI/CD v Azure Databricks?
Tento článek je úvodem do CI/CD v Databricks. 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 společný pro vývoj softwaru a je stále důležitější pro datové inženýrství a datové vědy. Díky automatizaci sestavování, testování a nasazení kódu můžou vývojové týmy spolehlivěji dodávat vydané verze než s ručními procesy, které jsou pro týmy pro datové vědy a datové vědy stále běžné.
Azure Databricks doporučuje používat sady prostředků Databricks pro CI/CD, které umožňují vývoj a nasazení složitých projektů dat, analýz a ML pro platformu Azure Databricks. Sady prostředků umožňují snadnou správu mnoha vlastních konfigurací a automatizaci sestavení, testů a nasazení vašich projektů do vývojových, přípravných a produkčních pracovních prostorů Azure Databricks.
Přehled CI/CD pro projekty strojového učení v Azure Databricks najdete v tématu Jak Databricks podporuje CI/CD pro strojové učení?.
Co je v kanálu CI/CD v Azure Databricks?
Sady prostředků Databricks můžete použít k definování a programové správě implementace CI/CD služby Azure Databricks, která obvykle zahrnuje:
- Poznámkové bloky: Poznámkové bloky Azure Databricks jsou často klíčovou součástí pracovních postupů datového inženýrství a datových věd. Pro poznámkové bloky můžete použít systém verzování a také je ověřovat a testovat jako součást CI/CD procesu. U poznámkových bloků můžete spustit automatizované testy a zkontrolovat, jestli fungují podle očekávání.
- Knihovny: Spravujte závislosti knihovny potřebné ke spuštění nasazeného kódu. Používejte správu verzí u knihoven a zahrňte je do automatizovaného testování a ověřování.
- Pracovní postupy: Úlohy Databricks se skládají z úloh, které umožňují plánovat a spouštět automatizované úlohy pomocí poznámkových bloků nebo úloh Sparku.
- Datové kanály: Můžete je zahrnout do automatizace CI/CD pomocí DLT, což je framework v Databricks pro deklaraci datových kanálů.
- Infrastruktura: Konfigurace infrastruktury zahrnuje definice a informace o zřizování pro clustery, pracovní prostory a úložiště pro cílová prostředí. Změny infrastruktury je možné ověřit a testovat jako součást kanálu CI/CD a zajistit tak, aby byly konzistentní a bez chyb.
Postup CI/CD na Azure Databricks
Typický tok pro kanál CI/CD Azure Databricks zahrnuje následující kroky:
- Store: Uložte kód a poznámkové bloky Azure Databricks 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. Podívejte se na techniky CI/CD s Git a Git složkami Databricks (Repos) a nastavení Git balíčku.
- Kód: Vývoj testů kódu a jednotek v poznámkovém bloku Azure Databricks v pracovním prostoru nebo místně pomocí externího integrovaného vývojového prostředí (IDE). Azure Databricks poskytuje rozšíření editoru Visual Studio Code, které usnadňuje vývoj a nasazování změn do pracovních prostorů Azure Databricks.
- Sestavení: Pomocí nastavení Databricks Asset Bundles můžete automaticky sestavit určité artefakty během nasazení. Viz artefakty. Kromě toho je Pylint rozšířen o plug-in Databricks Labs pylint, který pomáhá vynucovat standardy kódování a zjišťovat chyby v poznámkových blocích a aplikacích Databricks.
- Nasazení: Nasazení změn do pracovního prostoru Azure Databricks pomocí sad prostředků Databricks ve spojení s nástroji, jako jsou Azure DevOps, Jenkins nebo GitHub Actions. Viz režimy nasazení balíčku Databricks Asset.
- Testování: Vývoj a spouštění automatizovaných testů k ověření změn kódu pomocí nástrojů, jako je pytest. Pokud chcete otestovat integrace s rozhraními API pracovního prostoru, modul plug-in pytest Databricks Labs umožňuje vytvářet objekty pracovního prostoru a vyčistit je po dokončení testů.
- Spuštění: Použití rozhraní příkazového řádku Databricks ve spojení s sadami prostředků Databricks k automatizaci spuštění v pracovních prostorech Azure Databricks. Viz Spuštění úlohy nebo kanálu.
- Monitorování: Monitorování výkonu kódu a pracovních postupů v Azure Databricks pomocí nástrojů, jako je Azure Monitor nebo Datadog. To vám pomůže identifikovat a vyřešit všechny problémy, které vznikají ve vašem produkčním prostředí.
- Iterate: Provádějte malé a časté iterace k vylepšení a aktualizaci projektu datového inženýrství nebo datové vědy. Malé změny se dají snadněji vrátit zpět než velké.
Související odkazy
Další informace o správě životního cyklu prostředků a dat Azure Databricks najdete v následující dokumentaci k nástrojům CI/CD a datových kanálů.
Plocha | Tyto nástroje použijte, když chcete... |
---|---|
Balíčky prostředků Databricks | Prostřednictvím kódu programu můžete definovat, nasazovat a spouštět úlohy Azure Databricks, kanály DLT a zásobníky MLOps s využitím osvědčených postupů a pracovních postupů CI/CD. |
Poskytovatel Terraformu pro Databricks | Zřiďte a spravujte infrastrukturu a prostředky Databricks pomocí Terraformu. |
Pracovní postupy CI/CD s použitím složek Git a Databricks Git | Ke správě zdrojového kódu a pracovním postupům CI/CD použijte složky GitHub a Databricks. |
Ověřování pomocí Azure DevOps v Databricks | Ověřování pomocí Azure DevOps |
Použijte služební hlavní jméno Microsoft Entra k ověřování přístupu ke složkám Git v Azure Databricks | Pomocí služebního principálu MS Entra autorizujte přístup ke složkám Git v Databricks. |
Kontinuální integrace a průběžné doručování v Azure Databricks pomocí Azure DevOps | Vyvíjejte kanál CI/CD pro Azure Databricks, který používá Azure DevOps. |
Průběžná integrace a doručování pomocí GitHub Actions | Vytvořte pracovní postup CI/CD na GitHubu, který používá GitHub Actions vyvinuté pro Azure Databricks. |
CI/CD s Jenkinsem v Azure Databricks | Vyvíjejte kanál CI/CD pro Azure Databricks, který používá Jenkinse. |
Orchestrace úloh Azure Databricks pomocí Apache Airflow | Spravujte a naplánujte datový kanál, který používá Apache Airflow. |
Instanční objekty pro CI/CD | Používejte služební servery místo uživatelů v systémech CI/CD. |