Často kladené otázky ohledně PolyBase

platí pro: SQL Server 2016 (13.x) a novější verze

PolyBase vs. propojené servery

Následující tabulka uvádí rozdíly mezi funkcemi PolyBase a odkazovaného serveru:

PolyBase Propojené servery
Objekt s vymezeným oborem databáze Objekt s vymezeným oborem instance
Používá ovladače ODBC. Používá poskytovatele OLE DB
Podporuje operace jen pro čtení pro všechny zdroje dat a zápis do některých externích zdrojů dat. Podporuje operace čtení i zápisu.
Dotazy na vzdálený zdroj dat z jednoho připojení lze distribuovat a škálovat horizontálně. Dotazy na vzdálený zdroj dat z jednoho spojení nelze škálovat
Podporuje se nabízení predikátů. Podporuje se nabízení predikátů.
Pro skupinu dostupnosti není potřeba žádná samostatná konfigurace. Samostatná konfigurace potřebná pro každou instanci ve skupině dostupnosti
Pouze základní ověřování Základní a integrovaná autentizace
Vhodné pro analytické dotazy zpracovávající velký počet řádků Vhodné pro dotazy OLTP vracející jeden nebo několik řádků
Dotazy využívající externí tabulky se nemohou účastnit distribuované transakce Distribuované dotazy se mohou účastnit distribuovaných transakcí.

Co je nového v PolyBase v SQL Serveru 2022?

SQL Server 2022 (16.x) podporuje CSV, Parquet a Delta soubory uložené na Azure Storage Account v2, Azure Data Lake Storage Gen2 nebo jakémkoli objektovém úložišti kompatibilním se S3 pomocí S3 REST API, jak on-premises, tak v cloudu.

SQL Server 2022 (16.x) podporuje CREATE EXTERNAL TABLE AS SELECT (CETAS), spolu s příkazy jako OPENROWSET, CREATE EXTERNAL TABLE (CET) a vylepšeními T-SQL.

SQL Server 2022 (16.x) nepodporuje externí zdroje dat Hadoop.

SQL Server 2022 (16.x) Kumulativní aktualizace 2 zavádí podporu pro soubory Oracle TNS. Další informace a příklady najdete v CREATE EXTERNAL DATA SOURCE CONNECTION_OPTIONS.

Další informace najdete v tématu Data Virtualization with PolyBase for SQL Server 2022 a také si projděte vylepšení PolyBase v SQL Serveru 2022.

Co je nového v PolyBase v SQL Serveru 2019?

PolyBase v SQL Server 2019 (15.x) dokáže číst data z více zdrojů. Data z těchto externích datových zdrojů můžete uložit jako externí tabulky na vaší instanci SQL Server. PolyBase také podporuje pushdown výpočty do těchto externích zdrojů dat, s výjimkou obecných typů ODBC.

Kompatibilní zdroje dat

  • SQL Server
  • Oracle
  • Teradata
  • MongoDB
  • Kompatibilní obecné typy ODBC

SQL Server 2019 (15.x) Kumulativní aktualizace 19 zavádí podporu souborů Oracle TNS. Další informace a příklady najdete v CREATE EXTERNAL DATA SOURCE CONNECTION_OPTIONS.

Note

PolyBase se může připojit k externím datovým zdrojům pomocí ODBC ovladačů třetích stran. PolyBase tyto ovladače neobsahuje a nemusí fungovat tak, jak má. Další informace naleznete v tématu Konfigurace PolyBase pro přístup k externím datům pomocí obecných typů ODBC.

Co CONNECTION_OPTIONS můžu zadat pro připojení ke zdrojům dat třetích stran?

Prohlédněte CREATE EXTERNAL DATA SOURCE CONNECTION_OPTIONS si podporované možnosti připojení poskytovatelů dat pro SQL Server, Oracle, Teradata, MongoDB API pro Cosmos DB a obecné poskytovatele dat ODBC.

Jak můžu zobrazit plán provádění vzdáleného dotazu pro výpočty PolyBase pushdown?

Plán vzdáleného provádění dotazů můžete zobrazit různými metodami v závislosti na verzi SQL Server. Pro více informací viz PolyBase Troubleshooting – Pro zobrazení plánu dotazů PolyBase.

Jak mohu zjistit, zda se provádí výpočet v PolyBase?

Další informace najdete v tématu Jak zjistit, jestli došlo k externímu posunu.

Podporuje se PolyBase ve službě Azure SQL Database?

Ne, ale můžete se dotazovat na data v souborech v Azure Blob Storage pomocí funkce OPENROWSET nebo použít CREATE EXTERNAL TABLE ke čtení ze serverless SQL poolu v Synapse Analytics. Další informace najdete v tématu Azure SQL může číst soubory Azure Data Lake Storage pomocí externích tabulek Synapse SQL.

Podporuje se PolyBase ve službě Azure SQL Managed Instance?

Azure SQL Managed Instance má své vlastní možnosti virtualizace dat pro Azure Data Lake Storage (ADLS) a Azure Blob Storage jako zdroje dat. Další informace najdete v tématu Virtualizace dat se službou Azure SQL Managed Instance.

Které porty mám povolit přes bránu firewall pro PolyBase?

PolyBase sám o sobě nevyžaduje otevírání dalších portů, kromě případů, kdy použijete PolyBase scale-out skupinu. Bez škálovací skupiny služba PolyBase nepotřebuje žádná pravidla brány firewall.

Na serverech s Windows používá PolyBase porty, které používá instance SQL Server, v sekci IPAll v nastavení TCP/IP v SQL Server Configuration Manager. Pro více informací viz Vlastnosti TCP/IP (záložka IP adres). Na linuxových serverech používá PolyBase toto network.tcpport nastavení. Další informace naleznete v tématu Port TCP.

Informace o portech v další otázce najdete v případě skupin s horizontálním navýšením kapacity PolyBase na více serverů s Windows.

Musíte však povolit jiné porty pro komunikaci s různými externími datovými zdroji, které PolyBase používá. Projděte si dokumentaci ke konfiguraci ODBC, konfiguraci prostředků Azure nebo konkrétní dokumentaci ke zdroji dat. Například:

Zdrojová platforma Reference
Microsoft SQL Server Porty používané SQL Serverem
Hortonworks HDP Správa HDFS
Cloudera CDH Porty používané komponentami CDH

Jaké porty se používají pro škálovanou skupinu PolyBase?

Ve výchozím nastavení se služba pro přesun dat PolyBase připojuje k hlavnímu uzlu skupiny scale-out prostřednictvím rozsahu portů TCP 16450–16460 (obvykle 16450–1645) a navíc přes port 17001. PolyBase používá tyto porty pouze tehdy, když nakonfigurujete skupinu scale-out, proto je povolte ve firewallech serveru. SQL Server Setup automaticky vytvoří lokální firewallové pravidlo, které tyto porty povoluje při instalaci funkce. Další informace naleznete v tématu Konfigurace škálování skupin PolyBase na Windows.

Note

Skupiny scale-out nástroje SQL Server PolyBase byly odstraněny v SQL Server 2022 (16.x).