Verwenden von Visual Studio Code zum Bereitstellen von Anwendungen für Big Data-Cluster für SQL Server

Gilt für: SQL Server 2019 (15.x)

In diesem Artikel wird beschrieben, wie Sie Anwendungen in einem Big Data-Cluster für SQL Server bereitstellen. Wir verwenden Microsoft Visual Studio Code und die App Deploy-Erweiterung.

Wichtig

Das Microsoft SQL Server 2019-Big Data-Cluster-Add-On wird eingestellt. Der Support für SQL Server 2019-Big Data-Clusters endet am 28. Februar 2025. Alle vorhandenen Benutzer*innen von SQL Server 2019 mit Software Assurance werden auf der Plattform vollständig unterstützt, und die Software wird bis zu diesem Zeitpunkt weiterhin über kumulative SQL Server-Updates verwaltet. Weitere Informationen finden Sie im Ankündigungsblogbeitrag und unter Big Data-Optionen auf der Microsoft SQL Server-Plattform.

Voraussetzungen

Funktionen

Die App Deploy-Erweiterung unterstützt die folgenden Tasks in Visual Studio Code:

  • Authentifizierung bei einem Big Data-Cluster für SQL Server
  • Abrufen einer Anwendungsvorlage aus dem GitHub-Repository zur Bereitstellung unterstützter Runtimes
  • Verwalten geöffneter Anwendungsvorlagen im Arbeitsbereich des Benutzers bzw. der Benutzerin
  • Bereitstellen einer Anwendung mithilfe einer Spezifikation im YAML-Format
  • Verwalten bereitgestellter Apps in Big Data-Clustern für SQL Server
  • Anzeigen aller bereitgestellten Apps in der Randleiste mit zusätzlichen Informationen
  • Generieren einer Ausführungsspezifikation zur Nutzung der App oder zur Löschung der App aus dem Cluster
  • Nutzen bereitgestellter Apps mithilfe einer Ausführungsspezifikation im YAML-Format

In den folgenden Abschnitten wird die Installation von App Deploy erläutert. Sie bieten auch einen Überblick über die Funktionsweise.

Installieren der App Deploy-Erweiterung in Visual Studio Code

Installieren Sie in Visual Studio Code die Erweiterung App Deploy:

  1. Wenn Sie App Deploy als Bestandteil von Visual Studio Code installieren möchten, laden Sie die Erweiterung von GitHub herunter.

  2. Starten Sie Visual Studio Code, und navigieren Sie zur Randleiste mit den Erweiterungen.

  3. Klicken Sie oben in der Randleiste auf das Kontextmenü und anschließend auf Install from vsix.

    Installieren über VSIX

  4. Wählen Sie die heruntergeladene sqlservbdc-app-deploy.vsix-Datei aus, die installiert werden soll.

Nachdem App Deploy erfolgreich installiert wurde, werden Sie aufgefordert, Visual Studio Code erneut zu laden. In der Randleiste von Visual Studio Code sollte nun der „SQL Server BDC App Explorer“ (App-Explorer für SQL Server BDC) angezeigt werden.

Laden des App-Explorers

Wählen Sie auf der Randleiste das Symbol für Erweiterungen aus. Ein Seitenbereich lädt und zeigt den App-Explorer an.

Screenshot: App-Explorer ohne Apps oder App-Spezifikationen

Herstellen einer Verbindung mit dem Clusterendpunkt

Verwenden Sie eine der folgenden Methoden, um eine Verbindung mit dem Clusterendpunkt herzustellen:

  • Klicken Sie unten in der Statusleiste auf SQL Server BDC Disconnected.
  • Alternativ können Sie auch im oberen Bereich auf die Schaltfläche Connect to Cluster klicken, auf der ein Pfeil auf einen Eingang zeigt.

Sie werden von Visual Studio Code dazu aufgefordert, den Endpunkt, den Benutzernamen und das Kennwort anzugeben.

Stellen Sie eine Verbindung zum Endpunkt Cluster Management Service mit Port 30080 her.

Sie können diesen Endpunkt mit dem folgenden Befehl auch über die Befehlszeile ermitteln:

azdata bdc endpoint list

Eine weitere Möglichkeit zum Abrufen dieser Informationen besteht darin, zum Server in Azure Data Studio zu navigieren und mit der rechten Maustaste auf Verwalten zu klicken. Die Endpunkte für Dienste werden aufgelistet.

ADS-Endpunkt

Suchen Sie den Endpunkt, den Sie verwenden möchten, und stellen Sie dann eine Verbindung mit dem Cluster her.

Neue Verbindung

Nach erfolgreicher Verbindungsherstellung benachrichtigt Visual Studio Code Sie, dass Sie mit dem Cluster verbunden sind. Bereitgestellte Apps werden in der Randleiste angezeigt, und Ihr Endpunkt und Benutzername werden in ./sqldbc als Teil Ihres Benutzerprofils gespeichert. Kennwörter oder Token werden nie gespeichert. Bei nachfolgenden Anmeldungen wird die Eingabeaufforderung vorab mit Ihrem gespeicherten Host und Benutzernamen ausgefüllt. Die Kennworteingabe ist jedoch immer erforderlich. Wenn Sie eine Verbindung mit einem anderen Clusterendpunkt herstellen möchten, wählen Sie New Connection aus. Die Verbindung wird automatisch geschlossen, wenn Sie Visual Studio Code beenden und einen anderen Arbeitsbereich öffnen. Anschließend müssen Sie die Verbindung erneut herstellen.

Erstellen einer App-Vorlage

Erstellen Sie in Visual Studio Code einen Arbeitsbereich an dem Speicherort, an dem Sie Ihre App-Artefakte speichern möchten.

Um eine neue App aus einer Vorlage bereitzustellen, wählen Sie im Bereich App-Spezifikationen die Schaltfläche Neue App-Vorlage aus. Eine Eingabeaufforderung fragt Sie, wo Sie den Namen, die Runtime und die neue App auf Ihrem lokalen Computer speichern möchten. Der Name und die Version, die Sie angeben, müssen eine DNS-1035-Bezeichnung sein und aus Kleinbuchstaben, alphanumerischen Zeichen oder „-“ bestehen. Sie müssen darüber hinaus mit einem Buchstaben beginnen und mit einem alphanumerischen Zeichen enden.

Speichern Sie die Erweiterung vorzugsweise in Ihrem aktuellen Visual Studio Code-Arbeitsbereich. Dadurch können Sie den vollständigen Funktionsumfang der Erweiterung nutzen.

Neue App-Vorlage

Eine neue App-Vorlage wird anschließend am angegebenen Speicherort erstellt. Dann wird die Bereitstellungsdatei spec.yaml im Arbeitsbereich geöffnet. Wenn sich das ausgewählte Verzeichnis in Ihrem Arbeitsbereich befindet, wird es im Bereich App-Spezifikationen aufgeführt:

Geladene App-Vorlage

Die neue Vorlage ist eine einfache Hallo-Welt-App, die im Bereich App-Spezifikationen folgendermaßen dargestellt wird:

  • spec.yaml
    • Dieser Datei entnimmt der Cluster die Informationen darüber, wie die App bereitgestellt werden soll.
  • run-spec.yaml
    • Dieser Datei entnimmt der Cluster den Namen der App.

Der App-Quellcode befindet sich im Arbeitsbereichsordner.

  • Name der Quelldatei
    • Dies ist die Quellcodedatei, die in spec.yaml durch src angegeben ist.
    • Sie verfügt über eine Funktion (handler), die als Einstiegspunkt (entrypoint) der App entsprechend den Informationen in spec.yaml betrachtet wird. Die Funktion nimmt eine Zeichenfolgeneingabe namens msg entgegen und gibt eine Zeichenfolgenausgabe mit dem Namen out zurück. Diese Zeichenfolgen werden in inputs und outputs in der Datei spec.yaml angegeben.

Wenn Sie mit spec.yaml eine App anstelle einer Vorlage bereitstellen möchten, wählen Sie die Schaltfläche New Deploy Spec aus, die sich neben der Schaltfläche New App Template befindet. Wiederholen Sie nun den gleichen Ablauf. Sie erhalten nur die Datei spec.yaml, die Sie beliebig ändern können.

Bereitstellen Ihrer App

Sie können Ihre App sofort über die CodeLens-Funktion von Deploy App in der Datei spec.yaml bereitstellen oder die Blitzschaltfläche neben der Datei spec.yaml im Menü App-Spezifikationen auswählen. Die Erweiterung packt alle Dateien im Speicherverzeichnis von spec.yaml in eine ZIP-Datei. Anschließend wird Ihre App im Cluster bereitgestellt.

Hinweis

spec.yaml muss sich auf der Stammebene des App-Quellcodeverzeichnisses befinden. Achten Sie auch darauf, dass sich alle App-Dateien im selben Verzeichnis wie spec.yaml befinden.

Schaltfläche „App bereitstellen“

CodeLens-Option „App bereitstellen“

Der App-Status in der Randleiste gibt an, wann sie verwendet werden kann:

App bereitgestellt

Status „App bereit“ in der Randleiste

Benachrichtigung „App bereit“

Auf der Randleiste sehen Sie Folgendes:

Über die folgenden Links können Sie alle bereitgestellten Apps anzeigen:

  • state
  • version
  • Eingabeparameter
  • Ausgabeparameter
  • Verknüpfungen
    • Swagger
    • Details

Wenn Sie auf links klicken, stellen Sie fest, dass Sie auf die swagger.json-Datei der bereitgestellten App zugreifen können. Dadurch können Sie Clients schreiben, um Ihre App aufzurufen:

Screenshot: Visual Studio Code-Benutzeroberfläche mit der Datei „swagger.json“

Weitere Informationen finden Sie unter Nutzen von Anwendungen in Big Data-Clustern.

Ausführen der App

Sobald Ihre App bereit ist, rufen Sie sie mit run-spec.yaml auf. Diese Datei wird als Teil der App-Vorlage bereitgestellt:

Ausführungsspezifikation

Geben Sie eine Zeichenfolge an, um hello zu ersetzen. Führen Sie dann Ihre App erneut über den CodeLens-Link oder die Blitzschaltfläche auf der Randleiste aus. Wenn die Option run-spec nicht angezeigt wird, generieren Sie eine aus der bereitgestellten App im Cluster:

„Get Run Spec“ (Ausführungsspezifikation abrufen)

Führen Sie sie aus, nachdem Sie Ihre Ausführungsspezifikation bearbeitet haben. Visual Studio Code gibt nach der Ausführung der App Feedback zurück:

App-Ausgabe

Im vorherigen Screenshot wird die Ausgabe in einer temporären .json-Datei in Ihrem Arbeitsbereich angegeben. Wenn Sie diese Ausgabe übernehmen möchten, können Sie sie speichern. Andernfalls wird sie nach Abschluss gelöscht. Wenn Ihre App keine Informationen in einer Datei ausgibt, wird nur die Statusmeldung Successful App Run angezeigt. Wenn die Ausführung nicht erfolgreich war, erhalten Sie eine Fehlermeldung, damit Sie die Ursachen ermitteln können.

Beim Ausführen einer App können Parameter auf unterschiedliche Weisen übergeben werden:

Sie können alle Eingaben in der folgenden .json-Datei festlegen:

  • inputs: ./example.json

Geben Sie den Parametertyp inline an, wenn eine bereitgestellte App aufgerufen wird und die Eingabeparameter keine Primitive sind. Bei Arrays, Vektoren, Dataframes, komplexen JSON-Dateien usw. gilt also:

  • Vektor
    • inputs:
      • x: [1, 2, 3]
  • Matrix
    • inputs:
      • x: [[A,B,C],[1,2,3]]
  • Object
    • inputs:
      • x: {A: 1, B: 2, C: 3}

Übergeben Sie alternativ eine Zeichenfolge an eine .txt-, .json- oder .csv-Datei in dem Format, das Ihre App benötigt. In dieser Instanz erfolgt die Dateianalyse auf Grundlage von Node.js Path library. Dort wird ein Dateipfad als string that contains a / or \ character definiert.

Wenn einer der erforderlichen Eingabeparameter nicht angegeben ist, wird eine Fehlermeldung angezeigt. Diese enthält den falschen Dateipfad, wenn ein Zeichenfolgen-Dateipfad angegeben wurde, oder sie gibt an, dass der Parameter ungültig war. Der oder die App-Ersteller*in muss darauf achten, sinnvolle Parameter zu definieren.

Um eine App zu löschen, wechseln Sie zur App, und wählen Sie auf der Randleiste von Deployed Apps das Papierkorbsymbol aus.

Nächste Schritte

Im Artikel Nutzen von Anwendungen auf Big Data-Clustern erfahren Sie, wie Sie Apps, die in Big Data-Cluster für SQL Server bereitgestellt wurden, in Ihre eigenen Anwendungen integrieren können. Zusätzliche Beispiele für die Erweiterung sind unter Bereitstellen von Anwendungen auf Big-Data-Clustern für SQL Server verfügbar.

Weitere Informationen zu Big Data-Cluster für SQL Server finden Sie unter Einführung in SQL Server 2019: Big Data-Cluster.

Die vorgestellte Erweiterung soll Ihnen einen echten Mehrwert bieten. Wir freuen uns daher über Feedback. Bitte senden Sie dieses an das SQL Server-Team.