So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (2023)

  • Artikel

Ein Synapse-Notizbuch ist eine Weboberfläche, über die Sie Dateien erstellen können, die Live-Code, Visualisierungen und narrativen Text enthalten. Notizbücher sind ein guter Ort, um Ideen zu validieren und schnelle Experimente zu nutzen, um Erkenntnisse aus Ihren Daten zu gewinnen. Notebooks werden auch häufig in der Datenaufbereitung, Datenvisualisierung, beim maschinellen Lernen und anderen Big-Data-Szenarien eingesetzt.

Mit einem Synapse-Notizbuch können Sie:

  • Beginnen Sie ohne Einrichtungsaufwand.
  • Schützen Sie Ihre Daten mit integrierten Sicherheitsfunktionen für Unternehmen.
  • Analysieren Sie Daten in Rohformaten (CSV, txt, JSON usw.), verarbeiteten Dateiformaten (Parkett, Delta Lake, ORC usw.) und SQL-Tabellendatendateien mit Spark und SQL.
  • Seien Sie produktiv mit erweiterten Authoring-Funktionen und integrierter Datenvisualisierung.

In diesem Artikel wird beschrieben, wie Sie Notizbücher in Synapse Studio verwenden.

Erstellen Sie ein Notizbuch

Es gibt zwei Möglichkeiten, ein Notizbuch zu erstellen. Sie können ein neues Notizbuch erstellen oder ein vorhandenes Notizbuch aus dem in einen Synapse-Arbeitsbereich importierenObjekt-Explorer. Synapse-Notebooks erkennen Standard-IPYNB-Dateien von Jupyter Notebook.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (1)

Entwickeln Sie Notizbücher

Notizbücher bestehen aus Zellen, bei denen es sich um einzelne Code- oder Textblöcke handelt, die unabhängig oder als Gruppe ausgeführt werden können.

Wir bieten umfangreiche Operationen zur Entwicklung von Notebooks:

  • Fügen Sie eine Zelle hinzu
  • Legen Sie eine primäre Sprache fest
  • Verwenden Sie mehrere Sprachen
  • Verwenden Sie temporäre Tabellen, um Daten sprachübergreifend zu referenzieren
  • IntelliSense im IDE-Stil
  • Code Ausschnitte
  • Textzelle mit Symbolleistenschaltflächen formatieren
  • Zellenoperation rückgängig machen/wiederholen
  • Kommentieren von Codezellen
  • Eine Zelle verschieben
  • Eine Zelle löschen
  • Reduzieren Sie eine Zelleneingabe
  • Reduzieren Sie eine Zellenausgabe
  • Notizbuchgliederung

Fügen Sie eine Zelle hinzu

Es gibt mehrere Möglichkeiten, Ihrem Notizbuch eine neue Zelle hinzuzufügen.

  1. Bewegen Sie den Mauszeiger über den Raum zwischen zwei Zellen und wählen Sie ausCodeoderAbschlag.So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (2)

  2. Verwendenaznb Tastenkombinationen im Befehlsmodus. Drücken SieAum eine Zelle oberhalb der aktuellen Zelle einzufügen. Drücken SieBum eine Zelle unterhalb der aktuellen Zelle einzufügen.

Legen Sie eine primäre Sprache fest

Synapse-Notebooks unterstützen vier Apache Spark-Sprachen:

  • PySpark (Python)
  • Funke (Scala)
  • Spark SQL
  • .NET Spark (C#)
  • SparkR (R)

Sie können die Primärsprache für neu hinzugefügte Zellen über die Dropdown-Liste in der oberen Befehlsleiste festlegen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (3)

Verwenden Sie mehrere Sprachen

Sie können mehrere Sprachen in einem Notizbuch verwenden, indem Sie am Anfang einer Zelle den richtigen Sprachbefehl angeben. In der folgenden Tabelle sind die magischen Befehle zum Wechseln der Zellsprache aufgeführt.

Magischer BefehlSpracheBeschreibung
%%pissparkPythonFühren Sie a ausPythonAbfrage gegen Spark-Kontext.
%%FunkeScalaFühren Sie a ausScalaAbfrage gegen Spark-Kontext.
%%sqlSparkSQLFühren Sie a ausSparkSQLAbfrage gegen Spark-Kontext.
%%csharp.NET für Spark C#Führen Sie a aus.NET für Spark C#Abfrage gegen Spark-Kontext.
%%parkrRFühren Sie a ausRAbfrage gegen Spark-Kontext.

Das folgende Bild ist ein Beispiel dafür, wie Sie eine PySpark-Abfrage mit schreiben können%%pissparkMagic-Befehl oder eine SparkSQL-Abfrage mit dem%%sqlmagischer Befehl in aFunke (Scala)Notizbuch. Beachten Sie, dass die primäre Sprache für das Notebook auf pySpark eingestellt ist.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (4)

Verwenden Sie temporäre Tabellen, um Daten sprachübergreifend zu referenzieren

Sie können in einem Synapse-Notizbuch nicht direkt auf Daten oder Variablen in verschiedenen Sprachen verweisen. In Spark kann eine temporäre Tabelle sprachübergreifend referenziert werden. Hier ist ein Beispiel dafür, wie man a liestScalaDataFrame inPySparkUndSparkSQLVerwenden einer temporären Spark-Tabelle als Problemumgehung.

  1. Lesen Sie in Zelle 1 einen DataFrame aus einem SQL-Pool-Connector mithilfe von Scala und erstellen Sie eine temporäre Tabelle.

    %%sparkval scalaDataFrame = spark.read.sqlanalytics("mySQLPoolDatabase.dbo.mySQLPoolTable")scalaDataFrame.createOrReplaceTempView( "mydataframetable" )
  2. Fragen Sie in Zelle 2 die Daten mit Spark SQL ab.

    %%sqlSELECT * FROM mydataframetable
  3. Verwenden Sie in Zelle 3 die Daten in PySpark.

    %%pysparkmyNewPythonDataFrame = spark.sql("SELECT * FROM mydataframetable")

IntelliSense im IDE-Stil

Synapse-Notizbücher sind in den Monaco-Editor integriert, um IntelliSense im IDE-Stil in den Zelleneditor zu bringen. Syntaxhervorhebung, Fehlermarkierung und automatische Codevervollständigung helfen Ihnen, Code zu schreiben und Probleme schneller zu identifizieren.

Die IntelliSense-Funktionen weisen für verschiedene Sprachen unterschiedliche Reifegrade auf. Verwenden Sie die folgende Tabelle, um zu sehen, was unterstützt wird.

SprachenSyntax-HighlightSyntaxfehlermarkierungVervollständigung des SyntaxcodesVervollständigung des VariablencodesVervollständigung des SystemfunktionscodesVervollständigung des BenutzerfunktionscodesIntelligente EinrückungCode-Faltung
PySpark (Python)JaJaJaJaJaJaJaJa
Funke (Scala)JaJaJaJaJaJa-Ja
SparkSQLJaJaJaJaJa---
.NET für Spark (C#)JaJaJaJaJaJaJaJa

Notiz

Eine aktive Spark-Sitzung ist erforderlich, um die variable Code-Vervollständigung, die Systemfunktionscode-Vervollständigung und die Benutzerfunktionscode-Vervollständigung für .NET für Spark (C#) zu nutzen.

Code Ausschnitte

Synapse-Notebooks bieten Codeausschnitte, die die Eingabe häufig verwendeter Codemuster erleichtern, z. B. das Konfigurieren Ihrer Spark-Sitzung, das Lesen von Daten als Spark DataFrame oder das Zeichnen von Diagrammen mit Matplotlib usw.

Schnipsel erscheinen inTastenkombinationen im IDE-Stil von IntelliSensegemischt mit anderen Vorschlägen. Der Inhalt der Codeausschnitte stimmt mit der Sprache der Codezelle überein. Durch Eingabe können Sie die verfügbaren Snippets anzeigenAusschnittoder beliebige Schlüsselwörter werden im Snippet-Titel im Codezelleneditor angezeigt. Zum Beispiel durch TippenlesenSie können die Liste der Snippets zum Lesen von Daten aus verschiedenen Datenquellen sehen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (5)

Textzelle mit Symbolleistenschaltflächen formatieren

Sie können die Formatierungsschaltflächen in der Textzellen-Symbolleiste verwenden, um allgemeine Markdown-Aktionen durchzuführen. Es umfasst Fettschrift, Kursivschrift, Absätze/Überschriften über ein Dropdown-Menü, das Einfügen von Code, das Einfügen einer ungeordneten Liste, das Einfügen einer geordneten Liste, das Einfügen eines Hyperlinks und das Einfügen eines Bildes aus einer URL.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (6)

Zellenoperation rückgängig machen/wiederholen

Wähle ausRückgängig machen/WiederholenTaste oder drückenZ/Umschalt+Zum die letzten Zelloperationen zu widerrufen. Jetzt können Sie bis zu 10 historische Zelloperationen rückgängig machen/wiederholen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (7)

Unterstützte Vorgänge zum Rückgängigmachen von Zellen:

  • Zelle einfügen/löschen: Sie können die Löschvorgänge durch Auswählen widerrufenRückgängig machen, wird der Textinhalt zusammen mit der Zelle beibehalten.
  • Zelle neu anordnen.
  • Parameter umschalten.
  • Konvertieren Sie zwischen Codezelle und Markdownzelle.

Notiz

Textoperationen innerhalb der Zelle und Kommentierungsoperationen in Codezellen können nicht rückgängig gemacht werden. Jetzt können Sie bis zu den letzten 10 historischen Zelloperationen rückgängig machen/wiederholen.

Kommentieren von Codezellen

  1. WählenKommentareKlicken Sie zum Öffnen auf die Schaltfläche in der Symbolleiste des NotizbuchsKommentareFeld.

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (8)

  2. Wählen Sie den Code in der Codezelle aus und klicken Sie aufNeuimKommentareBereich, fügen Sie Kommentare hinzu und klicken Sie dannKommentar hinzufügenSchaltfläche zum Speichern.

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (9)

  3. Du könntest auftretenKommentar bearbeiten,Thread auflösen, oderThread löschenindem Sie auf klickenMehrSchaltfläche neben Ihrem Kommentar.

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (10)

Eine Zelle verschieben

Klicken Sie auf die linke Seite einer Zelle und ziehen Sie sie an die gewünschte Position.So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (11)

Eine Zelle löschen

Um eine Zelle zu löschen, wählen Sie die Schaltfläche „Löschen“ rechts neben der Zelle aus.

Sie können auch verwendenTastenkombinationen im Befehlsmodus. Drücken SieUmschalt+Dum die aktuelle Zelle zu löschen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (12)

Reduzieren Sie eine Zelleneingabe

Wähle ausWeitere BefehleEllipsen (...) in der Zellensymbolleiste undEingabe ausblendenum die Eingabe der aktuellen Zelle zu reduzieren. Um es zu erweitern, wählen Sie das ausEingabe anzeigenwährend die Zelle kollabiert.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (13)

Reduzieren Sie eine Zellenausgabe

Wähle ausWeitere BefehleEllipsen (...) in der Zellensymbolleiste undAusgabe ausblendenum die Ausgabe der aktuellen Zelle zu reduzieren. Um es zu erweitern, wählen Sie das ausAusgabe anzeigenwährend die Ausgabe der Zelle ausgeblendet ist.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (14)

Notizbuchgliederung

Die Gliederungen (Inhaltsverzeichnis) stellen zur schnellen Navigation den ersten Markdown-Header jeder Markdown-Zelle in einem Seitenleistenfenster dar. Die Seitenleiste „Outlines“ kann in der Größe geändert und zusammengeklappt werden, um sie optimal an den Bildschirm anzupassen. Sie können die auswählenUmrissKlicken Sie auf die Schaltfläche in der Befehlsleiste des Notebooks, um die Seitenleiste zu öffnen oder auszublenden

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (15)

Führen Sie Notebooks aus

Sie können die Codezellen in Ihrem Notebook einzeln oder alle auf einmal ausführen. Der Status und Fortschritt jeder Zelle wird im Notizbuch dargestellt.

Führen Sie eine Zelle aus

Es gibt mehrere Möglichkeiten, den Code in einer Zelle auszuführen.

  1. Bewegen Sie den Mauszeiger über die Zelle, die Sie ausführen möchten, und wählen Sie die ausZelle ausführenTaste oder drückenStrg+Eingabetaste.

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (16)

  2. VerwendenTastenkombinationen im Befehlsmodus. Drücken SieUmschalt+Eingabetasteum die aktuelle Zelle auszuführen und die Zelle darunter auszuwählen. Drücken SieAlt+Enterum die aktuelle Zelle auszuführen und darunter eine neue Zelle einzufügen.

Führen Sie alle Zellen aus

Wähle ausAlle ausführenKlicken Sie auf die Schaltfläche, um alle Zellen im aktuellen Notizbuch nacheinander auszuführen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (17)

Führen Sie alle Zellen darüber oder darunter aus

Erweitern Sie die Dropdown-Liste vonAlles ausführendrücken und dann auswählenFühren Sie die Zellen oben ausum alle Zellen über dem Strom nacheinander laufen zu lassen. WählenFühren Sie die folgenden Zellen ausum alle Zellen unterhalb des Stroms nacheinander laufen zu lassen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (18)

Alle laufenden Zellen abbrechen

Wähle ausAlle AbsagenKlicken Sie auf die Schaltfläche, um die laufenden oder in der Warteschlange wartenden Zellen abzubrechen.So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (19)

Notebook-Referenz

Sie können verwenden%run magischer Befehl zum Verweisen auf ein anderes Notizbuch im Kontext des aktuellen Notizbuchs. Alle im Referenznotizbuch definierten Variablen sind im aktuellen Notizbuch verfügbar.%laufenDer Magic-Befehl unterstützt verschachtelte Aufrufe, jedoch keine rekursiven Aufrufe. Sie erhalten eine Ausnahme, wenn die Anweisungstiefe größer als istfünf.

Beispiel:%run //Notebook1 { "parameterInt": 1, "parameterFloat": 2.5, "parameterBool": true, "parameterString": "abc" }.

Die Notebook-Referenz funktioniert sowohl im interaktiven Modus als auch in der Synapse-Pipeline.

Notiz

  • %laufenDer Befehl unterstützt derzeit nur die Übergabe eines absoluten Pfads oder Notebook-Namens als Parameter, ein relativer Pfad wird nicht unterstützt.
  • %laufenDer Befehl unterstützt derzeit nur 4 Parameterwerttypen:int,schweben,bool,Zeichenfolge, Variablenersetzungsoperationen werden nicht unterstützt.
  • Die referenzierten Notizbücher müssen veröffentlicht werden. Sie müssen die Notizbücher veröffentlichen, um darauf zu verweisen, es sei dennReferenz unveröffentlichtes Notizbuchaktiviert. Synapse Studio erkennt die unveröffentlichten Notebooks aus dem Git-Repository nicht.
  • Referenzierte Notebooks unterstützen keine Aussage, dass die Tiefe größer ist alsfünf.

Variablen-Explorer

Synapse Notebook bietet einen integrierten Variablen-Explorer, mit dem Sie die Liste der Variablennamen, -typen, -längen und -werte in der aktuellen Spark-Sitzung für PySpark-Zellen (Python) anzeigen können. Weitere Variablen werden automatisch angezeigt, wenn sie in den Codezellen definiert werden. Durch Klicken auf jede Spaltenüberschrift werden die Variablen in der Tabelle sortiert.

Sie können die auswählenVariablenKlicken Sie auf die Schaltfläche in der Befehlsleiste des Notebooks, um den Variablen-Explorer zu öffnen oder auszublenden.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (20)

Notiz

Der Variablen-Explorer unterstützt nur Python.

Zellenstatusanzeige

Unterhalb der Zelle wird eine Schritt-für-Schritt-Anleitung zum Zellausführungsstatus angezeigt, damit Sie den aktuellen Fortschritt sehen können. Sobald der Zelldurchlauf abgeschlossen ist, wird eine Ausführungszusammenfassung mit der Gesamtdauer und der Endzeit angezeigt und zur späteren Bezugnahme dort aufbewahrt.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (21)

Spark-Fortschrittsanzeige

Das Synapse-Notebook basiert ausschließlich auf Spark. Codezellen werden remote im serverlosen Apache Spark-Pool ausgeführt. Eine Spark-Job-Fortschrittsanzeige mit Echtzeit-Fortschrittsbalken hilft Ihnen dabei, den Status der Jobausführung zu verstehen. Die Anzahl der Aufgaben pro Job oder Phase hilft Ihnen dabei, die Parallelitätsebene Ihres Spark-Jobs zu ermitteln. Sie können auch einen tieferen Einblick in die Spark-Benutzeroberfläche eines bestimmten Jobs (oder einer bestimmten Phase) erhalten, indem Sie den Link im Namen des Jobs (oder der Phase) auswählen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (22)

Spark-Sitzungskonfiguration

Sie können die Timeout-Dauer, die Anzahl und die Größe der Executoren angeben, die der aktuellen Spark-Sitzung zugewiesen werden sollenSitzung konfigurieren. Starten Sie die Spark-Sitzung neu, damit die Konfigurationsänderungen wirksam werden. Alle zwischengespeicherten Notebook-Variablen werden gelöscht.

Sie können auch eine Konfiguration aus der Apache Spark-Konfiguration erstellen oder eine vorhandene Konfiguration auswählen. Einzelheiten finden Sie unterApache Spark-Konfigurationsverwaltung.

Zauberbefehl für die Spark-Sitzungskonfiguration

Sie können Spark-Sitzungseinstellungen auch über einen magischen Befehl festlegen%%konfigurieren. Die Spark-Sitzung muss neu gestartet werden, damit die Einstellungen wirksam werden. Wir empfehlen Ihnen, das auszuführen%%konfigurierenam Anfang Ihres Notizbuchs. Hier ist ein Beispiel, siehehttps://github.com/cloudera/livy#request-bodyfür eine vollständige Liste der gültigen Parameter.

%%configure{ //Eine Liste gültiger Parameter zum Konfigurieren der Sitzung erhalten Sie unter https://github.com/cloudera/livy#request-body. „driverMemory“: „28g“, // Empfohlene Werte: [„28g“, „56g“, „112g“, „224g“, „400g“, „472g“] „driverCores“:4, // Empfohlene Werte: [ 4, 8, 16, 32, 64, 80] „executorMemory“: „28g“, „executorCores“:4, „jars“:[“abfs[s]://@.dfs.core .windows.net//myjar.jar","wasb[s]://@.blob.core.windows.net//myjar1.jar"], "conf ":{ //Beispiel einer Standard-Spark-Eigenschaft. Weitere verfügbare Eigenschaften finden Sie unter:https://spark.apache.org/docs/latest/configuration.html#application-properties. „spark.driver.maxResultSize“: „10g“, //Beispiel für eine benutzerdefinierte Eigenschaft. Sie können die Anzahl der Zeilen angeben, die Spark SQL zurückgibt, indem Sie „livy.rsc.sql.num-rows“ konfigurieren. „livy.rsc.sql.num-rows“: „3000“ }}

Notiz

  • Es wird empfohlen, „DriverMemory“ und „ExecutorMemory“ in %%configure auf denselben Wert festzulegen, ebenso wie „driverCores“ und „executorCores“.
  • Sie können %%configure in Synapse-Pipelines verwenden. Wenn es jedoch nicht in der ersten Codezelle festgelegt ist, schlägt die Pipelineausführung fehl, da die Sitzung nicht neu gestartet werden kann.
  • Das in mssparkutils.notebook.run verwendete %%configure wird ignoriert, aber das in %run verwendete Notebook wird weiterhin ausgeführt.
  • Im „conf“-Körper müssen die standardmäßigen Spark-Konfigurationseigenschaften verwendet werden. Wir unterstützen keine Referenzen der ersten Ebene für die Spark-Konfigurationseigenschaften.
  • Einige spezielle Spark-Eigenschaften, darunter „spark.driver.cores“, „spark.executor.cores“, „spark.driver.memory“, „spark.executor.memory“, „spark.executor.instances“, werden in nicht wirksam „conf“-Körper.

Parametrisierte Sitzungskonfiguration aus der Pipeline

Mit der parametrisierten Sitzungskonfiguration können Sie den Wert in %%configure magic durch Pipeline-Laufparameter (Notebook-Aktivität) ersetzen. Beim Vorbereiten der %%configure-Codezelle können Sie Standardwerte (ebenfalls konfigurierbar, 4 und „2000“ im folgenden Beispiel) mit einem Objekt wie diesem überschreiben:

{ „activityParameterName“: „paramterNameInPipelineNotebookActivity“, „defaultValue“: „defaultValueIfNoParamterFromPipelineNotebookActivity“}
%%configure { "driverCores": { "activityParameterName": "driverCoresFromNotebookActivity", "defaultValue": 4 }, "conf": { "livy.rsc.sql.num-rows": { "activityParameterName": "rows", "defaultValue": "2000" } } }

Notebook verwendet den Standardwert, wenn ein Notebook direkt im interaktiven Modus ausgeführt wird oder kein Parameter, der mit „activityParameterName“ übereinstimmt, aus der Pipeline Notebook-Aktivität angegeben wird.

Im Pipeline-Ausführungsmodus können Sie die Aktivitätseinstellungen des Pipeline-Notebooks wie folgt konfigurieren:So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (24)

Wenn Sie die Sitzungskonfiguration ändern möchten, sollte der Name der Pipeline-Notebook-Aktivitätsparameter mit dem Aktivitätsparameternamen im Notebook übereinstimmen. Beim Ausführen dieser Pipeline werden in diesem Beispiel „driverCores“ in „%%configure“ durch 8 und „livy.rsc.sql.num-rows“ durch 4000 ersetzt.

Notiz

Wenn die Ausführung der Pipeline aufgrund der Verwendung dieses neuen %%configure magic fehlgeschlagen ist, können Sie weitere Fehlerinformationen überprüfen, indem Sie die Zelle %%configure magic im interaktiven Modus des Notebooks ausführen.

Bringen Sie Daten in ein Notebook

Sie können Daten aus Azure Blob Storage, Azure Data Lake Store Gen 2 und einem SQL-Pool laden, wie in den folgenden Codebeispielen gezeigt.

Lesen Sie eine CSV aus Azure Data Lake Store Gen2 als Spark DataFrame

from pyspark.sql import SparkSessionfrom pyspark.sql.types import *account_name = "Ihr Kontoname"container_name = "Ihr Containername"relative_path = "Ihr Pfad"adls_path = 'abfss://%s@%s.dfs.core. windows.net/%s' % (Containername, Kontoname, relativer_Pfad)df1 = spark.read.option('header', 'true') \ .option('delimiter', ',') \ .csv(adls_path + ' /Testfile.csv‘)

Lesen Sie eine CSV-Datei aus Azure Blob Storage als Spark DataFrame

aus pyspark.sql import SparkSession# Azure-Speicherzugriff infoblob_account_name = 'Ihr Kontoname' # durch Ihren Blobnamen ersetzenblob_container_name = 'Ihr Containername' # durch Ihren Containernamen ersetzenblob_relative_path = 'Ihr Pfad' # durch Ihren relativen Ordner ersetzen pathlinked_service_name = 'Ihr Name des verknüpften Dienstes' # durch den Namen Ihres verknüpften Dienstes ersetzenblob_sas_token = mssparkutils.credentials.getConnectionStringOrCreds(linked_service_name)# Erlauben Sie SPARK den Zugriff von Blob remotelywasb_path = 'wasbs://%s@%s.blob.core.windows.net/%s ' % (blob_container_name, blob_account_name, blob_relative_path)spark.conf.set('fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name), blob_sas_token)print('Remote-Blob Pfad: ' + wasb_path)df = spark.read.option("header", "true") \ .option("delimiter","|") \ .schema(schema) \ .csv(wasbs_path)

Lesen Sie Daten vom primären Speicherkonto

Sie können direkt auf Daten im primären Speicherkonto zugreifen. Es ist nicht erforderlich, die geheimen Schlüssel bereitzustellen. Klicken Sie im Daten-Explorer mit der rechten Maustaste auf eine Datei und wählen Sie sie ausNeues Notizbuchum ein neues Notizbuch mit automatisch generiertem Datenextraktor anzuzeigen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (25)

Widgets sind ereignisgesteuerte Python-Objekte, die im Browser dargestellt werden, häufig als Steuerelement wie ein Schieberegler, ein Textfeld usw. IPython-Widgets funktionieren nur in der Python-Umgebung und werden in anderen Sprachen (z. B. Scala, SQL, C#) noch nicht unterstützt.

So verwenden Sie das IPython-Widget

  1. Sie müssen importierenipywidgetsModul zuerst, um das Jupyter Widget-Framework zu verwenden.

    ipywidgets als Widgets importieren
  2. Sie können die oberste Ebene verwendenAnzeigeFunktion zum Rendern eines Widgets oder zum Hinterlassen eines Ausdrucks davonWidgetGeben Sie in die letzte Zeile der Codezelle ein.

    slider = widgets.IntSlider()display(slider)
    slider = widgets.IntSlider()slider
  3. Führen Sie die Zelle aus, das Widget wird im Ausgabebereich angezeigt.

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (26)

  4. Sie können mehrere verwendenAnzeige()Aufrufe zum Rendern derselben Widget-Instanz mehrmals, sie bleiben jedoch miteinander synchron.

    slider = widgets.IntSlider()display(slider)display(slider)

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (27)

  5. Um zwei Widgets unabhängig voneinander darzustellen, erstellen Sie zwei Widget-Instanzen:

    slider1 = widgets.IntSlider()slider2 = widgets.IntSlider()display(slider1)display(slider2)

Unterstützte Widgets

Widgets-TypWidgets
Numerische WidgetsIntSlider, FloatSlider, FloatLogSlider, IntRangeSlider, FloatRangeSlider, IntProgress, FloatProgress, BoundedIntText, BoundedFloatText, IntText, FloatText
Boolesche WidgetsToggleButton, Kontrollkästchen, gültig
Auswahl-WidgetsDropdown, RadioButtons, Select, SelectionSlider, SelectionRangeSlider, ToggleButtons, SelectMultiple
String-WidgetsText, Textbereich, Combobox, Passwort, Beschriftung, HTML, HTML-Mathematik, Bild, Schaltfläche
Spielen Sie (Animations-)Widgets abDatumsauswahl, Farbauswahl, Controller
Container-/Layout-WidgetsBox, HBox, VBox, GridBox, Akkordeon, Tabs, gestapelt

Bekannte Einschränkungen

  1. Die folgenden Widgets werden noch nicht unterstützt. Sie können die entsprechende Problemumgehung wie folgt befolgen:

    FunktionalitätProblemumgehung
    AusgangWidgetSie können verwendendrucken()Funktion stattdessen zum Schreiben von Text in stdout.
    widgets.jslink()Sie können verwendenwidgets.link()Funktion zum Verknüpfen zweier ähnlicher Widgets.
    Datei-UploadWidgetNoch keine Unterstützung.
  2. GlobalAnzeigeDie von Synapse bereitgestellte Funktion unterstützt nicht die Anzeige mehrerer Widgets in einem Aufruf (d. h.Anzeige(a, b)), was sich von IPython unterscheidetAnzeigeFunktion.

  3. Wenn Sie ein Notebook schließen, das das IPython-Widget enthält, können Sie es erst sehen oder damit interagieren, wenn Sie die entsprechende Zelle erneut ausführen.

Notizbücher speichern

Sie können ein einzelnes Notizbuch oder alle Notizbücher in Ihrem Arbeitsbereich speichern.

  1. Um Änderungen zu speichern, die Sie an einem einzelnen Notizbuch vorgenommen haben, wählen Sie das ausVeröffentlichenKlicken Sie auf die Schaltfläche in der Befehlsleiste des Notebooks.

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (28)

  2. Um alle Notizbücher in Ihrem Arbeitsbereich zu speichern, wählen Sie das ausAlles veröffentlichenKlicken Sie auf die Schaltfläche in der Befehlsleiste des Arbeitsbereichs.

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (29)

In den Notebook-Eigenschaften können Sie konfigurieren, ob die Zellenausgabe beim Speichern einbezogen werden soll.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (30)

Magische Befehle

Sie können bekannte magische Jupyter-Befehle in Synapse-Notizbüchern verwenden. Sehen Sie sich die folgende Liste mit den aktuell verfügbaren Zauberbefehlen an. Erzähl unsIhre Anwendungsfälle auf GitHubdamit wir weiterhin weitere magische Befehle entwickeln können, um Ihren Anforderungen gerecht zu werden.

Notiz

In der Synapse-Pipeline werden nur die folgenden magischen Befehle unterstützt: %%pyspark, %%spark, %%csharp, %%sql.

Verfügbare Linienmagie:%lsmagic,%Zeit,%timeit,%Geschichte,%laufen,%Belastung

Verfügbare Zellmagie:%%Zeit,%%timeit,%%ergreifen,%%writefile,%%sql,%%pisspark,%%Funke,%%csharp,%%html,%%konfigurieren

Referenz unveröffentlichtes Notizbuch

Das Referenzieren eines unveröffentlichten Notebooks ist hilfreich, wenn Sie „lokal“ debuggen möchten. Wenn Sie diese Funktion aktivieren, ruft die Notebook-Ausführung den aktuellen Inhalt im Webcache ab. Wenn Sie eine Zelle ausführen, die eine Referenz-Notebooks-Anweisung enthält, verweisen Sie auf die aktuellen Notebooks im aktuellen Dies bedeutet, dass die Änderungen in Ihrem Notebook-Editor sofort von anderen Notebooks referenziert werden können, ohne dass sie veröffentlicht (Live-Modus) oder festgeschrieben (Git-Modus) werden müssen. Durch die Nutzung dieses Ansatzes können Sie häufige Änderungen leicht vermeiden Bibliotheken werden während des Entwicklungs- oder Debugging-Prozesses verschmutzt.

Sie können „Referenz auf unveröffentlichtes Notizbuch“ im Eigenschaftenfenster aktivieren:

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (31)

Für den Vergleich verschiedener Fälle sehen Sie sich bitte die folgende Tabelle an:

Beachte das%laufenUndmssparkutils.notebook.runhat hier das gleiche Verhalten. Wir gebrauchen%laufenhier als Beispiel.

FallDeaktivierenErmöglichen
Live-Modus
- Sb1 (veröffentlicht)
%run Sb1
Führen Sie die veröffentlichte Version von Nb1 ausFühren Sie die veröffentlichte Version von Nb1 aus
- Sb1 (Neu)
%run Sb1
FehlerFühren Sie einen neuen Nb1 aus
- Sb1 (zuvor veröffentlicht, bearbeitet)
%run Sb1
LaufenveröffentlichtVersion von Nb1LaufenbearbeitetVersion von Nb1
Git-Modus
- Sb1 (veröffentlicht)
%run Sb1
Führen Sie die veröffentlichte Version von Nb1 ausFühren Sie die veröffentlichte Version von Nb1 aus
- Sb1 (Neu)
%run Sb1
FehlerFühren Sie einen neuen Nb1 aus
- Sb1 (Nicht veröffentlicht, festgeschrieben)
%run Sb1
FehlerFühren Sie Committed Nb1 aus
- Sb1 (zuvor veröffentlicht, festgelegt)
%run Sb1
LaufenveröffentlichtVersion von Nb1LaufenengagiertVersion von Nb1
- Nb1 (Zuvor veröffentlicht, neu im aktuellen Zweig)
%run Sb1
LaufenveröffentlichtVersion von Nb1LaufenneuSb1
- Nb1 (Nicht veröffentlicht, zuvor festgeschrieben, bearbeitet)
%run Sb1
FehlerLaufenbearbeitetVersion von Nb1
- Nb1 (Zuvor veröffentlicht und festgelegt, bearbeitet)
%run Sb1
LaufenveröffentlichtVersion von Nb1LaufenbearbeitetVersion von Nb1

Abschluss

  • Wenn deaktiviert, immer ausführenveröffentlichtAusführung.
  • Wenn aktiviert, ist die Priorität: bearbeitet / neu > festgeschrieben > veröffentlicht.

Aktives Sitzungsmanagement

Sie können Ihre Notebook-Sitzungen jetzt bequem wiederverwenden, ohne neue starten zu müssen. Synapse Notebook unterstützt jetzt die Verwaltung Ihrer aktiven Sitzungen imSitzungen verwaltenIn der Liste können Sie alle Sitzungen im aktuellen Arbeitsbereich sehen, die Sie über das Notebook gestartet haben.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (32)

ImAktive SitzungenIn der Liste können Sie die Sitzungsinformationen und das entsprechende Notizbuch sehen, das derzeit an die Sitzung angehängt ist. Von hier aus können Sie „Mit Notebook trennen“, „Sitzung stoppen“ und „Im Monitoring anzeigen“ bedienen. Darüber hinaus können Sie Ihr ausgewähltes Notebook ganz einfach mit einer aktiven Sitzung in der Liste verbinden, die von einem anderen Notebook aus gestartet wurde. Die Sitzung wird vom vorherigen Notebook getrennt (sofern es nicht inaktiv ist) und dann mit dem aktuellen verbunden.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (33)

Python-Anmeldung im Notebook

Sie können Python-Protokolle finden und verschiedene Protokollebenen und -formate festlegen, indem Sie dem folgenden Beispielcode folgen:

import logging# Passen Sie das Protokollierungsformat für alle Logger an.FORMAT = "%(asctime)s - %(name)s - %(levelname)s - %(message)s"formatter = logging.Formatter(fmt=FORMAT)für den Handler in der Protokollierung .getLogger().handlers: handler.setFormatter(formatter)# Protokollebene für alle Logger anpassenlogging.getLogger().setLevel(logging.INFO)# Protokollebene für einen bestimmten Logger anpassencustomizedLogger = logging.getLogger('customized')customizedLogger .setLevel(logging.WARNING)# Logger, der die standardmäßige globale Protokollebene verwendetdefaultLogger = logging.getLogger('default')defaultLogger.debug("default debug message")defaultLogger.info("default info message")defaultLogger.warning(" Standard-Warnmeldung")defaultLogger.error("Standard-Fehlermeldung")defaultLogger.critical("Standard-Kritikmeldung")# Logger, die die benutzerdefinierte Protokollebene verwendencustomizedLogger.debug("benutzerdefinierte Debug-Meldung")customizedLogger.info("benutzerdefinierte Info-Meldung ")customizedLogger.warning("benutzerdefinierte Warnmeldung")customizedLogger.error("benutzerdefinierte Fehlermeldung")customizedLogger.critical("benutzerdefinierte kritische Meldung")

Integrieren Sie ein Notebook

Fügen Sie einer Pipeline ein Notebook hinzu

Wähle ausZur Pipeline hinzufügenKlicken Sie auf die Schaltfläche in der oberen rechten Ecke, um ein Notebook zu einer vorhandenen Pipeline hinzuzufügen oder eine neue Pipeline zu erstellen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (34)

Legen Sie eine Parameterzelle fest

Um Ihr Notebook zu parametrisieren, wählen Sie die Auslassungspunkte (...) aus, um darauf zuzugreifenweitere Befehlein der Zellensymbolleiste. Dann auswählenParameterzelle umschaltenum die Zelle als Parameterzelle zu bezeichnen.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (35)

Azure Data Factory sucht nach der Parameterzelle und behandelt diese Zelle als Standard für die zur Ausführungszeit übergebenen Parameter. Die Ausführungs-Engine fügt unterhalb der Parameterzelle eine neue Zelle mit Eingabeparametern hinzu, um die Standardwerte zu überschreiben.

Weisen Sie Parameterwerte aus einer Pipeline zu

Sobald Sie ein Notebook mit Parametern erstellt haben, können Sie es über eine Pipeline mit der Synapse Notebook-Aktivität ausführen. Nachdem Sie die Aktivität zu Ihrem Pipeline-Canvas hinzugefügt haben, können Sie die Parameterwerte unten festlegenBasisparameterAbschnitt über dieEinstellungenTab.

So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (36)

Beim Zuweisen von Parameterwerten können Sie die verwendenPipeline-AusdrucksspracheoderSystemvariablen.

Tastenkombinationen

Ähnlich wie Jupyter-Notebooks verfügen Synapse-Notebooks über eine modale Benutzeroberfläche. Je nachdem, in welchem ​​Modus sich die Notebook-Zelle befindet, führt die Tastatur unterschiedliche Aktionen aus. Synapse-Notebooks unterstützen die folgenden zwei Modi für eine bestimmte Codezelle: Befehlsmodus und Bearbeitungsmodus.

  1. Eine Zelle befindet sich im Befehlsmodus, wenn kein Textcursor Sie zur Eingabe auffordert. Wenn sich eine Zelle im Befehlsmodus befindet, können Sie das Notizbuch als Ganzes bearbeiten, aber nicht in einzelne Zellen tippen. Rufen Sie den Befehlsmodus auf, indem Sie drückenESCoder verwenden Sie die Maus, um außerhalb des Editorbereichs einer Zelle auszuwählen.

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (37)

  2. Der Bearbeitungsmodus wird durch einen Textcursor angezeigt, der Sie zur Eingabe im Editorbereich auffordert. Wenn sich eine Zelle im Bearbeitungsmodus befindet, können Sie etwas in die Zelle eingeben. Rufen Sie den Bearbeitungsmodus auf, indem Sie drückenEingebenoder mit der Maus im Editorbereich einer Zelle auswählen.

    So verwenden Sie Synapse-Notebooks – Azure Synapse Analytics (38)

Tastenkombinationen im Befehlsmodus

AktionSynapse-Notizbuch-Verknüpfungen
Führen Sie die aktuelle Zelle aus und wählen Sie unten ausUmschalt+Eingabetaste
Führen Sie die aktuelle Zelle aus und fügen Sie sie unten einAlt+Enter
Aktuelle Zelle ausführenStrg+Eingabetaste
Zelle oben auswählenHoch
Wählen Sie die Zelle unten ausRunter
Vorherige Zelle auswählenK
Wählen Sie die nächste Zelle ausJ
Zelle oben einfügenA
Zelle unten einfügenB
Ausgewählte Zellen löschenUmschalt+D
Wechseln Sie in den BearbeitungsmodusEingeben

Tastenkombinationen im Bearbeitungsmodus

Mit den folgenden Tastenkombinationen können Sie im Bearbeitungsmodus einfacher in Synapse-Notizbüchern navigieren und Code ausführen.

AktionSynapse-Notizbuch-Verknüpfungen
Cursor nach oben bewegenHoch
Cursor nach unten bewegenRunter
Rückgängig machenStrg + Z
WiederholenStrg + Y
Kommentieren/Kommentieren aufhebenStrg + /
Wort vorher löschenStrg + Rücktaste
Wort danach löschenStrg + Entf
Gehen Sie zum ZellenstartStrg + Home
Gehen Sie zum Ende der ZelleStrg + Ende
Gehe noch ein Wort übrigStrg + Links
Machen Sie ein Wort richtigStrg + Rechts
Wählen Sie AlleStrg + A
EinzugStrg +]
ZahnStrg + [
Wechseln Sie in den BefehlsmodusEsc

Nächste Schritte

  • Schauen Sie sich die Synapse-Beispielnotizbücher an
  • Schnellstart: Erstellen Sie mithilfe von Webtools einen Apache Spark-Pool in Azure Synapse Analytics
  • Was ist Apache Spark in Azure Synapse Analytics?
  • Verwenden Sie .NET für Apache Spark mit Azure Synapse Analytics
  • .NET für Apache Spark-Dokumentation
  • Azure Synapse Analytics
Top Articles
Latest Posts
Article information

Author: Clemencia Bogisich Ret

Last Updated: 06/27/2023

Views: 5265

Rating: 5 / 5 (60 voted)

Reviews: 83% of readers found this page helpful

Author information

Name: Clemencia Bogisich Ret

Birthday: 2001-07-17

Address: Suite 794 53887 Geri Spring, West Cristentown, KY 54855

Phone: +5934435460663

Job: Central Hospitality Director

Hobby: Yoga, Electronics, Rafting, Lockpicking, Inline skating, Puzzles, scrapbook

Introduction: My name is Clemencia Bogisich Ret, I am a super, outstanding, graceful, friendly, vast, comfortable, agreeable person who loves writing and wants to share my knowledge and understanding with you.