Che cos'è PolyBase?What is PolyBase?

SI APPLICA A: SQL Server Database SQL di Azure Azure Synapse Analytics (SQL DW) Parallel Data Warehouse

PolyBase consente all'istanza di SQL Server 2016 di elaborare query Transact-SQL che leggono i dati da Hadoop.PolyBase enables your SQL Server 2016 instance to process Transact-SQL queries that read data from Hadoop. La stessa query può anche accedere a tabelle relazionali in SQL Server.The same query can also access relational tables in your SQL Server. PolyBase consente anche alla stessa query di creare un join per dati da Hadoop e SQL Server.PolyBase enables the same query to also join the data from Hadoop and SQL Server. In SQL Server, una tabella esterna oppure un'origine dati esterna fornisce la connessione a Hadoop.In SQL Server, an external table or external data source provides the connection to Hadoop.

Logica di PolyBasePolyBase logical

PolyBase esegue il push di alcuni calcoli sul nodo Hadoop per ottimizzare la query complessiva.PolyBase pushes some computations to the Hadoop node to optimize the overall query. Tuttavia, l'accesso esterno di PolyBase non è limitato a Hadoop.However, PolyBase external access is not limited to Hadoop. Sono supportate anche altre tabelle non relazionali non strutturate, ad esempio i file di testo delimitato.Other unstructured non-relational tables are also supported, such as delimited text files.

Suggerimento

SQL Server 2019 introduce nuovi connettori per PolyBase, tra cui SQL Server, Oracle, Teradata e MongoDB.SQL Server 2019 introduces new connectors for PolyBase, including SQL Server, Oracle, Teradata, and MongoDB. Per altre informazioni, vedere la documentazione relativa a PolyBase per SQL Server 2019For more information, see the PolyBase documentation for SQL Server 2019

PolyBase consente all'istanza di SQL Server di elaborare query Transact-SQL che leggono i dati da origini dati esterne.PolyBase enables your SQL Server instance to process Transact-SQL queries that read data from external data sources. SQL Server 2016 e versioni successive possono accedere a dati esterni in Hadoop e Archiviazione BLOB di Azure.SQL Server 2016 and higher can access external data in Hadoop and Azure Blob Storage. A partire da SQL Server 2019, è ora possibile usare PolyBase per accedere ai dati esterni in SQL Server, Oracle, Teradata e MongoDB.Starting in SQL Server 2019, you can now use PolyBase to access external data in SQL Server, Oracle, Teradata, and MongoDB.

Le stesse query che accedono ai dati esterni possono essere anche destinate a tabelle relazionali nell'istanza di SQL Server.The same queries that access external data can also target relational tables in your SQL Server instance. In questo modo è possibile combinare dati provenienti da origini esterne con dati relazionali di valore elevato nel database.This allows you to combine data from external sources with high-value relational data in your database. In SQL Server, una tabella esterna oppure un'origine dati esterna fornisce la connessione a Hadoop.In SQL Server, an external table or external data source provides the connection to Hadoop.

PolyBase esegue il push di alcuni calcoli sul nodo Hadoop per ottimizzare la query complessiva.PolyBase pushes some computations to the Hadoop node to optimize the overall query. Tuttavia, l'accesso esterno di PolyBase non è limitato a Hadoop.However, PolyBase external access is not limited to Hadoop. Sono supportate anche altre tabelle non relazionali non strutturate, ad esempio i file di testo delimitato.Other unstructured non-relational tables are also supported, such as delimited text files.

Prodotti e servizi SQL supportatiSupported SQL products and services

PolyBase offre queste stesse funzionalità per i prodotti SQL seguenti di Microsoft:PolyBase provides these same functionalities for the following SQL products from Microsoft:

  • SQL Server 2016 e versioni successive (solo Windows)SQL Server 2016 and later versions (Windows only)
  • Piattaforma di strumenti analitici (in precedenza Parallel Data Warehouse)Analytics Platform System (formerly Parallel Data Warehouse)
  • Azure Synapse AnalyticsAzure Synapse Analytics

Integrazione con AzureAzure integration

Con il supporto sottostante di PolyBase, le query T-SQL possono anche importare ed esportare dati da Archiviazione BLOB di Azure.With the underlying help of PolyBase, T-SQL queries can also import and export data from Azure Blob Storage. PolyBase consente inoltre ad Azure Synapse Analytics di importare ed esportare dati da Azure Data Lake Store e da Archiviazione BLOB di Azure.Further, PolyBase enables Azure Synapse Analytics to import and export data from Azure Data Lake Store, and from Azure Blob Storage.

Perché usare PolyBaseWhy use PolyBase?

In passato era più difficile creare join tra i dati di SQL Server e dati esterni.In the past it was more difficult to join your SQL Server data with external data. Erano disponibili le due opzioni poco piacevoli seguenti:You had the two following unpleasant options:

  • Trasferire la metà dei dati in modo che tutti i dati fossero in un formato o nell'altro.Transfer half your data so that all your data was in one format or the other.
  • Eseguire query su entrambe le origini dati, quindi scrivere logica di query personalizzata per creare i join e integrare i dati a livello di client.Query both sources of data, then write custom query logic to join and integrate the data at the client level.

PolyBase consente di evitare queste spiacevoli opzioni usando T-SQL per creare join tra i dati.PolyBase avoids those unpleasant options by using T-SQL to join the data.

In sostanza, PolyBase non richiede di installare software aggiuntivo nell'ambiente Hadoop.To keep things simple, PolyBase does not require you to install additional software to your Hadoop environment. Si possono eseguire query sui dati esterni usando la stessa sintassi T-SQL usata per eseguire query su una tabella di database.You query external data by using the same T-SQL syntax used to query a database table. Le azioni di supporto implementate da PolyBase vengono tutte eseguite in modo trasparente.The support actions implemented by PolyBase all happen transparently. L'autore della query non deve avere alcuna conoscenza di Hadoop.The query author does not need any knowledge about Hadoop.

Usi di PolyBasePolyBase uses

PolyBase rende possibili gli scenari seguenti in SQL Server:PolyBase enables the following scenarios in SQL Server:

  • Eseguire query sui dati archiviati in Hadoop da SQL Server o PDW.Query data stored in Hadoop from SQL Server or PDW. Gli utenti scelgono di archiviare i dati in sistemi distribuiti e scalabili convenienti, come Hadoop.Users are storing data in cost-effective distributed and scalable systems, such as Hadoop. PolyBase semplifica la query dei dati con T-SQL.PolyBase makes it easy to query the data by using T-SQL.

  • Eseguire query sui dati archiviati in Archiviazione BLOB di Azure.Query data stored in Azure Blob Storage. Nell'archivio BLOB di Azure è possibile salvare i dati da usare con i servizi di Azure.Azure blob storage is a convenient place to store data for use by Azure services. PolyBase semplifica l'accesso ai dati con T-SQL.PolyBase makes it easy to access the data by using T-SQL.

  • Importare i dati da Hadoop, Archiviazione BLOB di Azure o Azure Data Lake Store.Import data from Hadoop, Azure Blob Storage, or Azure Data Lake Store. Sfruttare la velocità della tecnologia columnstore e delle funzionalità di analisi di Microsoft SQL importando i dati da Hadoop, Archiviazione BLOB di Azure o Azure Data Lake Store in tabelle relazionali.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. Non è necessario uno strumento di importazione o ETL separato.There is no need for a separate ETL or import tool.

  • Esportare i dati in Hadoop, nell'archivio BLOB di Azure o in Azure Data Lake Store.Export data to Hadoop, Azure Blob Storage, or Azure Data Lake Store. Archiviare i dati in Hadoop, nell'archivio BLOB di Azure o in Azure Data Lake Store per un'archiviazione conveniente e mantenerli online per accedervi facilmente.Archive data to Hadoop, Azure Blob Storage, or Azure Data Lake Store to achieve cost-effective storage and keep it online for easy access.

  • Integrarsi con strumenti BI.Integrate with BI tools. Usare PolyBase con la business intelligence e lo stack di analisi di Microsoft o usare strumenti di terze parti compatibili 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.

PrestazioniPerformance

  • Eseguire il push del calcolo in Hadoop.Push computation to Hadoop. Query Optimizer prende una decisione basata sui costi per eseguire il push in Hadoop se in questo modo migliorano le prestazioni della query.The query optimizer makes a cost-based decision to push computation to Hadoop, if that will improve query performance. Per prendere la decisione basata sui costi, Query Optimizer usa le statistiche sulle tabelle esterne.The query optimizer uses statistics on external tables to make the cost-based decision. Il push del calcolo crea processi MapReduce e sfrutta le risorse di calcolo distribuite di Hadoop.Pushing computation creates MapReduce jobs and leverages Hadoop's distributed computational resources.

  • Ridimensionare le risorse di calcolo.Scale compute resources. Per migliorare le prestazioni delle query, è possibile usare i gruppi con scalabilità orizzontale di PolyBaseper SQL Server.To improve query performance, you can use SQL Server PolyBase scale-out groups. In questo modo viene abilitato il trasferimento dei dati paralleli tra le istanze di SQL Server e i nodi di Hadoop e vengono aggiunte le risorse di calcolo per operare sui dati esterni.This enables parallel data transfer between SQL Server instances and Hadoop nodes, and it adds compute resources for operating on the external data.

Passaggi successiviNext steps

Prima di usare PolyBase, è necessario installare la funzionalità PolyBase.Before using PolyBase, you must install the PolyBase feature. Vedere quindi le guide di configurazione seguenti a seconda dell'origine dati:Then see the following configuration guides depending on your data source:

Passaggi successiviNext steps

Prima di usare PolyBase, è necessario installare la funzionalità PolyBase.Before using PolyBase, you must install the PolyBase feature. Vedere quindi le guide di configurazione seguenti a seconda dell'origine dati:Then see the following configuration guides depending on your data source: