Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server
Azure Synapse Analytics
Analytics Platform System (PDW)
PolyBase habilita la virtualización de datos para SQL Server.
¿Qué es PolyBase?
PolyBase permite que la instancia de SQL Server consulte datos con Transact-SQL (T-SQL) directamente desde SQL Server, Oracle, Teradata, MongoDB, clústeres de Hadoop, Cosmos DB y almacenamiento de objetos compatible con S3 sin instalar software de conexión de cliente por separado. También puede usar el conector ODBC genérico para conectarse a proveedores adicionales mediante controladores ODBC de terceros. PolyBase permite que las consultas T-SQL combinen los datos de orígenes externos con tablas relacionales en una instancia de SQL Server.
PolyBase también admite la consulta de formatos de datos semiestructurados y estructurados basados en archivos, como archivos CSV, Parquet, JSON y Delta Lake. Esto permite la integración sin problemas de datos basados en archivos en los flujos de trabajo de T-SQL.
Un caso de uso clave para la virtualización de datos con la característica de PolyBase es permitir que los datos permanezcan en su ubicación y formato originales. Puede virtualizar los datos externos a través de la instancia de SQL Server, para que se puedan consultar in situ como cualquier otra tabla de SQL Server. Este proceso minimiza la necesidad de procesos ETL para el movimiento de datos. Este escenario de virtualización de datos es posible con el uso de conectores de PolyBase.
Servicios y productos de SQL compatibles
PolyBase proporciona estas mismas funcionalidades para los siguientes productos SQL de Microsoft:
SQL Server 2016 (13.x) y versiones posteriores (Windows)
SQL Server 2019 (15.x) y versiones posteriores (Windows y Linux)
Azure SQL Managed Instance, para más información, consulte Virtualización de datos con Azure SQL Managed Instance.
Para más información, consulte Virtualización de datos con Azure SQL Database (versión preliminar)
Sistema de la plataforma de análisis (PDW) de SQL Server
Azure Synapse Analytics (para grupos de SQL dedicados)
- La virtualización de datos en Azure Synapse Analytics está disponible en dos modos: PolyBase y nativo. Para más información, vea Uso de tablas externas con Synapse SQL.
Mejoras de PolyBase de SQL Server 2025
| Novedades de SQL Server 2025 (17.x) | Detalles |
|---|---|
| Compatibilidad nativa con CSV, Parquet y Delta 1 | El servicio de consultas de PolyBase para la instalación de datos externos ya no es necesario para usar OPENROWSET, CREATE EXTERNAL TABLEo CREATE EXTERNAL TABLE AS SELECT con los siguientes tipos de datos externos: Parquet, Delta, Azure Blob Storage (ABS), Azure Data Lake Storage (ADLS) o S3-Compatible Almacenamiento de objetos. |
| Uso de orígenes de datos ODBC genéricos en Linux | Para obtener más información, consulte Configuración de PolyBase para acceder a datos externos con tipos genéricos ODBC. |
| Compatibilidad con TDS 8.0 | PolyBase usa una configuración segura por defecto con ODBC Driver para SQL Server versión 18 y Encrypt=Yes (obligatorio). A diferencia de otras características de SQL Server, PolyBase permite TrustServerCertificate=True escenarios de certificados autofirmados. Para aplicar TLS 1.3 y el cifrado estricto con TDS 8.0, establezca Encrypt=Strict y TrustServerCertificate=No. Para obtener más información, vea CREATE EXTERNAL DATA SOURCE - CONNECTION_OPTIONS. Revise Cambios importantes en las características del motor de base de datos en SQL Server 2025. |
| Identidad administrada | La identidad administrada está disponible para SQL Server habilitada por Azure Arc y SQL Server 2025 en máquinas virtuales de Azure. |
1 En SQL Server 2025 (17.x), el servicio de consultas de PolyBase para datos externos sigue siendo necesario para conectarse con otras bases de datos. Por ejemplo: SQL Server, Oracle, DB2, Teradata, MongoDB o ODBC.
Mejoras de PolyBase en SQL Server 2022
| Nuevo en SQL Server 2022 (16.x) | Detalles |
|---|---|
| Almacenamiento de objetos compatible con S3 | SQL Server 2022 (16.x) agrega un nuevo conector, el almacenamiento de objetos compatible con S3, mediante la API de REST de S3. Puede usar OPENROWSET y CREATE EXTERNAL TABLE para consultar archivos de datos en el almacenamiento de objetos compatible con S3. |
| Algunos conectores independientes de los servicios de PolyBase | El conector de almacenamiento de objetos compatible con S3, ADSL Gen2 y Azure Blob Storage ya no dependen de los servicios de PolyBase. No obstante, los servicios de PolyBase deben ejecutarse para admitir la conectividad con Oracle, Teradata, MongoDB y ODBC genérico. Además, debe instalarse la característica PolyBase en la instancia de SQL Server. |
| Formato de archivo Parquet | Ahora, PolyBase es capaz de consultar datos de archivos Parquet almacenados en el almacenamiento de objetos compatible con S3. Para obtener más información, consulte Virtualización del archivo parquet en un almacenamiento de objetos compatible con S3 con PolyBase. |
| Formato de tabla Delta | PolyBase ahora es capaz de consultar datos (de solo lectura) del formato de tabla Delta almacenados en un almacenamiento de objetos compatible con S3, una cuenta de Azure Storage V2 y Azure Data Lake Storage Gen2. Para obtener más información, consulte Virtualizar tabla delta con PolyBase. |
| Crear una tabla externa como Select (CETAS) | PolyBase ahora puede usar CETAS para crear una tabla externa y, a continuación, exportar, en paralelo, el resultado de una instrucción Transact-SQL SELECT a Azure Data Lake Storage Gen2, la cuenta de Azure Storage V2 y el almacenamiento de objetos compatible con S3. Para obtener más información, vea CREATE EXTERNAL TABLE AS SELECT (CETAS). |
Para obtener más características nuevas de SQL Server 2022 (16.x), vea Novedades de SQL Server 2022.
Sugerencia
Para ver un tutorial sobre las características y funcionalidades de PolyBase en SQL Server 2022 (16.x), consulte Introducción a PolyBase en SQL Server 2022.
Conectores de PolyBase
La característica de PolyBase proporciona conectividad con los siguientes orígenes de datos externos:
| Orígenes de datos externos | SQL Server 2016-2019 con PolyBase | SQL Server 2022 (16.x) con PolyBase | PDW DE APS | Azure Synapse Analytics |
|---|---|---|---|---|
| Oracle, MongoDB, Teradata | Lectura | Lectura | No | No |
| ODBC genérico | Lectura (solo Windows) | Lectura (solo Windows) | No | No |
| Azure Storage | Leer/Escribir | Leer/Escribir | Leer/Escribir | Leer/Escribir |
| Hadoop | Leer/Escribir | No | Leer/Escribir | No |
| SQL Server | Lectura | Lectura | No | No |
| Almacenamiento de objetos compatible con S3 | No | Leer/Escribir | No | No |
- SQL Server 2022 (16.x) y versiones posteriores no admiten Hadoop.
- SQL Server 2016 (13.x) presentó PolyBase compatible con conexiones a Hadoop y Azure Blob Storage.
- SQL Server 2019 (15.x) introdujo más conectores, como SQL Server, Oracle, Teradata y MongoDB.
- SQL Server 2022 (16.x) presentó el conector de almacenamiento compatible con S3.
- La actualización acumulativa 19 de SQL Server 2019 (15.x) presentó la compatibilidad con Oracle TNS.
- La actualización acumulativa 2 de SQL Server 2022 (16.x) presentó la compatibilidad con Oracle TNS.
Algunos ejemplos de conectores externos son:
1 PolyBase admite dos proveedores de Hadoop, Hortonworks Data Platform (HDP) y Cloudera Distributed Hadoop (CDH), a través de SQL Server 2019. Se ha retirado la compatibilidad de SQL Server con orígenes de datos externos de HDFS Cloudera (CDP) y Hortonworks (HDP) y no se incluye en SQL Server 2022 (16.x) y versiones posteriores. Para obtener más información, consulte Opciones de macrodatos en la plataforma Microsoft SQL Server.
Para usar PolyBase en una instancia de SQL Server:
- Instale PolyBase en Windows o instale PolyBase en Linux.
- A partir de SQL Server 2019 (15.x), habilite PolyBase en sp_configure, si es necesario.
- Cree un origen de datos externo.
- Cree una tabla externa.
Integración con Azure
Con la ayuda de PolyBase, las consultas T-SQL también pueden importar y exportar datos desde Azure Blob Storage. Además, PolyBase permite a Azure Synapse Analytics importar y exportar datos desde Azure Data Lake Store y Azure Blob Storage.
Por qué usar PolyBase
PolyBase permite combinar datos de una instancia de SQL Server con datos externos. Antes de que PolyBase permitiera unir datos a orígenes de datos externos, podría:
- Transferir la mitad de los datos para que todos estuvieran en una sola ubicación.
- Consultar ambos orígenes de datos, después escribir una lógica de consulta personalizada para combinar e integrar los datos en el nivel de cliente.
PolyBase le permite usar Transact-SQL para combinar los datos.
PolyBase no requiere que instale software adicional en su entorno de Hadoop. Los datos externos se consultan mediante la misma sintaxis T-SQL que se utiliza para consultar una tabla de base de datos. Las acciones de asistencia implementadas por PolyBase son transparentes. El autor de la consulta no necesita ningún conocimiento sobre el origen externo.
Usos de PolyBase
PolyBase permite estos escenarios en SQL Server:
- Acceso directo a los datos: Consulte otros ARCHIVOS RDBM o archivos externos como tablas CSV, Parquet y Delta Lake mediante T-SQL como si fueran tablas nativas.
- Datos inactivos de carga: Mientras se mantiene fácilmente accesible.
- Productividad mejorada: Reduzca el tiempo y el esfuerzo necesarios para integrar y analizar datos de varios orígenes.
- Rentabilidad: Minimice la necesidad de replicación de datos y costos de almacenamiento asociados a los métodos tradicionales de integración de datos.
- Información en tiempo real: Habilite la consulta y la información de datos en tiempo real sin retrasos causados por el movimiento o la sincronización de datos.
- Seguridad: Use características de seguridad de SQL Server para permisos granulares, administración de credenciales y control.
Rendimiento
No hay límites estrictos para el número de archivos o la cantidad de datos que se pueden consultar. El rendimiento de las consultas depende de la cantidad de datos, el formato de los datos, la forma en que se organizan los datos y la complejidad de las consultas y las combinaciones.
Para obtener más información sobre la guía de rendimiento y las recomendaciones para PolyBase, consulte Consideraciones de rendimiento en PolyBase para SQL Server.
Actualizar a SQL Server 2022
A partir de SQL Server 2022 (16.x), Hortonworks Data Platform (HDP) y Cloudera Distributed Hadoop (CDH) ya no se admiten. Debido a estos cambios, debe quitar manualmente orígenes de datos externos de PolyBase creados en versiones anteriores de SQL Server que usan TYPE = HADOOP o Azure Storage antes de migrar a SQL Server 2022 (16.x) o posterior. Para depositar orígenes de datos externos, también es necesario depositar los objetos de base de datos asociados, como las credenciales con ámbito de base de datos y las tablas externas.
Los conectores de Azure Storage se deben cambiar en función de la tabla de referencia siguiente:
| Origen de datos externo | Desde | Hacia |
|---|---|---|
| Azure Blob Storage (Servicio de almacenamiento de blobs de Azure) | wasb[s] |
abs |
| ADLS Gen2 | abfs[s] |
adls |
Primeros pasos
Antes de usar PolyBase, debe instalar PolyBase en Windows o instalar PolyBase en Linux y habilitar PolyBase en sp_configure, si fuera necesario.
Para obtener un tutorial sobre las características y funcionalidades de PolyBase, consulte Introducción a PolyBase en SQL Server 2022.
Para obtener más tutoriales sobre varios orígenes de datos externos, consulte:
- Hadoop
- Azure Blob Storage
- SQL Server
- Oráculo
- Teradata
- MongoDB
- Tipos genéricos ODBC
- Almacenamiento de objetos compatible con S3
- Archivo CSV
- Archivo Parquet
- Tabla delta
Virtualización de datos en otras plataformas
Las características de virtualización de datos también están disponibles en otras plataformas:
- Uso de tablas externas con Synapse SQL
- Virtualización de datos con Azure SQL Managed Instance
- Virtualización de datos con Azure SQL Database (versión preliminar)
Contenido relacionado
- Introducción a PolyBase en SQL Server 2022
- OPENROWSET (Transact-SQL)
- CREATE EXTERNAL TABLE (Transact-SQL)
- CREAR TABLA EXTERNA COMO SELECT (CETAS) (Transact-SQL)
- Consideraciones de rendimiento en PolyBase para SQL Server
- Preguntas más frecuentes en PolyBase
- Supervisión y solución de problemas de PolyBase
- Referencia de Transact-SQL de PolyBase