Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för: SQL Server (endast Windows)
Azure SQL Database
Azure Synapse Analytics
Analytics Platform System (PDW)
En fristående SQL Server-instans med PolyBase kan bli en prestandaflaskhals när du hanterar massiva datauppsättningar i Hadoop eller Azure Blob Storage. Med funktionen PolyBase-grupp kan du skapa ett kluster med SQL Server-instanser för att bearbeta stora datamängder från externa datakällor, till exempel Hadoop eller Azure Blob Storage, på ett skalbar sätt för bättre frågeprestanda. Nu kan du skala din SQL Server-beräkning för att uppfylla prestandakraven för din arbetsbelastning. PolyBase Scale-out Groups, en grupp SQL Server-instanser, gör att du kan bearbeta stora externa datauppsättningar i en arkitektur för parallell bearbetning. Datainläsning och frågeprestanda kan öka linjärt när du lägger till fler SQL Server-instanser i gruppen.
Viktigt!
Utskalningsgrupperna för Microsoft SQL Server PolyBase har dragits tillbaka. Skalbara gruppfunktioner har tagits bort från produkten i SQL Server 2022 (16.x) och senare versioner. PolyBase-datavirtualisering stöds fortfarande fullt ut som en uppskalningsfunktion i SQL Server. Mer information finns i Alternativ för stordata på Microsoft SQL Server-plattformen.
Se Kom igång med PolyBase - och PolyBase-guiden.
Huvudnod
Huvudnoden innehåller DEN SQL Server-instans som PolyBase-frågor skickas till. Varje PolyBase-grupp kan bara ha en huvudnod. En huvudnod är en logisk grupp med SQL Server Database Engine, PolyBase Engine och PolyBase Data Movement Service på SQL Server-instansen. Med SQL Server 2017 och SQL Server 2016 måste huvudnoden vara en Enterprise Edition. Från och med SQL Server 2019 kan PolyBase-huvudnoden vara antingen en Enterprise- eller Standard-utgåva.
Beräkningsnod
En beräkningsnod innehåller SQL Server-instansen som hjälper till med skalbar frågebearbetning på externa data. En beräkningsnod är en logisk grupp med SQL Server och PolyBase-dataförflyttningstjänsten på SQL Server-instansen. En PolyBase-grupp kan ha flera beräkningsnoder. Huvudnoden och beräkningsnoderna måste alla köra samma version av SQL Server. Den första versionen av SQL Server 2016 tillät beräkningsnoderna att vara antingen en Enterprise- eller Standard-utgåva. Från och med SQL Server 2016 SP1 kan alla utgåvor av SQL Server vara en beräkningsnod.
Utskalningsläsningar
När du frågar externa SQL Server-, Oracle- eller Teradata-instanser kan partitionerade tabeller dra nytta av utskalningsläsningar. Varje nod i en utskalningsgrupp i PolyBase kan starta upp till 8 läsare för att läsa externa data. Och varje läsare tilldelas en partition som ska läsas i den externa tabellen.
Anta till exempel att du har en extern SQL Server-tabell med 12 månatliga partitioner och en 3-nods PolyBase-skalningsgrupp. Varje nod använder 4 PolyBase-läsare för att bearbeta var och en av de 12 partitionerna. Detta illustreras i följande bild.
Anmärkning
Detta skiljer sig från att läsa data parallellt med Hadoop.
Bearbetning av distribuerade förfrågningar
PolyBase-frågor skickas till SQL Server på huvudnoden. Den del av frågan som refererar till externa tabeller överlämnas till PolyBase-motorn.
PolyBase-motorn är nyckelkomponenten bakom PolyBase-frågor. Det tolkar frågan mot externa data, genererar frågeplanen och distribuerar arbetet till dataflytttjänsten på beräkningsnoderna för att genomföra. När arbetet har slutförts tar det emot resultatet från beräkningsnoderna och skickar dem till SQL Server för bearbetning och återgång till klienten.
PolyBase-dataflytttjänsten tar emot instruktioner från PolyBase-motorn och överför data mellan HDFS och SQL Server samt mellan SQL Server-instanser på huvud- och beräkningsnoderna.
Nästa steg
Information om hur du konfigurerar en PolyBase-utskalningsgrupp finns i följande guide:
Förbättra PolyBase-utskalningsgrupper i Windows
Se även
sys-dm-exec-compute-nodes
sys-dm-exec-compute-node-status
sys.dm_exec_compute_node_errors