Preguntas más frecuentes en PolyBase

Se aplica a: SQL Server 2016 (13.x) y versiones posteriores

PolyBase frente a servidores vinculados

En la tabla siguiente se resaltan las diferencias entre las características de servidor vinculado y PolyBase:

PolyBase Servidores vinculados
Objeto con ámbito de base de datos. Objeto con ámbito de instancia.
Usa controladores ODBC. Usa proveedores OLEDB.
Admite operaciones de solo lectura para todos los orígenes de datos y escritura en algunos orígenes de datos externos Admite tanto operaciones de lectura como de escritura.
Las consultas al origen de datos remotos desde una sola conexión se pueden escalar horizontalmente Las consultas al origen de datos remotos desde una única conexión no se pueden escalar horizontalmente
Se admite la aplicación de predicados. Se admite la aplicación de predicados.
No se necesita ninguna configuración independiente para el grupo de disponibilidad Se necesita una configuración independiente para cada instancia del grupo de disponibilidad
Solo autenticación básica Autenticación básica e integrada
Adecuado para procesar un gran número de filas de consultas de análisis Adecuado para consultas OLTP que devuelven algunas filas
Las consultas que usan tablas externas no pueden participar en transacciones distribuidas Las consultas distribuidas pueden participar en transacciones distribuidas

Novedades de PolyBase en SQL Server 2022

SQL Server 2022 (16.x) ahora admite archivos CSV, Parquet y Delta almacenados en la cuenta de Azure Storage v2, Azure Data Lake Storage Gen2 o cualquier almacenamiento de objetos compatible con S3 mediante la API REST de S3, en el en el entorno local o en la nube.

SQL Server 2022 (16.x) ahora puede usar CREATE EXTERNAL TABLE como SELECT (CETAS), junto con comandos como OPENROWSET, CREATE EXTERNAL TABLE (CET) y todas las nuevas mejoras de T-SQL.

Actualmente, se ha quitado la compatibilidad con orígenes de datos externos de Hadoop en SQL Server 2022 (16.x).

La actualización acumulativa 2 de SQL Server 2022 (16.x) presenta ahora una compatibilidad con los archivos TNS de Oracle. Para más información y muestras, consulte: CREACIÓN DE ORÍGENES DE DATOS EXTERNOS.

Obtenga más información sobre la virtualización de datos con PolyBase para SQL Server 2022 y revise las mejoras de PolyBase de SQL Server 2022.

Novedades de PolyBase en SQL Server 2019

PolyBase en SQL Server 2019 (15.x) ahora puede leer datos de una gama mayor de orígenes de datos. Los datos de estos orígenes de datos externos se pueden almacenar como tablas externas en SQL Server. PolyBase además admite el cálculo de aplicación en estos orígenes de datos externos, excepto los tipos de ODBC genéricos.

Orígenes de datos compatibles

  • SQL Server
  • Oracle
  • Teradata
  • MongoDB
  • Tipos genéricos de ODBC compatibles

La actualización acumulativa 19 de SQL Server 2019 (15.x) presenta ahora una compatibilidad con los archivos TNS de Oracle. Para más información y muestras, consulte: CREACIÓN DE ORÍGENES DE DATOS EXTERNOS.

Nota:

PolyBase puede permitir la conexión a orígenes de datos externos mediante controladores ODBC de terceros. Estos controladores no se proporcionan con PolyBase y podrían no funcionar según lo previsto. Para más información, consulte Configuración de PolyBase para acceder a datos externos con tipos genéricos de ODBC.

¿Qué CONNECTION_OPTIONS puedo especificar para la conexión a orígenes de datos de terceros?

Revise CREATE EXTERNAL DATA SOURCE (Transact-SQL) CONNECTION_OPTIONS para ver las opciones de conexión admitidas del proveedor de datos para SQL Server, Oracle, Teradata, mongoDB API para Cosmos DB y proveedores de datos ODBC genéricos.

¿Cómo puedo ver el plan de ejecución de consultas remotas del cálculo de delegación de PolyBase?

Se puede hacer con un par de métodos que dependen de la versión de SQL Server. Consulte Solución de problemas de PolyBase: Para ver el plan de consulta de PolyBase.

¿Cómo puedo saber si se está produciendo un cálculo de delegación de PolyBase?

¿Polybase se admite en la base de datos de Azure SQL?

Puede consultar los datos de los archivos colocados en Azure Blob Storage mediante la función OPENROWSET o usar CREATE EXTERNAL TABLE para leer desde un grupo de SQL sin sin servidor en Synapse Analytics. Para más información, consulte Azure SQL puede leer archivos de Azure Data Lake Storage mediante tablas externas de Synapse SQL.

¿PolyBase se admite en Azure SQL Managed Instance?

Azure SQL Managed Instance tiene sus propias funcionalidades de virtualización de datos para Azure Data Lake Storage (ADLS) y Azure Blob Storage como orígenes de datos. Para obtener más información, vea Virtualización de datos con Azure SQL Managed Instance.

¿Qué puertos debo permitir a través del firewall para PolyBase?

No es necesario abrir ningún puerto adicional para PolyBase, excepto en el caso de un grupo de escalado horizontal de PolyBase. Sin un grupo de escalado horizontal, el servicio de PolyBase por sí solo no debería requerir ninguna regla de firewall.

En los servidores Windows, PolyBase aprovechará los puertos que usa SQL Server en la sección IPAll de la configuración de TCP/IP en Administrador de configuración de SQL Server. Para más información, consulte Propiedades de TCP/IP. En los servidores Linux, PolyBase aprovechará el valor network.tcpport. Para más información, consulte Puerto TCP.

Para los grupos de escalado horizontal de PolyBase en varios servidores Windows, consulte la información sobre puertos que aparece en la pregunta siguiente.

Sin embargo, debe permitir otros puertos para la comunicación con los distintos orígenes de datos externos que utiliza PolyBase. Consulte la documentación específica sobre los orígenes de datos, la configuración de los recursos de Azure o la configuración de ODBC. Por ejemplo:

Plataforma de origen Referencia
Microsoft SQL Server Puertos utilizados por SQL Server
Hortonworks HDP Administración de HDFS
Cloudera CDH Puertos utilizados por componentes de CDH

¿Qué puertos se utilizan para el grupo de escalado horizontal de PolyBase?

De manera predeterminada, el servicio de movimiento de datos de PolyBase se conecta al nodo principal de un grupo de escalado horizontal a través de un intervalo de puertos TCP que van de 16450 a 16460, por lo general utilizando 16450-16453, más el puerto 17001. Estos puertos solo se utilizan cuando se configura un grupo de escalado horizontal de PolyBase y se deben permitir a través de firewalls de servidor. El programa de instalación de SQL Server debe crear automáticamente una regla de firewall local que permita estos puertos tras la instalación de características. Para más información, consulte Configuración de los grupos de escalado horizontal de PolyBase en Windows.

Nota:

Los grupos de escalado horizontal de PolyBase de Microsoft SQL Server se retirarán. La funcionalidad de los grupos de escalabilidad horizontal se quitará del producto en SQL Server 2022 (16.x).

PolyBase en Clústeres de macrodatos frente a PolyBase en instancias independientes.

Para más información sobre las conexiones mediante el conector ODBC genérico, consulte la guía para configurar tipos genéricos de ODBC.

En la tabla siguiente se resaltan las características de PolyBase disponibles en la instalación independiente de SQL Server 2019 (15.x) y el clúster de macrodatos de SQL Server 2019 (15.x):

Característica Clúster de macrodatos Instancia independiente
Crear un origen de datos externos desde SQL Server, Oracle, Teradata y Mongo DB X X
Crear un origen de datos externos con un controlador ODBC de terceros compatible X
Crear un origen de datos externos para el origen de datos HADOOP X X
Crear un origen de datos externo para Azure Blob Storage X X
Crear una tabla externa en un grupo de datos de SQL Server X
Crear una tabla externa en un grupo de almacenamiento de SQL Server X
Escalar horizontalmente la ejecución de consultas X X (solo Windows)

Importante

El complemento Clústeres de macrodatos de Microsoft SQL Server 2019 se va a retirar. La compatibilidad con Clústeres de macrodatos de SQL Server 2019 finalizará el 28 de febrero de 2025. Todos los usuarios existentes de SQL Server 2019 con Software Assurance serán totalmente compatibles con la plataforma, y el software se seguirá conservando a través de actualizaciones acumulativas de SQL Server hasta ese momento. Para más información, consulte la entrada de blog sobre el anuncio y Opciones de macrodatos en la plataforma Microsoft SQL Server.