Udostępnij za pośrednictwem


Co to jest ciągła integracja/ciągłe wdrażanie w usłudze Azure Databricks?

Ten artykuł stanowi wprowadzenie do ciągłej integracji/ciągłego wdrażania w usłudze Databricks. Ciągła integracja i ciągłe dostarczanie (CI/CD) odnosi się do procesu opracowywania i dostarczania oprogramowania w krótkim czasie, często używanych potoków automatyzacji. Ciągła integracja/ciągłe wdrażanie jest często spotykana w tworzeniu oprogramowania i staje się coraz bardziej niezbędna do inżynierii danych i nauki o danych. Automatyzując kompilowanie, testowanie i wdrażanie kodu, zespoły programistyczne mogą dostarczać wydania bardziej niezawodnie niż w przypadku ręcznych procesów nadal wspólnych dla zespołów inżynierii danych i nauki o danych.

Usługa Azure Databricks zaleca korzystanie z pakietów zasobów usługi Databricks dla ciągłej integracji/ciągłego wdrażania, co umożliwia opracowywanie i wdrażanie złożonych projektów danych, analiz i uczenia maszynowego dla platformy Azure Databricks. Pakiety umożliwiają łatwe zarządzanie wieloma konfiguracjami niestandardowymi i automatyzowanie kompilacji, testów i wdrożeń projektów w obszarach roboczych tworzenia, przemieszczania i produkcji usługi Azure Databricks.

Aby zapoznać się z omówieniem ciągłej integracji/ciągłego wdrażania dla projektów uczenia maszynowego w usłudze Azure Databricks, zobacz Jak usługa Databricks obsługuje ciągłą integrację/ciągłe wdrażanie na potrzeby uczenia maszynowego?.

Co znajduje się w potoku ciągłej integracji/ciągłego wdrażania w usłudze Azure Databricks?

Za pomocą pakietów zasobów usługi Databricks można definiować implementację ciągłej integracji/ciągłego wdrażania usługi Azure Databricks i zarządzać nimi programowo, co zwykle obejmuje:

  • Notesy: notesy usługi Azure Databricks są często kluczowym elementem przepływów pracy inżynierii danych i nauki o danych. Możesz użyć kontroli wersji notesów, a także zweryfikować i przetestować je w ramach potoku ciągłej integracji/ciągłego wdrażania. Możesz uruchamiać testy automatyczne względem notesów, aby sprawdzić, czy działają zgodnie z oczekiwaniami.
  • Biblioteki: zarządzaj zależnościami biblioteki wymaganymi do uruchomienia wdrożonego kodu. Użyj kontroli wersji w bibliotekach i uwzględnij je w zautomatyzowanym testowaniu i walidacji.
  • Przepływy pracy: Zadania usługi Databricks składają się z zadań, które umożliwiają planowanie i uruchamianie zautomatyzowanych zadań przy użyciu notesów lub zadań platformy Spark.
  • Potoki danych: potoki danych można również uwzględnić w automatyzacji ciągłej integracji/ciągłego wdrażania, korzystając z tabel delta live, struktury w usłudze Databricks do deklarowania potoków danych.
  • Infrastruktura: Konfiguracja infrastruktury obejmuje definicje i informacje o aprowizacji dla klastrów, obszarów roboczych i magazynu dla środowisk docelowych. Zmiany infrastruktury można zweryfikować i przetestować w ramach potoku ciągłej integracji/ciągłego wdrażania, zapewniając, że są spójne i wolne od błędów.

Procedura ciągłej integracji/ciągłego wdrażania w usłudze Azure Databricks

Typowy przepływ potoku ciągłej integracji/ciągłego wdrażania usługi Azure Databricks obejmuje następujące kroki:

  1. Przechowywanie: przechowywanie kodu i notesów usługi Azure Databricks w systemie kontroli wersji, na przykład Git. Umożliwia to śledzenie zmian w czasie i współpracę z innymi członkami zespołu. Zapoznaj się z technikami ciągłej integracji/ciągłego wdrażania przy użyciu folderów Git i folderów Git usługi Databricks (Repos) i ustawień pakietu Git.
  2. Kod: Tworzenie kodu i testów jednostkowych w notesie usługi Azure Databricks w obszarze roboczym lub lokalnie przy użyciu zewnętrznego środowiska IDE. Usługa Azure Databricks udostępnia rozszerzenie programu Visual Studio Code, które ułatwia opracowywanie i wdrażanie zmian w obszarach roboczych usługi Azure Databricks.
  3. Kompilacja: użyj ustawień pakietów zasobów usługi Databricks, aby automatycznie tworzyć określone artefakty podczas wdrożeń. Zobacz artefakty. Ponadto rozszerzenie Pylint o wtyczkę pylint usługi Databricks Labs pomaga wymusić standardy kodowania i wykrywać błędy w notesach usługi Databricks i kodzie aplikacji.
  4. Wdrażanie: wdrażanie zmian w obszarze roboczym usługi Azure Databricks przy użyciu pakietów zasobów usługi Databricks w połączeniu z narzędziami takimi jak Azure DevOps, Jenkins lub GitHub Actions. Zobacz Tryby wdrażania pakietu zasobów usługi Databricks.
  5. Testowanie: twórz i uruchamiaj testy automatyczne, aby zweryfikować zmiany kodu przy użyciu narzędzi, takich jak pytest. Aby przetestować integrację z interfejsami API obszaru roboczego, wtyczka pytest usługi Databricks Labs umożliwia tworzenie obiektów obszaru roboczego i czyszczenie ich po zakończeniu testów.
  6. Uruchom: użyj interfejsu wiersza polecenia usługi Databricks w połączeniu z pakietami zasobów usługi Databricks, aby zautomatyzować przebiegi w obszarach roboczych usługi Azure Databricks. Zobacz Uruchamianie zadania lub potoku.
  7. Monitorowanie: monitorowanie wydajności kodu i przepływów pracy w usłudze Azure Databricks przy użyciu narzędzi, takich jak Azure Monitor lub Datadog. Pomaga to zidentyfikować i rozwiązać wszelkie problemy występujące w środowisku produkcyjnym.
  8. Iteracja: tworzenie małych, częstych iteracji w celu ulepszania i aktualizowania projektu inżynierii danych lub nauki o danych. Małe zmiany są łatwiejsze do wycofania niż duże.

Aby uzyskać więcej informacji na temat zarządzania cyklem życia zasobów i danych usługi Azure Databricks, zobacz poniższą dokumentację dotyczącą narzędzi ciągłej integracji/ciągłego wdrażania i potoku danych.

Obszar Użyj tych narzędzi, gdy chcesz...
Pakiety zasobów usługi Databricks Programowe definiowanie, wdrażanie i uruchamianie zadań usługi Azure Databricks, potoków delta live tables i stosów MLOps przy użyciu najlepszych rozwiązań i przepływów pracy ciągłej integracji/ciągłego wdrażania.
Dostawca narzędzia Terraform dla usługi Databricks Aprowizuj infrastrukturę i zasoby usługi Databricks oraz zarządzaj nimi przy użyciu narzędzia Terraform.
Przepływy pracy ciągłej integracji/ciągłego wdrażania z folderami Git i Databricks Użyj folderów GitHub i Databricks Git do kontroli źródła i przepływów pracy ciągłej integracji/ciągłego wdrażania.
Uwierzytelnianie za pomocą usługi Azure DevOps w usłudze Databricks Uwierzytelnianie za pomocą usługi Azure DevOps.
Uwierzytelnianie dostępu do folderów Git usługi Azure Databricks przy użyciu jednostki usługi Microsoft Entra Użyj jednostki usługi MS Entra, aby uwierzytelnić dostęp do folderów Git usługi Databricks.
Ciągła integracja i ciągłe dostarczanie w usłudze Azure Databricks przy użyciu usługi Azure DevOps Opracowywanie potoku ciągłej integracji/ciągłego wdrażania dla usługi Azure Databricks korzystającej z usługi Azure DevOps.
Ciągła integracja i ciągłe dostarczanie przy użyciu funkcji GitHub Actions Opracuj przepływ pracy ciągłej integracji/ciągłego wdrażania w usłudze GitHub, który korzysta z funkcji GitHub Actions opracowanej dla usługi Azure Databricks.
Ciągła integracja/ciągłe wdrażanie za pomocą usługi Jenkins w usłudze Azure Databricks Opracowywanie potoku ciągłej integracji/ciągłego wdrażania dla usługi Azure Databricks, który korzysta z usługi Jenkins.
Organizowanie zadań usługi Azure Databricks za pomocą platformy Apache Airflow Zarządzanie potokiem danych korzystającym z platformy Apache Airflow i planowanie go.
Jednostki usługi dla ciągłej integracji/ciągłego wdrażania Używaj jednostek usługi zamiast użytkowników z systemami ciągłej integracji/ciągłego wdrażania.