Condividi tramite


Come usare Visual Studio Code per distribuire le applicazioni nei cluster Big Data di SQL Server

Si applica a: SQL Server 2019 (15.x)

Questo articolo descrive come eseguire le applicazioni in un cluster Big Data di SQL Server. Verrà usato Microsoft Visual Studio Code e l'estensione Distribuzione App.

Importante

Il componente aggiuntivo per i cluster Big Data di Microsoft SQL Server 2019 verrà ritirato. Il supporto per i cluster Big Data di SQL Server 2019 terminerà il 28 febbraio 2025. Tutti gli utenti esistenti di SQL Server 2019 con Software Assurance saranno completamente supportati nella piattaforma e fino a quel momento il software continuerà a ricevere aggiornamenti cumulativi di SQL Server. Per altre informazioni, vedere il post di blog relativo all'annuncio e Opzioni per i Big Data nella piattaforma Microsoft SQL Server.

Prerequisiti

Funzionalità

L'estensione Distribuzione App supporta le attività seguenti in Visual Studio Code:

  • Esegue l'autenticazione con il cluster Big Data di SQL Server.
  • Recupera un modello di applicazione dal repository GitHub per la distribuzione dei runtime supportati.
  • Gestisce modelli di applicazione attualmente aperti nell'area di lavoro dell'utente.
  • Distribuisce un'applicazione tramite una specifica in formato YAML.
  • Gestisce le app distribuite nel cluster Big Data di SQL Server.
  • Distribuisce tutte le app distribuite nella barra laterale con informazioni aggiuntive.
  • Genera una specifica di esecuzione per utilizzare l'app o eliminarla dal cluster.
  • Utilizza le app distribuite tramite una specifica di esecuzione YAML.

Le sezioni seguenti illustrano l'installazione di Distribuzione app. Contengono anche una panoramica sul suo funzionamento.

Come installare l'estensione Distribuzione App in Visual Studio Code

In Visual Studio Code installare l'estensione Distribuzione app:

  1. Per installare Distribuzione App come parte di Visual Studio Code scaricare l'estensione da GitHub.

  2. Avviare Visual Studio Code e passare alla barra laterale Estensioni.

  3. Fare clic sul menu di scelta rapida Install from vsix nella parte superiore della barra laterale e selezionare .

    Install VSIX

  4. Individuare il file sqlservbdc-app-deploy.vsix scaricato e selezionarlo per installarlo.

Dopo aver installato correttamente Distribuzione App, viene richiesto di ricaricare Visual Studio Code. A questo punto, verrà visualizzato lo strumento di esplorazione delle app BDC per SQL Server nella barra laterale di Visual Studio Code.

Caricare lo strumento di esplorazione delle app

Selezionare l'icona delle estensioni nella barra laterale. Un pannello laterale carica e mostra lo strumento di esplorazione delle app.

A screenshot that shows App Explorer with no apps or app specifications.

Connettersi all'endpoint del cluster

Per connettersi all'endpoint del cluster, è possibile usare uno dei metodi seguenti:

  • Fare clic sulla barra di stato nella parte inferiore che indica SQL Server BDC Disconnected.
  • In alternativa, fare clic sul pulsante Connect to Cluster nella parte superiore che raffigura una freccia che punta a una porta.

Visual Studio Code chiede all'utente l'endpoint, il nome utente e la password appropriati.

Connettersi all'endpoint Cluster Management Service con la porta 30080.

Questo endpoint può essere trovato anche digitando il comando seguente nella riga di comando:

azdata bdc endpoint list

Un altro modo per recuperare questa informazione consiste nel passare al server in Azure Data Studio e fare clic con il pulsante destro del mouse su Gestisci. Gli endpoint per i servizi sono elencati.

ADS End Point

Individuare l'endpoint da usare, quindi connettersi al cluster.

New Connection

Dopo aver stabilito correttamente la connessione, Visual Studio Code invia una notifica all'utente indicando che è connesso al cluster. Le app distribuite vengono visualizzate nella barra laterale e l'endpoint e il nome utente vengono salvati in ./sqldbc come parte del profilo utente. Non vengono mai salvati password o token. Durante gli accessi successivi, il prompt precompila i campi con l'host e il nome utente salvati, ma richiede sempre di immettere una password. Se ci si vuole connettere a un endpoint del cluster diverso, selezionare New Connection. La connessione viene chiusa automaticamente quando si chiude Visual Studio Code e quando si apre un'area di lavoro diversa. Sarà quindi necessario riconnettersi.

Creare un modello di app

In Visual Studio Code aprire un'area di lavoro nella posizione in cui si desidera salvare gli artefatti dell'app.

Per distribuire una nuova app da un modello, selezionare il pulsante New App Template nel riquadro App Specifications. Un prompt chiede dove si vuole salvare il nome, il runtime e la nuova app nel computer locale. Il nome e la versione specificati devono essere costituiti da un'etichetta DNS-1035 ed essere composti da caratteri alfanumerici minuscoli o da'-'. Inoltre devono iniziare con un carattere alfabetico e terminare con un carattere alfanumerico.

È preferibile posizionare l'estensione nell'area di lavoro di Visual Studio Code corrente. Questo offre la funzionalità completa dell'estensione.

New App Template

Al termine, viene eseguito lo scaffolding di un nuovo modello di app nel percorso specificato e il file spec.yaml di distribuzione viene aperto nell'area di lavoro. Se la directory selezionata si trova nell'area di lavoro, verrà elencata nel riquadro App Specifications:

Loaded App Template

Il nuovo modello è una semplice app helloworld definita nel modo seguente nel riquadro App Specifications:

  • spec.yaml
    • Indica al cluster come distribuire l'app
  • run-spec.yaml
    • Indica al cluster come chiamare l'app

Il codice sorgente dell'app si trova nella cartella Area di lavoro.

  • Nome del file di origine
    • Questo è il file del codice sorgente in base a quanto specificato da src in spec.yaml
    • Include una funzione denominata handler che viene considerata entrypoint dell'app, come mostrato in spec.yaml. Accetta un input stringa denominato msg e restituisce un output stringa denominato out. Questi vengono specificati in inputs e outputs del file spec.yaml.

Per usare spec.yaml per distribuire un'app anziché un modello di scaffolding, selezionare il pulsante New Deploy Spec, accanto al pulsante New App Template. Ripetere ora lo stesso processo. Si riceverà solo spec.yaml che si può essere modificato.

Distribuire l'app

L'app può essere distribuita immediatamente tramite CodeLens Deploy App in spec.yaml o selezionando il pulsante che raffigura una cartella con un razzo accanto al file spec.yaml nel menu App specifications. L'estensione comprime tutti i file nella directory in si trova spec.yaml. L'app verrà quindi distribuita nel cluster.

Nota

spec.yaml deve trovarsi al livello radice della directory del codice sorgente dell'app. Assicurarsi anche che tutti i file dell'app si trovino nella stessa directory di spec.yaml.

Deploy app button

Deploy app CodeLens

Lo stato dell'app nella barra laterale avvisa quando è pronto per essere usato:

App deployed

App ready side bar

App ready notification

Nel riquadro laterale è possibile vedere gli elementi seguenti:

È possibile visualizzare tutte le app distribuite con i collegamenti seguenti:

  • state
  • versione
  • parametri di input
  • parametri di output
  • collegamenti
    • Swagger
    • dettagli

Se si fa clic su links, è possibile accedere al file swagger.json dell'app distribuita. Ciò consente di scrivere i client per chiamare l'app:

A Screenshot that shows the Visual Studio Code UI displaying the swagger.json file.

Per altre informazioni, vedere Utilizzare applicazioni nei cluster Big Data.

Eseguire l'app

Quando l'app è pronta, chiamarla con run-spec.yaml. Questo file fa parte del modello di app:

Run Spec

Specificare una stringa per sostituire hello. A questo punto eseguire di nuovo l'app tramite il collegamento di CodeLens o il pulsante del razzo nella barra laterale. Se l'opzione run-spec non viene visualizzata, generarne una dall'app distribuita nel cluster:

Get Run Spec

Dopo aver modificato run-spec, eseguirlo. Visual Studio Code restituisce il feedback quando l'app termina il processo di esecuzione:

App output

Nello screenshot precedente viene visualizzato l'output in un file .json temporaneo dell'area di lavoro. Se lo si vuole mantenere, è possibile salvarlo. Altrimenti, viene eliminato al momento della chiusura. Se l'app non ha output da stampare in un file, si otterrà solo la notifica dello stato Successful App Run. Se l'esecuzione non è riuscita, si riceve un messaggio di errore che consentirà di determinare il problema.

Quando si esegue un'app, è possibile passare parametri in diversi modi:

È possibile specificare tutti gli input necessari tramite un file .json, ovvero:

  • inputs: ./example.json

Specificare il tipo di parametro in riga quando viene chiamata un'app distribuita e i parametri di input non devono essere primitive. Quindi, con matrici, vettori, dataframe, JSON complessi e così via:

  • Vettore
    • inputs:
      • x: [1, 2, 3]
  • Matrice
    • inputs:
      • x: [[A,B,C],[1,2,3]]
  • Oggetto
    • inputs:
      • x: {A: 1, B: 2, C: 3}

Oppure passare una stringa a un file .txt, .json o .csv nel formato richiesto dall'app. In questo caso l'analisi dei file si basa su Node.js Path library, in cui il percorso è definito come string that contains a / or \ character.

Se non viene specificato alcun parametro di input obbligatorio, viene visualizzato un messaggio di errore. Questo specifica il percorso del file errato se è stato specificato un percorso del file della stringa oppure indica che il parametro non è valido. L'autore dell'app deve assicurarsi di comprendere i parametri definiti.

Per eliminare un'app, passare all'app nel riquadro laterale Deployed Apps e selezionare l'icona del cestino.

Passaggi successivi

Per altre informazioni su come integrare nelle proprie applicazioni le app distribuite in cluster Big Data di SQL Server, vedere Utilizzare applicazioni in cluster Big Data. È anche possibile fare riferimento agli esempi aggiuntivi disponibili in Esempi di distribuzione di app per provare l'estensione.

Per altre informazioni sui cluster Big Data di SQL Server, vedere Introduzione ai cluster Big Data di SQL Server 2019.

L'obiettivo è rendere utile questa estensione. Qualsiasi commento o suggerimento sarà bene accetto. È possibile inviare il proprio feedback al team di SQL Server.