Udostępnij przez


Uruchamianie i debugowanie komórek notesu za pomocą usługi Databricks Connect przy użyciu rozszerzenia usługi Databricks dla programu Visual Studio Code

Notatniki można uruchamiać i debugować, jedną komórkę na raz lub wszystkie komórki jednocześnie, i wyświetlać ich wyniki w interfejsie Visual Studio Code, używając rozszerzenia Visual Studio Code Databricks Connect. Cały kod działa lokalnie, podczas gdy cały kod obejmujący operacje ramki danych jest uruchamiany w klastrze w zdalnym obszarze roboczym usługi Azure Databricks i uruchamiane odpowiedzi są wysyłane z powrotem do lokalnego obiektu wywołującego. Cały kod jest debugowany lokalnie, podczas gdy cały kod Platformy Spark nadal działa w klastrze w zdalnym obszarze roboczym usługi Azure Databricks. Nie można debugować podstawowego kodu silnika Spark bezpośrednio z klienta.

Uwaga

Ta funkcja działa w środowisku Databricks Runtime 13.3 lub nowszym.

Aby włączyć integrację usługi Databricks Connect dla notesów w rozszerzeniu Databricks dla programu Visual Studio Code, należy zainstalować program Databricks Connect w rozszerzeniu Databricks dla programu Visual Studio Code. Zobacz Debugowanie kodu przy użyciu usługi Databricks Connect dla rozszerzenia usługi Databricks dla programu Visual Studio Code.

Uruchom komórki notesu języka Python

W przypadku notesów z nazwami plików, które mają .py rozszerzenie, po otwarciu notesu w środowisku IDE programu Visual Studio Code każda komórka wyświetla przyciski Uruchom komórkę, Uruchom powyżej i Debuguj komórkę . Po uruchomieniu komórki jej wyniki są wyświetlane na osobnej karcie w środowisku IDE. Podczas debugowania komórka debugowana wyświetla przyciski Kontynuuj, Zatrzymaj i Przeskocz. Podczas debugowania komórki można użyć funkcji debugowania programu Visual Studio Code, takich jak obserwowanie stanów zmiennych i wyświetlanie stosu wywołań i konsoli debugowania.

W przypadku notesów, których nazwy plików mają rozszerzenie .ipynb, po otwarciu notesu w środowisku IDE Visual Studio Code, notes oraz jego komórki zawierają dodatkowe funkcje. Zobacz Uruchamianie komórek oraz Praca z komórkami kodu w Edytorze Notatek.

Aby uzyskać więcej informacji na temat formatów notesów dla nazw plików z rozszerzeniami .py i .ipynb, zobacz Importowanie i eksportowanie notesów usługi Databricks.

Uruchamianie komórek notesu Jupyter w języku Python

Aby uruchomić lub debugować notebook Jupyter w języku Python (.ipynb):

  1. W projekcie otwórz notes Jupyter języka Python, który chcesz uruchomić lub debugować. Upewnij się, że plik języka Python jest w formacie notesu Jupyter i ma rozszerzenie .ipynb.

    Napiwek

    Możesz utworzyć nowy notes Jupyter języka Python, uruchamiając >polecenie Create: New Jupyter Notebook z poziomu palety poleceń.

  2. Kliknij Uruchom wszystkie komórki, aby uruchomić wszystkie komórki bez debugowania, Wykonaj komórkę, aby uruchomić pojedynczą komórkę bez debugowania lub Uruchom po liniach, aby uruchomić pojedynczą komórkę wiersz po wierszu z ograniczonym debugowaniem, przy czym wartości zmiennych są wyświetlane w panelu Jupyter (View > Open View > Jupyter).

    Aby przeprowadzić pełne debugowanie w pojedynczej komórce, ustaw punkty przerwania, a następnie kliknij pozycję Debuguj komórkę w menu obok przycisku Uruchom komórki.

    Po kliknięciu dowolnej z tych opcji może zostać wyświetlony monit o zainstalowanie brakujących zależności pakietu notesu Jupyter w języku Python. Kliknij, aby zainstalować.

    Aby uzyskać więcej informacji, zobacz Jupyter Notebooks in VS Code (Notesy Jupyter w programie VS Code).

Zmienne globalne notatnika

Następujące globalne zmienne notatnika są również włączone:

  • spark, reprezentując wystąpienie databricks.connect.DatabricksSession, jest wstępnie skonfigurowane w celu utworzenia wystąpienia DatabricksSession przez pobranie poświadczeń uwierzytelniania usługi Azure Databricks z rozszerzenia. Jeśli DatabricksSession jest już instancjonowany w kodzie komórki notesu, te ustawienia DatabricksSession są używane zamiast tego. Zobacz Przykłady kodu dla programu Databricks Connect dla języka Python.

  • udf, wstępnie skonfigurowany jako alias dla pyspark.sql.functions.udf, który jest aliasem dla funkcji UDF języka Python. Zobacz pyspark.sql.functions.udf.

  • sql, wstępnie skonfigurowany jako alias dla .spark.sql spark, zgodnie z wcześniejszym opisem, reprezentuje wstępnie skonfigurowane wystąpienie klasy databricks.connect.DatabricksSession. Zobacz Spark SQL.

  • dbutils, wstępnie skonfigurowany jako instancja narzędzi Databricks, który jest importowany z databricks-sdk i instancjonowany przez pobranie poświadczeń uwierzytelniania Azure Databricks z rozszerzenia. Zobacz Korzystanie z narzędzi Databricks.

    Uwaga

    Tylko podzbiór narzędzi Databricks jest obsługiwany w przypadku notebooków z Databricks Connect.

    Aby włączyć dbutils.widgets, musisz najpierw zainstalować zestaw SDK Databricks dla języka Python, uruchamiając następujące polecenie w terminalu na lokalnej maszynie deweloperskiej.

    pip install 'databricks-sdk[notebook]'
    
  • display, wstępnie skonfigurowany jako alias dla wbudowanego IPython.display.displayprogramu Jupyter . Zobacz IPython.display.display.

  • displayHTML, wstępnie skonfigurowany jako alias dla elementu dbruntime.display.displayHTML, który jest aliasem dla elementu display.HTML z ipython. Zobacz IPython.display.html.

Magia notesów

Również włączone są następujące magiczne funkcje notatnika:

Dodatkowe funkcje, które są włączone, obejmują:

  • Ramki danych Spark są konwertowane na ramki danych pandas, które są wyświetlane w formacie Jupyter table.

Ograniczenia

Ograniczenia uruchamiania komórek w notesach w programie Visual Studio Code obejmują:

  • Magiczne funkcje notatnika %r i %scala nie są obsługiwane i wyświetlają błąd, jeśli zostaną wywołane. Zobacz Mieszanie języków.
  • Magia notatnika %sql nie obsługuje niektórych poleceń DML, takich jak Pokaż Tabele.