O que são Extensões de Linguagem do SQL Server?
Aplica-se a: SQL Server 2019 (15.x) e versões posteriores
As Extensões de Linguagem é um recurso do SQL Server usado para executar código externo. Os dados relacionais podem ser usados no código externo usando a estrutura de extensibilidade. O SQL Server 2019 (15.x) e versões posteriores oferecem suporte aos runtimes do Java, C#, Python e R.
Observação
Para executar o Python ou o R no SQL Server, consulte a documentação dos Serviços de Machine Learning com Python e R. Com o SQL Server 2019 (15.x) e versões posteriores, você pode usar um runtime personalizado do Python e do R com as extensões de linguagem. Para obter mais informações, consulte Instalar um runtime personalizado do Python para SQL Server e Instalar um runtime personalizado do R para SQL Server.
O que você pode fazer com as Extensões de Linguagem
As Extensões de Linguagem usam a estrutura de extensibilidade para executar código externo. A execução de código é isolada dos principais processos de mecanismo, mas totalmente integrada à execução de consulta do SQL Server. Você pode executar o código na fonte dos dados, eliminando a necessidade de efetuar pull dos dados na rede.
As linguagens externas são definidas com CREATE EXTERNAL LANGUAGE. O procedimento armazenado do sistema sp_execute_external_script é usado como a interface para executar o código.
As Extensões de Linguagem oferecem várias vantagens:
Segurança de dados. Aproximar a execução de linguagem externa da fonte de dados evita uma movimentação de dados não segura.
Velocidade. Os bancos de dados são otimizados para operações baseadas em conjunto.
Facilidade de implantação e integração. SQL Server é o ponto central de operações para muitas outras tarefas e aplicativos de gerenciamento de dados. Usando os dados do banco de dados, você garante que os dados usados pela extensão de linguagem sejam consistentes e atualizados.
A Integração ao Common Language Runtime nativa permite implementar algumas das funcionalidades do SQL Server com linguagens .NET. Para ver uma discussão sobre as diferenças entre SQL CLR e extensões de linguagem do SQL, confira Comparação das Extensões de Linguagem do SQL Server com SQL CLR.
Para obter mais informações sobre segurança com a estrutura de extensibilidade, consulte Arquitetura de segurança para a estrutura de extensibilidade nos Serviços do Machine Learning do SQL Server.
Conteúdo relacionado
- Instalar a Extensão de Linguagem Java do SQL Server no Windows
- Instalar a Extensão de Linguagem Java do SQL Server no Linux
- O que é a Extensão de Linguagem C#?
- Instalar a Extensão de Linguagem .NET do SQL Server no Windows
- Instalar um runtime personalizado de Python para o SQL Server
- Instalar um runtime personalizado de R para o SQL Server
- SDK de Extensibilidade da Microsoft para Java para o SQL Server
- SDK de Extensibilidade da Microsoft para C# para SQL Server