¿Qué es PolyBase?What is PolyBase?

SE APLICA A: síSQL Server noAzure SQL Database síAzure SQL Data Warehouse síAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server noAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

PolyBase permite que la instancia de SQL Server 2016 procese consultas Transact-SQL que leen datos de Hadoop.PolyBase enables your SQL Server 2016 instance to process Transact-SQL queries that read data from Hadoop. La misma consulta también puede acceder a las tablas relacionales de SQL Server.The same query can also access relational tables in your SQL Server. PolyBase permite que la misma consulta también combine los datos de Hadoop y SQL Server.PolyBase enables the same query to also join the data from Hadoop and SQL Server. En SQL Server, una tabla externa o un origen de datos externo proporciona la conexión a Hadoop.In SQL Server, an external table or external data source provides the connection to Hadoop.

Lógica de PolyBasePolyBase logical

PolyBase inserta algunos cálculos en el nodo de Hadoop para optimizar la consulta global.PolyBase pushes some computations to the Hadoop node to optimize the overall query. Sin embargo, el acceso externo de PolyBase no se limita a Hadoop.However, PolyBase external access is not limited to Hadoop. También se admiten otras tablas no relacionales no estructuradas, como archivos de texto delimitado.Other unstructured non-relational tables are also supported, such as delimited text files.

Sugerencia

SQL Server 2019 presenta nuevos conectores para PolyBase, incluido SQL Server, Oracle, Teradata y MongoDB.SQL Server 2019 introduces new connectors for PolyBase, including SQL Server, Oracle, Teradata, and MongoDB. Para obtener más información, consulte la documentación de PolyBase para SQL Server 2019.For more information, see the PolyBase documentation for SQL Server 2019

PolyBase permite que la instancia de SQL Server procese consultas Transact-SQL que lean datos de orígenes de datos externos.PolyBase enables your SQL Server instance to process Transact-SQL queries that read data from external data sources. SQL Server 2016 y versiones posterior puede tener acceso a datos externos en Hadoop y Azure Blob Storage.SQL Server 2016 and higher can access external data in Hadoop and Azure Blob Storage. A partir de SQL Server 2019, ya puede usar PolyBase para tener acceso a datos externos en SQL Server, Oracle, Teradata y MongoDB.Starting in SQL Server 2019, you can now use PolyBase to access external data in SQL Server, Oracle, Teradata, and MongoDB.

Las mismas consultas que acceden a datos externos pueden dirigirse también a tablas relacionales en la instancia de SQL Server.The same queries that access external data can also target relational tables in your SQL Server instance. Esto permite combinar datos de orígenes externos con datos relacionales de gran valor en la base de datos.This allows you to combine data from external sources with high-value relational data in your database. En SQL Server, una tabla externa o un origen de datos externo proporciona la conexión a Hadoop.In SQL Server, an external table or external data source provides the connection to Hadoop.

PolyBase inserta algunos cálculos en el nodo de Hadoop para optimizar la consulta global.PolyBase pushes some computations to the Hadoop node to optimize the overall query. Sin embargo, el acceso externo de PolyBase no se limita a Hadoop.However, PolyBase external access is not limited to Hadoop. También se admiten otras tablas no relacionales no estructuradas, como archivos de texto delimitado.Other unstructured non-relational tables are also supported, such as delimited text files.

Servicios y productos de SQL compatiblesSupported SQL products and services

PolyBase proporciona estas mismas funcionalidades para los siguientes productos SQL de Microsoft:PolyBase provides these same functionalities for the following SQL products from Microsoft:

  • SQL Server 2016 y versiones posteriores (solo Windows)SQL Server 2016 and later versions (Windows only)
  • Analytics Platform System (anteriormente Almacenamiento de datos paralelos)Analytics Platform System (formerly Parallel Data Warehouse)
  • Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse

Integración con AzureAzure integration

Con la ayuda de PolyBase, las consultas T-SQL también pueden importar y exportar datos desde Azure Blob Storage.With the underlying help of PolyBase, T-SQL queries can also import and export data from Azure Blob Storage. Además, PolyBase permite a Azure SQL Data Warehouse importar y exportar datos desde Azure Data Lake Store y Azure Blob Storage.Further, PolyBase enables Azure SQL Data Warehouse to import and export data from Azure Data Lake Store, and from Azure Blob Storage.

Por qué usar PolyBaseWhy use PolyBase?

En el pasado era más difícil combinar los datos de SQL Server con datos externos.In the past it was more difficult to join your SQL Server data with external data. Tenía las dos opciones desagradables siguientes:You had the two following unpleasant options:

  • Transferir la mitad de sus datos de modo que todos sus datos estuvieran en un formato u otro.Transfer half your data so that all your data was in one format or the other.
  • 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.Query both sources of data, then write custom query logic to join and integrate the data at the client level.

PolyBase evita esas opciones incómodas mediante el uso de T-SQL para combinar los datos.PolyBase avoids those unpleasant options by using T-SQL to join the data.

Por simplificar, PolyBase no requiere que instale más software en el entorno de Hadoop.To keep things simple, PolyBase does not require you to install additional software to your Hadoop environment. Los datos externos se consultan mediante la misma sintaxis T-SQL que se utiliza para consultar una tabla de base de datos.You query external data by using the same T-SQL syntax used to query a database table. Las acciones de asistencia implementadas por PolyBase son transparentes.The support actions implemented by PolyBase all happen transparently. El autor de la consulta no necesita ningún conocimiento sobre Hadoop.The query author does not need any knowledge about Hadoop.

Usos de PolyBasePolyBase uses

PolyBase permite estos escenarios en SQL Server:PolyBase enables the following scenarios in SQL Server:

  • Consultar datos almacenados en Hadoop desde SQL Server o PDW.Query data stored in Hadoop from SQL Server or PDW. Los usuarios almacenan datos en sistemas rentables, distribuidos y escalables, como Hadoop.Users are storing data in cost-effective distributed and scalable systems, such as Hadoop. PolyBase facilita la consulta de datos mediante T-SQL.PolyBase makes it easy to query the data by using T-SQL.

  • Consultar datos almacenados en Azure Blob Storage.Query data stored in Azure Blob Storage. El almacenamiento de blobs de Azure es un lugar muy cómodo donde almacenar datos para que los usen los servicios de Azure.Azure blob storage is a convenient place to store data for use by Azure services. PolyBase facilita el acceso a los datos mediante T-SQL.PolyBase makes it easy to access the data by using T-SQL.

  • Importación de datos desde Hadoop, Azure Blob Storage o Azure Data Lake StoreImport data from Hadoop, Azure Blob Storage, or Azure Data Lake Store. Saque partido de la velocidad de la tecnología de almacén de columnas y las capacidades de análisis de Microsoft SQL e importe datos desde Hadoop, Azure Blob Storage o Azure Data Lake Store en tablas relacionales.Leverage the speed of Microsoft SQL's columnstore technology and analysis capabilities by importing data from Hadoop, Azure Blob Storage, or Azure Data Lake Store into relational tables. No es necesaria ninguna herramienta independiente de ETL o de importación.There is no need for a separate ETL or import tool.

  • Exportar datos a Hadoop, Azure Blob Storage o Azure Data Lake StoreExport data to Hadoop, Azure Blob Storage, or Azure Data Lake Store. Archive datos en Hadoop, Azure Blob Storage o Azure Data Lake Store para disfrutar de un almacenamiento rentable y mantenerlo en línea para un fácil acceso.Archive data to Hadoop, Azure Blob Storage, or Azure Data Lake Store to achieve cost-effective storage and keep it online for easy access.

  • Integrarse con herramientas de BI.Integrate with BI tools. Use PolyBase con la pila de análisis y la inteligencia empresarial de Microsoft o recurra a cualquier herramienta de terceros que sea compatible con SQL Server.Use PolyBase with Microsoft's business intelligence and analysis stack, or use any third party tools that are compatible with SQL Server.

RendimientoPerformance

  • Inserción de cálculo en Hadoop.Push computation to Hadoop. El optimizador de consultas toma una decisión basada en costos para insertar cálculo en Hadoop cuando, al hacerlo, se va a mejorar el rendimiento de las consultas.The query optimizer makes a cost-based decision to push computation to Hadoop when doing so will improve query performance. Para tomar esa decisión basada en costos, usa estadísticas relativas a las tablas externas.It uses statistics on external tables to make the cost-based decision. La inserción de cálculo crea trabajos MapReduce y aprovecha los recursos de cálculo distribuidos de Hadoop.Pushing computation creates MapReduce jobs and leverages Hadoop's distributed computational resources.

  • Escala de los recursos de cálculo.Scale compute resources. Para mejorar el rendimiento de las consultas, puede usar grupos de escalado horizontal de PolyBasede SQL Server.To improve query performance, you can use SQL Server PolyBase scale-out groups. Gracias a esto, la transferencia de datos paralelos entre instancias de SQL Server y nodos de Hadoop es factible y, además, se agregan recursos de cálculo para operar en los datos externos.This enables parallel data transfer between SQL Server instances and Hadoop nodes, and it adds compute resources for operating on the external data.

Pasos siguientesNext steps

Antes de usar PolyBase, debe instalar la característica PolyBase.Before using PolyBase, you must install the PolyBase feature. Después, eche un vistazo a estas guías de configuración según el origen de datos:Then see the following configuration guides depending on your data source:

Pasos siguientesNext steps

Antes de usar PolyBase, debe instalar la característica PolyBase.Before using PolyBase, you must install the PolyBase feature. Después, eche un vistazo a estas guías de configuración según el origen de datos:Then see the following configuration guides depending on your data source: