Omówienie kluczowych pojęć

Zakończone

Azure Databricks to pojedyncza platforma usługi z wieloma technologiami, które umożliwiają pracę z danymi na dużą skalę. W przypadku korzystania z usługi Azure Databricks istnieją pewne kluczowe pojęcia, które należy zrozumieć.

Obszary robocze

Obszar roboczy w usłudze Azure Databricks to bezpieczne środowisko współpracy, w którym można uzyskiwać dostęp do wszystkich zasobów usługi Databricks, takich jak notesy, klastry, zadania, biblioteki, pulpity nawigacyjne i eksperymenty.

Obszar roboczy usługi Azure Databricks można otworzyć w witrynie Azure Portal, wybierając pozycję Uruchom obszar roboczy.

Zrzut ekranu witryny Azure Portal przedstawiający stronę docelową usługi Azure Databricks.

Udostępnia internetowy interfejs użytkownika oraz interfejsy API REST do zarządzania zasobami i przepływami pracy. Obszary robocze mogą być ustrukturyzowane w folderach w celu organizowania projektów, potoków danych lub zasobów zespołu, a uprawnienia mogą być stosowane na różnych poziomach w celu kontrolowania dostępu. Obsługują współpracę, umożliwiając wielu użytkownikom — takim jak inżynierowie danych, analitycy i naukowcy danych — współpracę nad udostępnionymi notesami, śledzenie eksperymentów i zarządzanie zależnościami.

Obszary robocze są powiązane z Unity Catalog (po włączeniu) w celu centralizacji zarządzania danymi, co zapewnia bezpieczny dostęp do danych w całej organizacji. Każdy obszar roboczy jest również połączony z bazową grupą zasobów platformy Azure (w tym zarządzaną grupą zasobów), która przechowuje zasoby obliczeniowe, sieciowe i magazynowe, których usługa Databricks używa w tle.

Notebooks

Notesy Databricks to interaktywne dokumenty internetowe, które łączą kod, który można uruchamiać, wizualizacje i tekst narracyjny w jednym środowisku. Obsługują one wiele języków, takich jak Python, R, Scala i SQL, i umożliwiają użytkownikom przełączanie się między językami w tym samym notesie przy użyciu poleceń magic. Ta elastyczność sprawia, że notesy doskonale nadają się do eksploracyjnej analizy danych, wizualizacji danych, eksperymentów uczenia maszynowego i tworzenia złożonych potoków danych.

Notatniki zostały zaprojektowane do współpracy: wielu użytkowników może edytować i uruchamiać komórki jednocześnie, dodawać komentarze i dzielić się wnioskami w czasie rzeczywistym. Integrują się ściśle z klastrami Databricks, umożliwiając użytkownikom efektywne przetwarzanie dużych zestawów danych, i mogą łączyć się z zewnętrznymi źródłami danych za pośrednictwem Unity Catalog w celu uzyskania kontrolowanego dostępu do danych. Ponadto notesy mogą być kontrolowane wersją, zaplanowane jako zadania lub eksportowane do udostępniania poza platformą, co sprawia, że stanowią one centralny punkt zarówno dla pracy eksploracyjnej ad hoc, jak i przepływów pracy na poziomie produkcyjnym.

Notatniki zawierają kolekcję dwóch typów komórek: komórki kodu i komórki markdown. Komórki kodu zawierają kod możliwy do uruchomienia. Komórki Markdown zawierają kod Markdown, który jest renderowany jako tekst i grafika. Można uruchomić pojedynczą komórkę, grupę komórek lub cały notes.

Zrzut ekranu przedstawiający notes usługi Azure Databricks.

Klastry

Usługa Azure Databricks korzysta z architektury dwuwarstwowej:

  • Płaszczyzna sterowania: ta wewnętrzna warstwa zarządzana przez firmę Microsoft obsługuje usługi zaplecza specyficzne dla konta usługi Azure Databricks.
  • Płaszczyzna obliczeniowa: jest to warstwa zewnętrzna, która przetwarza dane i znajduje się w subskrypcji platformy Azure.

Diagram przedstawiający architekturę wysokiego poziomu usługi Azure Databricks.

Klastry to główne silniki obliczeniowe w usłudze Azure Databricks. Zapewniają moc obliczeniową wymaganą do uruchamiania zadań inżynierii danych, nauki o danych i analizy. Każdy klaster składa się z węzła sterownika, który koordynuje wykonywanie i co najmniej jeden węzeł roboczy, który obsługuje obliczenia rozproszone. Klastry można tworzyć ręcznie przy użyciu stałych zasobów lub ustawić na automatyczne skalowanie, co umożliwia usłudze Databricks dodawanie lub usuwanie węzłów roboczych w zależności od zapotrzebowania na obciążenie. Ta elastyczność zapewnia efektywne wykorzystanie zasobów i kontrolę kosztów.

Usługa Azure Databricks Compute oferuje szeroki zestaw opcji obliczeniowych dostępnych dla różnych typów obciążeń:

  • Obliczenia bezserwerowe: w pełni zarządzane zasoby obliczeniowe na żądanie, które automatycznie skaluje się w górę lub w dół, aby zaspokoić potrzeby obciążeń. Idealne rozwiązanie dla zespołów, które chcą szybki czas uruchamiania, minimalnymi wymaganiami zarządzania i elastyczne skalowanie.
  • Klasyczne zasoby obliczeniowe: aprowizowane i skonfigurowane przez użytkownika klastry, które zapewniają pełną kontrolę nad ustawieniami obliczeniowymi, takimi jak rozmiary maszyn wirtualnych, biblioteki i wersje środowiska uruchomieniowego. Najlepsze w przypadku wyspecjalizowanych obciążeń wymagających dostosowania lub spójnej wydajności.
  • Magazyny SQL: zasoby obliczeniowe zoptymalizowane pod kątem analizy opartej na języku SQL i zapytań analizy biznesowej. Magazyny SQL można aprowizować jako bezserwerowe (elastyczne, zarządzane) lub klasyczne (skonfigurowane przez użytkownika) w zależności od wymagań dotyczących ładu i wydajności.

Dzięki temu można dostosować zasoby obliczeniowe do określonych potrzeb — od eksploracyjnej analizy w notesach, po potoki ETL na dużą skalę, po pulpity nawigacyjne i raporty o wysokiej wydajności.

Databricks Runtime

Środowisko Databricks Runtime to zestaw dostosowanych kompilacji platformy Apache Spark, które obejmują ulepszenia wydajności i dodatkowe biblioteki. Te środowiska uruchomieniowe ułatwiają obsługę zadań, takich jak uczenie maszynowe, przetwarzanie grafów i genomiki, przy jednoczesnym zachowaniu ogólnej obsługi przetwarzania i analizy danych.

Usługa Databricks udostępnia wiele wersji środowiska uruchomieniowego, w tym wersje długoterminowego wsparcia (LTS). Każda wersja określa podstawową wersję platformy Apache Spark, jej datę wydania i czas zakończenia wsparcia technicznego. Z biegiem czasu, starsze wersje środowiska uruchomieniowego podlegają cyklowi życia.

  • Starsza wersja — dostępna, ale nie jest już zalecana.
  • Przestarzałe — oznaczane do usunięcia w przyszłej wersji.
  • Koniec wsparcia technicznego (EoS) — nie są udostępniane żadne kolejne poprawki ani łatki.
  • Koniec życia (EoL) — wycofany i niedostępny.

Jeśli aktualizacja konserwacji zostanie wydana dla używanej wersji środowiska uruchomieniowego, możesz ją zastosować, uruchamiając ponownie klaster.

Zadania Lakeflow

Lakeflow Jobs zapewniają automatyzację i orkiestrację przepływu pracy w usłudze Azure Databricks, umożliwiając niezawodne planowanie, koordynowanie i uruchamianie zadań przetwarzania danych. Zamiast ręcznie uruchamiać kod, można używać zadań do automatyzowania powtarzających się lub produkcyjnych obciążeń, takich jak potoki ETL, trenowanie uczenia maszynowego lub odświeżanie pulpitu nawigacyjnego.

Zrzut ekranu przedstawiający stronę docelową zadań usługi Azure Databricks.

Zadanie w usłudze Databricks jest zasadniczo kontenerem dla co najmniej jednego zadania. Zadania definiują pracę do wykonania — na przykład uruchomienie notesu, wykonanie zadania platformy Spark, wywołanie kodu zewnętrznego, ...

Zadania mogą być wyzwalane na różne sposoby:

  • Zgodnie z harmonogramem (na przykład każdej nocy o północy).
  • W odpowiedzi na zdarzenie.
  • Ręcznie, w razie potrzeby.

Ponieważ są powtarzalne i zarządzane, zadania mają krytyczne znaczenie dla obciążeń produkcyjnych. Zapewniają one spójne uruchamianie potoków danych, modele uczenia maszynowego są trenowane i wdrażane w kontrolowany sposób, a systemy podrzędne otrzymują zaktualizowane, dokładne dane.

Delta Lake

Usługa Delta Lake to platforma magazynu typu open source, która zwiększa niezawodność i skalowalność magazynów danych przez dodanie funkcji transakcyjnych w magazynie obiektów w chmurze, takich jak usługa Azure Data Lake Storage. Tradycyjne jeziora danych mogą mieć problemy, takie jak niespójne dane, częściowe zapisy lub trudności z zarządzaniem równoczesnym dostępem. Usługa Delta Lake rozwiązuje te problemy, obsługując następujące funkcje:

  • Transakcje ACID (atomowość, spójność, izolacja, trwałość) dla niezawodnych odczytów i zapisów.
  • Skalowalna obsługa metadanych , dzięki czemu tabele mogą rosnąć do miliardów plików bez utraty wydajności.
  • Przechowywanie wersji danych i wycofywanie, co umożliwia wykonywanie zapytań dotyczących podróży w czasie i odzyskiwanie poprzednich stanów.
  • Ujednolicone przetwarzanie wsadowe i strumieniowe, dzięki czemu ta sama tabela może obsługiwać pozyskiwanie danych w czasie rzeczywistym i historyczne obciążenia wsadowe.

Oprócz tej podstawy tabele delty udostępniają znaną abstrakcję tabeli, która ułatwia pracę z danymi ustrukturyzowanymi przy użyciu zapytań SQL lub interfejsu API ramki danych. Tabele Delta to domyślny format tabeli w usłudze Azure Databricks, co zapewnia, że nowe dane są domyślnie przechowywane z gwarancjami transakcyjnymi.

Język SQL usługi Databricks

Usługa Databricks SQL oferuje możliwości magazynowania danych w usłudze Databricks Lakehouse, umożliwiając analitykom i użytkownikom biznesowym wykonywanie zapytań i wizualizowanie danych przechowywanych w otwartych formatach bezpośrednio w usłudze Data Lake. Obsługuje ona usługę ANSI SQL, więc każdy, kto zna język SQL, może uruchamiać zapytania, tworzyć raporty i tworzyć pulpity nawigacyjne bez konieczności uczenia się nowych języków lub narzędzi.

Usługa Databricks SQL jest dostępna tylko w warstwie Premium usługi Azure Databricks. Zawartość:

  • Edytor SQL do pisania i uruchamiania zapytań.
  • Pulpity nawigacyjne i narzędzia do wizualizacji umożliwiające udostępnianie szczegółowych informacji.
  • Integracja z zewnętrznymi narzędziami BI i analizy.

Magazyny SQL

Wszystkie zapytania SQL usługi Databricks są uruchamiane w magazynach SQL (dawniej nazywanych punktami końcowymi SQL), które są skalowalnymi zasobami obliczeniowymi oddzielonymi od magazynu. Różne typy magazynów są dostępne w zależności od wydajności, kosztów i potrzeb w zakresie zarządzania:

  • Bezserwerowe magazyny danych SQL

    • Natychmiastowe i elastyczne obliczenia dzięki szybkiemu uruchamianiu i automatycznemu skalowaniu.
    • Niskie obciążenie związane z zarządzaniem, ponieważ Usługa Databricks zarządza pojemnością, stosowaniem poprawek i optymalizacją.
    • Efektywność kosztowa dzięki automatycznemu skalowaniu i unikaniu kosztów bezczynnych zasobów.
  • Magazyny Pro SQL

    • Większa możliwość dostosowywania, ale wolniejsza do uruchomienia (≈4 minuty).
    • Mniej dynamiczne skalowanie automatyczne w porównaniu z rozwiązaniami bezserwerowymi.
    • Przydatne, gdy wymagane są spójne, przewidywalne obciążenia.
  • Klasyczne magazyny SQL

    • Zasoby obliczeniowe są uruchamiane we własnej subskrypcji platformy Azure, a nie w usłudze Databricks.
    • Mniej elastyczny niż bezserwerowy, ale może być preferowany dla konkretnych wymagań dotyczących ładu lub zarządzania kosztami.

MLflow

MLflow to platforma typu open source przeznaczona do zarządzania cyklem życia kompleksowego uczenia maszynowego (ML). Pomaga to analitykom danych i inżynierom uczenia maszynowego śledzić eksperymenty, zarządzać modelami i usprawniać proces przenoszenia modeli z programowania do produkcji. Platforma MLflow obsługuje również generowanie przepływów pracy sztucznej inteligencji i zawiera narzędzia do oceniania i ulepszania agentów sztucznej inteligencji.