Introdução ao PolyBase

Concluído

O PolyBase é o recurso usado pelo SQL Server para habilitar o conceito de virtualização de dados. O PolyBase foi originalmente lançado no SQL Server 2016 e é aprimorado em cada versão posterior do SQL Server. No entanto, o conceito geral de acessar dados remotamente sem precisar copiá-los remonta ao SQL Server 7.0 com a introdução do Servidor vinculado.

A tabela a seguir lista a primeira versão do SQL Server para dar suporte a vários recursos do PolyBase.

SQL Server 2016 SQL Server 2017 SQL Server 2019 SQL Server 2025
•Hadoop
• Armazenamento de Blobs do Azure
• Aprimoramentos de OPENROWSET
• CSV para Armazenamento de Blobs do Azure
• Credencial com escopo de banco de dados
• SQL Server
•Oráculo
• Azure Cosmos DB
•Mongodb
•Teradata
• Suporte do Linux
• ODBC genérico
• Nova estrutura do conector
• Integração do armazenamento de objetos
•CSV
• Parquet
•Delta
• CETAS

Para obter mais informações sobre o PolyBase, consulte os recursos e limitações do PolyBase.

Aprimoramentos do PolyBase no SQL Server 2025

  • Suporte nativo para CSV, Parquet & Delta 1: a instalação do Serviço de Consulta PolyBase para Dados Externos não é mais necessária para usar OPENROWSET, CREATE EXTERNAL TABLE ou CREATE EXTERNAL TABLE AS SELECT com os seguintes tipos de dados externos: Parquet, Delta, Armazenamento de Blobs do Azure (ABS), Azure Data Lake Storage (ADLS) ou armazenamento de objetos compatível com S3.

  • Use fontes de dados ODBC genéricas no Linux: para obter mais informações, consulte Configurar o PolyBase para acessar dados externos com tipos genéricos ODBC.

  • Suporte ao TDS 8.0: ao usar o Microsoft ODBC Driver 18 para SQL Server, o TDS 8.0 não tem suporte para o SQL Server como uma fonte de dados externa.

Armazenamento de objetos compatível com o S3

O SQL Server 2025 dá suporte ao armazenamento de objetos compatível com S3. Para habilitar essa integração, o SQL Server 2025 usa uma arquitetura de estrutura do conector da API REST que segue a estrutura S3. Qualquer armazenamento de objetos que dê suporte à estrutura S3 também funciona com o SQL Server 2025. Soluções de armazenamento de objetos compatíveis com S3 podem ser executadas localmente, em sua rede, na nuvem ou em um ambiente híbrido.

O armazenamento de objetos, também conhecido como armazenamento baseado em objeto, é uma estratégia que gerencia e manipula o armazenamento de dados como unidades distintas, chamadas de objetos. Esses objetos são mantidos em um único repositório e não são inseridos em arquivos dentro de outras pastas. Em vez disso, o armazenamento de objetos combina os dados que compõem um arquivo, adiciona todos os metadados relevantes a esse arquivo e anexa um identificador personalizado.

Alguns dos principais recursos do armazenamento de objetos em comparação com um sistema de arquivos tradicional são:

  • Mantém metadados inseridos no arquivo.
  • Permite que os arquivos tenham atributos como tags.
  • Mais econômico para dimensionar e facilitar a manutenção.
  • Otimizado para grandes quantidades de dados, como Big Data, Internet das Coisas (IoT), IA, Machine Learning e análise.
  • Não recomendado para cargas de trabalho altamente transacionais ou de processamento de transações online (OLTP).

Você também pode usar o armazenamento de objetos compatível com S3 para cenários de backup e restauração usando o comando URL BACKUP TO. Para obter mais informações, confira Backup e restauração do SQL Server com o armazenamento de objetos compatível com S3.

A estrutura padrão S3 é amplamente adotada e muitos dos principais provedores de armazenamento agora oferecem soluções de armazenamento de objetos compatíveis com S3. Se uma solução oferecer compatibilidade com APIs REST S3, ela será compatível com o SQL Server 2025. Para obter uma lista de provedores de armazenamento de objetos com suporte, consulte Provedores de armazenamento de objetos compatíveis com S3.

Alguns parceiros de armazenamento de objetos oferecem a capacidade de executar a solução como software capaz de virtualizar seu armazenamento atual. Você pode instalar e experimentar essas soluções em sua própria máquina ou VM (máquina virtual).

Serviços do PolyBase versus o recurso da API REST do PolyBase

Para usar o PolyBase, você deve instalar o Serviço de Consulta do PolyBase para Dados Externos e habilitar o PolyBase em um nível de instância usando sp_configure. A instalação do PolyBase instala dois serviços do PolyBase, o Mecanismo PolyBase do SQL Server e a Movimentação de Dados do PolyBase do SQL Server.

  • Mecanismo PolyBase do SQL Server

    • Executável do serviço: mpdwsvc.exe -dweng
    • Analisa consultas.
    • Gera planos de consulta.
    • Distribui o trabalho para nós de computação (SQL Server 2019).
    • Processa os resultados do nó de computação e envia os resultados de volta para o cliente (SQL Server 2019).
  • Movimentação de dados do PolyBase do SQL Server

    • Executável do serviço: mpdwsvc.exe -dms
    • Transfere os dados entre as fontes de dados externas e entre os nós principais e de computação do PolyBase (SQL Server 2019).
    • Insere dados em outras fontes de dados, como o Armazenamento do Azure.

Fontes de dados como SQL Server, Oracle, MongoDB ou fontes baseadas em ODBC usam esses serviços do PolyBase. As fontes de dados que usam a arquitetura PolyBase baseada em API REST do SQL Server 2025 não exigem que esses serviços estejam em execução ou configurados, mas o Serviço de Consulta do PolyBase para Dados Externos ainda deve estar instalado e habilitado.

Você pode usar as APIs REST do PolyBase para acessar o Armazenamento do Azure Data Lake, o Armazenamento de Blobs do Azure, qualquer armazenamento de objetos compatível com S3 e formatos de arquivo, como arquivos Parquet, Delta e CSV. As fontes de dados com suporte anterior ainda usam os serviços SQL Server PolyBase Engine e Movimentação de Dados PolyBase do SQL Server.

Fonte de dados Serviços do PolyBase Recurso da API REST do PolyBase
Armazenamento de Blobs do Azure Não Yes
Azure Data Lake Storage Não Yes
Armazenamento de objetos compatível com o S3 Não Yes
SQL Server Yes Não
Oracle Yes Não
Teradata Yes Não
API do MongoDB ou do Azure Cosmos DB para MongoDB Yes Não
Conectividade genérica de banco de dados aberto (ODBC) Yes Não
Operações em massa Yes Não