Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server 2016 (13.x) e versões posteriores
Neste tutorial para cientistas de dados, aprenda como construir uma solução de ponta a ponta para modelação preditiva baseada no suporte a funcionalidades R em SQL Server 2016 ou SQL Server 2017. Este tutorial utiliza uma base de dados NYCTaxi_sample no SQL Server.
Utiliza-se uma combinação de código R, dados SQL Server e funções SQL personalizadas para construir um modelo de classificação que indica a probabilidade de o condutor receber uma gorjeta numa determinada viagem de táxi. Também implementas o teu modelo R no SQL Server e usas os dados do servidor para gerar pontuações com base no modelo.
Este exemplo pode ser estendido a todo o tipo de problemas da vida real, como prever as respostas dos clientes a campanhas de vendas, ou prever gastos ou frequência a eventos. Como o modelo pode ser invocado a partir de um procedimento armazenado, pode facilmente incorporá-lo numa aplicação.
Como o walkthrough foi concebido para apresentar aos programadores R os Serviços R (In-Database), o R é utilizado sempre que possível. No entanto, isto não significa que o R seja necessariamente a melhor ferramenta para cada tarefa. Em muitos casos, o SQL Server pode proporcionar melhor desempenho, especialmente para tarefas como agregação de dados e engenharia de funcionalidades. Estas tarefas podem beneficiar particularmente de novas funcionalidades no SQL Server, como índices de coluna otimizados para memória. Tentamos apontar possíveis otimizações ao longo do caminho.
Pré-requisitos
Serviços de Aprendizagem Automática SQL Server com integração R ou Serviços SQL Server 2016 R
Permissões de base de dados concedidas a um utilizador de base de dados mapeadas para um login SQL Server
SQL Server Management Studio (Estúdio de Gestão do Servidor SQL)
Um IDE R, como o RStudio ou a ferramenta RGUI incorporada com o R
Recomendamos que faça este walkthrough numa estação de trabalho do cliente. Deve ser capaz de ligar, na mesma rede, a um computador SQL Server com o SQL Server e a linguagem R ativados. Para instruções sobre a configuração da estação de trabalho, consulte Configurar um cliente de ciência de dados para desenvolvimento em R.
Alternativamente, pode correr o guia num computador que tenha tanto SQL Server como um ambiente de desenvolvimento R, mas não recomendamos esta configuração para um ambiente de produção. Se precisares de colocar cliente e servidor no mesmo computador, certifica-te de instalar um segundo conjunto de bibliotecas Microsoft R para enviar scripts R a partir de um cliente "remoto". Não utilize as bibliotecas R que estão instaladas nos ficheiros de programa da instância do SQL Server. Especificamente, se estiver a usar um computador, precisa da biblioteca RevoScaleR em ambos os locais para suportar operações de cliente e servidor.
- C:\Program Files\Microsoft\R Client\R_SERVER\library\RevoScaleR
- C:\Program Files\Microsoft SQL Server\MSSQL14. MSSQLSERVER\R_SERVICES\library\RevoScaleR
Pacotes R adicionais
Este guia requer várias bibliotecas R que não estão instaladas por defeito como parte dos Serviços R (In-Database). Deve instalar os pacotes tanto no cliente onde desenvolve a solução, como no computador SQL Server onde implementa a solução.
Numa estação de trabalho cliente
No seu ambiente R, copie as linhas seguintes e execute o código numa janela de Consola (Rgui ou um IDE). Alguns pacotes também instalam os pacotes necessários. No total, estão instalados cerca de 32 pacotes. Tem de ter uma ligação à Internet para concluir este passo.
# Install required R libraries, if they are not already installed.
if (!('ggmap' %in% rownames(installed.packages()))){install.packages('ggmap')}
if (!('mapproj' %in% rownames(installed.packages()))){install.packages('mapproj')}
if (!('ROCR' %in% rownames(installed.packages()))){install.packages('ROCR')}
if (!('RODBC' %in% rownames(installed.packages()))){install.packages('RODBC')}
No servidor
Tem várias opções para instalar pacotes no SQL Server. Por exemplo, o SQL Server oferece uma funcionalidade de gestão de pacotes R que permite aos administradores de bases de dados criar um repositório de pacotes e atribuir aos utilizadores o direito de instalar os seus próprios pacotes. No entanto, se for administrador no computador, pode instalar novos pacotes usando R, desde que instale na biblioteca correta.
Observação
No servidor, não instale numa biblioteca de utilizador mesmo que lhe seja solicitado. Se instalar numa biblioteca de utilizador, a instância do SQL Server não consegue encontrar nem executar os pacotes. Para mais informações, consulte Instalação de novos pacotes R no SQL Server.
No computador SQL Server, abre RGui.exe como administrador. Se instalou o SQL Server R Services usando os predefinidos, Rgui.exe pode ser encontrado em C:\Program Files\Microsoft SQL Server\MSSQL13. MSSQLSERVER\R_SERVICES\bin\x64).
No prompt R, execute os seguintes comandos R:
install.packages("ggmap", lib=grep("Program Files", .libPaths(), value=TRUE)[1])
install.packages("mapproj", lib=grep("Program Files", .libPaths(), value=TRUE)[1])
install.packages("ROCR", lib=grep("Program Files", .libPaths(), value=TRUE)[1])
install.packages("RODBC", lib=grep("Program Files", .libPaths(), value=TRUE)[1])
Este exemplo utiliza a função R grep para pesquisar o vetor dos caminhos disponíveis e encontrar o caminho que inclui "Program Files". Para mais informações, consulte RDocumentation para o pacote base.
Se acha que os pacotes já estão instalados, verifique a lista de pacotes instalados ao executar installed.packages().