Executar scripts do Python e do R com Serviços de Machine Learning em Clusters de Big Data do SQL Server 2019
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.
Você pode executar scripts do Python e do R na instância mestra de Clusters de Big Data do SQL Server com Serviços de Machine Learning.
Observação
Você também pode executar o código Java na instância mestra dos Clusters de Big Data do SQL Server com a Extensão de Linguagem Java. A conclusão das etapas abaixo habilitará também as Extensões de Linguagem do SQL Server.
Habilitar Serviços de Machine Learning
O Serviços de Machine Learning são instalados por padrão em Clusters de Big Data do SQL Server 2019 e não exigem instalação separada.
Para habilitar Serviços de Machine Learning, execute esta instrução na instância mestra:
EXEC sp_configure 'external scripts enabled', 1
RECONFIGURE WITH OVERRIDE
GO
Agora você está pronto para executar scripts do Python e do R na instância mestra de Clusters de Big Data. Confira os guias de início rápido nas Próximas etapas para executar seu primeiro script.
Observação
A definição de configuração não pode ser definida em uma conexão de ouvinte do grupo de disponibilidade. Se os Clusters de Big Data forem implantados com alta disponibilidade, então defina external scripts enabled
em cada réplica. Confira Habilitar o cluster com alta disponibilidade.
Habilitar o cluster com alta disponibilidade
Quando você Implanta o Cluster de Big Data do SQL Server com alta disponibilidade, a implantação cria um grupo de disponibilidade para a instância mestra. Para habilitar os Serviços de Machine Learning, defina external scripts enabled
em cada instância do grupo de disponibilidade. Para um Cluster de Big data, você precisa executar sp_configure
em cada réplica da instância mestra do SQL Server
A seção a seguir descreve como habilitar scripts externos em cada instância.
Criar um balanceador de carga externo para cada instância
Para cada réplica no grupo de disponibilidade, crie um balanceador de carga para permitir que você se conecte à instância.
kubectl expose pod <pod-name> --port=<connection port number> --name=<load-balancer-name> --type=LoadBalancer -n <kubernetes namespace>
Os exemplos neste artigo usam os seguintes valores:
<pod-name>
:master-#
<connection port number>
:1533
<load-balancer-name>
:mymaster-#
<kubernetes namespace>
:mssql-cluster
Atualize o seguinte script para o seu ambiente e execute os comandos:
kubectl expose pod master-0 --port=1533 --name=mymaster-0 --type=LoadBalancer -n mssql-cluster
kubectl expose pod master-1 --port=1533 --name=mymaster-1 --type=LoadBalancer -n mssql-cluster
kubectl expose pod master-2 --port=1533 --name=mymaster-2 --type=LoadBalancer -n mssql-cluster
kubectl
retorna a seguinte saída.
service/mymaster-0 exposed
service/mymaster-1 exposed
service/mymaster-2 exposed
Cada balanceador de carga é um ponto de extremidade de réplica mestre.
Habilitar a execução de script em cada réplica
Obtenha o endereço IP do ponto de extremidade da réplica mestre.
O comando a seguir retorna o endereço IP externo do ponto de extremidade da réplica.
kubectl get services <load-balancer-name> -n <kubernetes namespace>
Para obter o endereço IP externo para cada réplica neste cenário, execute os seguintes comandos:
kubectl get services mymaster-0 -n mssql-cluster kubectl get services mymaster-1 -n mssql-cluster kubectl get services mymaster-2 -n mssql-cluster
Observação
Pode levar algum tempo para que o endereço IP externo esteja disponível. Execute o script anterior periodicamente até que cada ponto de extremidade retorne um endereço IP externo.
Conecte-se ao ponto de extremidade de réplica mestre e habilite a execução de script.
Execute esta instrução:
EXEC sp_configure 'external scripts enabled', 1 RECONFIGURE WITH OVERRIDE GO
Por exemplo, você pode executar o comando anterior com
sqlcmd
. O exemplo a seguir conecta-se ao ponto de extremidade da réplica mestre e habilita a execução do script. Atualize os valores no script para seu ambiente.sqlcmd -S <IP address>,1533 -U <user name> -P <password> -Q "EXEC sp_configure 'external scripts enabled', 1; RECONFIGURE WITH OVERRIDE;"
Repita a etapa para cada réplica.
Demonstração
A imagem a seguir demonstra esse processo.
Agora você está pronto para executar scripts do Python e do R na instância mestra de Clusters de Big Data. Confira os guias de início rápido nas Próximas etapas para executar seu primeiro script.
Excluir os pontos de extremidade de réplica mestre
No cluster do Kubernetes, exclua o ponto de extremidade de cada réplica. O ponto de extremidade é exposto no Kubernetes como um serviço de balanceamento de carga.
O comando a seguir exclui o serviço de balanceamento de carga.
kubectl delete svc <load-balancer-name> -n mssql-cluster
Para os exemplos neste artigo, execute os seguintes comandos.
kubectl delete svc mymaster-0 -n mssql-cluster
kubectl delete svc mymaster-1 -n mssql-cluster
kubectl delete svc mymaster-2 -n mssql-cluster
Guias de início rápido de machine learning de Clusters de Big Data do SQL Server
Guias de início rápido de Python
Inícios rápidos do R
Tutoriais de machine learning de Clusters de Big Data do SQL Server
Tutorial do Python
Ski rental (linear regression) (Aluguel de esqui [regressão linear])
- 1 – Introdução
- 2 – Prepare data (Preparar dados)
- 3 – Train model (Treinar modelo)
- 4 – Deploy model (Implantar modelo)
Categorizar clientes (cluster k-means)
- 1 – Introdução
- 2 - Prepare the data (Preparar os dados)
- 3 - Create the model (Criar o modelo)
- 4 - Deploy the model (Implantar o modelo)
Dicas de táxi de NYC (classificação)
- 1 – Introdução
- 2 – Exploração de dados
- 3 – Engenharia de recursos
- 4 – Treinar e implantar
- 5 – Previsões
Tutoriais do R
Aluguel de esqui (árvore de decisão)
- 1 – Introdução
- 2 – Prepare data (Preparar dados)
- 3 – Train model (Treinar modelo)
- 4 – Deploy model (Implantar modelo)
Categorizar clientes (cluster k-means)
- 1 – Introdução
- 2 - Prepare the data (Preparar os dados)
- 3 - Create the model (Criar o modelo)
- 4 - Deploy the model (Implantar o modelo)
Dicas de táxi de NYC (classificação)
- 1 – Introdução
- 2 – Exploração de dados
- 3 – Engenharia de recursos
- 4 – Treinar e implantar
- 5 – Previsões
Guias de instruções de machine learning de Clusters de Big Data do SQL Server
Exploração de dados e modelagem
Conversões de tipo de dados
Implantar
Previsões
Gerenciamento de pacotes
Instalar os novos pacotes Python
Instalar os novos pacotes R
- Obter informações sobre o pacote do R
- Instalar com sqlmlutils
- Criar um repositório miniCRAN
- Dicas para usar pacotes de R
Monitoramento
Segurança
Machine Learning do Spark
- Usar o Machine Learning do Spark
- Estruturação de dados usando o Acelerador de Código PROSE
- Modelos de machine learning do Spark com MLeap