Como implantar um aplicativo nos Clusters de Big Data do SQL Server

Aplica-se a: SQL Server 2019 (15.x)

Importante

O complemento Clusters de Big Data do Microsoft SQL Server 2019 será desativado. O suporte para Clusters de Big Data do SQL Server 2019 será encerrado em 28 de fevereiro de 2025. Todos os usuários existentes do SQL Server 2019 com Software Assurance terão suporte total na plataforma e o software continuará a ser mantido por meio de atualizações cumulativas do SQL Server até esse momento. Para obter mais informações, confira a postagem no blog de anúncio e as opções de Big Data na plataforma do Microsoft SQL Server.

Os aplicativos implantados nos Clusters de Big Data do SQL Server se beneficiam de muitas vantagens, como a capacidade de computação do cluster, e acessam um grande volume de dados disponíveis no cluster. Ele aprimoram consideravelmente o desempenho, pois o aplicativo reside no mesmo cluster dos dados.

Os aplicativos são implantados e gerenciados usando a CLI de Dados do Azure (azdata).

Este artigo fornece exemplos de como implantar aplicativos da linha de comando dentro de um cluster de Big Data do SQL Server. Para saber como usar isso no Visual Studio Code, veja a Extensão do Visual Studio Code.

Pré-requisitos

Funcionalidades

No SQL Server 2019, você pode criar, excluir, descrever, inicializar, listar, executar e atualizar seu aplicativo. A tabela a seguir descreve os comandos de implantação de aplicativos que você pode usar com o azdata.

Comando Descrição
azdata login Entrar em um cluster de Big Data do SQL Server
azdata app create Criar aplicativo.
azdata app delete Excluir o aplicativo.
azdata app describe Descrever o aplicativo.
azdata app init Iniciar rapidamente um novo esqueleto de aplicativo.
azdata app list Listar os aplicativos.
azdata app run Executar o aplicativo.
azdata app update Atualizar o aplicativo.

Obtenha ajuda com o parâmetro --help como no seguinte exemplo:

azdata app create --help

As seções a seguir descrevem esses comandos mais detalhadamente.

Entrar

Antes de implantar aplicativos ou interagir com eles, primeiro, entre no cluster de Big Data do SQL Server com o comando azdata login. Especifique o endereço IP externo do serviço controller-svc-external (por exemplo: https://ip-address:30080) junto com o nome de usuário e a senha do cluster.

azdata login --controller-endpoint https://<ip-address-of-controller-svc-external>:30080 --controller-username <user-name>

AKS (Serviço de Kubernetes do Azure)

Se estiver usando o AKS, execute o seguinte comando para obter o endereço IP do serviço controller-svc-external executando esse comando em uma janela de cmd ou Bash:

kubectl get svc controller-svc-external -n <name of your big data cluster>

Clusters do Kubernetes criados com o kubeadm

Execute o comando a seguir para obter o endereço IP e entrar no cluster

kubectl get node --selector='node-role.kubernetes.io/master'

Criar um esqueleto de aplicativo

O comando azdata app init fornece um scaffold com os artefatos relevantes que são necessários para implantar um aplicativo. O exemplo abaixo cria add-app. Execute isso com o comando a seguir.

azdata app init --name add-app --version v1 --template python

Isso criará uma pasta chamada hello. Use o comando cd no diretório e inspecione os arquivos gerados na pasta. spec.yaml define o aplicativo, como nome, versão e código-fonte. Edite a especificação para alterar o nome, a versão, a entrada e as saídas.

Esta é uma saída de exemplo do comando init que você verá na pasta

add-app.py
run-spec.yaml
spec.yaml

Criar um aplicativo

Para criar um aplicativo, use CLI de Dados do Azure (azdata) com o comando app create. Esses arquivos residem localmente no computador usado para criar o aplicativo.

Use a seguinte sintaxe para criar um aplicativo no cluster de Big Data:

azdata app create --spec <directory containing spec file>

O seguinte comando mostra um exemplo da aparência desse comando:

azdata app create --spec ./addpy

Isso pressupõe que o aplicativo esteja armazenado na pasta addpy. Essa pasta também deverá conter um arquivo de especificação para o aplicativo, chamado spec.yaml. Confira a página Implantação de Aplicativos para obter mais informações sobre o arquivo spec.yaml.

Para implantar esse aplicativo de exemplo de aplicativo, crie os seguintes arquivos em um diretório chamado addpy:

  • add.py. Copie o seguinte código Python para esse arquivo:
    #add.py
    def add(x, y):
      result = x+y
      return result
    result=add(x,y)
    
  • spec.yaml. Copie o seguinte código para esse arquivo:
    #spec.yaml
    name: add-app #name of your python script
    version: v1  #version of the app
    runtime: Python #the language this app uses (R or Python)
    src: ./add.py #full path to the location of the app
    entrypoint: add #the function that will be called upon execution
    replicas: 1  #number of replicas needed
    poolsize: 1  #the pool size that you need your app to scale
    inputs:  #input parameters that the app expects and the type
       x: int
       y: int
    output: #output parameter the app expects and the type
       result: int
    

Em seguida, execute o seguinte comando:

azdata app create --spec ./addpy

Verifique se o aplicativo foi implantado usando o comando list:

azdata app list

Se a implantação não for concluída, você verá o state mostrar WaitingforCreate como o seguinte exemplo:

[
  {
    "name": "add-app",
    "state": "WaitingforCreate",
    "version": "v1"
  }
]

Depois que a implantação for bem-sucedida, você deverá ver o state ser alterado para o status Ready:

[
  {
    "name": "add-app",
    "state": "Ready",
    "version": "v1"
  }
]

Listar um aplicativo

Liste todos os aplicativos que foram criados com êxito com o comando app list.

O seguinte comando lista todos os aplicativos disponíveis no cluster de Big Data:

azdata app list

Se você especificar um nome e uma versão, ele listará esse aplicativo específico e o estado (Criando ou Pronto):

azdata app list --name <app_name> --version <app_version>

O seguinte exemplo demonstra esse comando:

azdata app list --name add-app --version v1

Você deverá ver uma saída semelhante ao seguinte exemplo:

[
  {
    "name": "add-app",
    "state": "Ready",
    "version": "v1"
  }
]

Excluir um aplicativo

Para excluir um aplicativo do cluster de Big Data, use a seguinte sintaxe:

azdata app delete --name add-app --version v1

Explore como integrar os aplicativos implantados nos Clusters de Big Data do SQL Server em seus aplicativos em Executar aplicativos em clusters de Big Data e Consumir aplicativos em clusters de Big Data para obter mais informações. Confira também mais amostras em Amostras de implantação de aplicativo.

Para obter mais informações sobre Clusters de Big Data do SQL Server, confira O que são Clusters de Big Data do SQL Server 2019.