Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: SQL Server – nur Windows
Azure SQL Managed Instance
In diesem Artikel wird beschrieben, wie Sie eine PolyBase-Erweiterungsgruppe unter Windows einrichten. Mit diesem Verfahren wird ein Cluster aus SQL Server-Instanzen erstellt, der durch horizontale Skalierung für bessere Abfrageleistungen bei großen Datasets aus externen Datenquellen sorgt, wie beispielsweise Hadoop oder Azure Blob Storage.
Wichtig
Die Microsoft SQL Server PolyBase-Erweiterungsgruppen werden eingestellt. Die Erweiterungsgruppen-Funktionalität wird in SQL Server 2022 (16.x) aus dem Produkt entfernt. PolyBase-Datenvirtualisierung wird in SQL Server weiterhin als Aufskalierungsgruppen-Feature vollständig unterstützt. Weitere Informationen finden Sie unter Big Data-Optionen auf der Microsoft SQL Server-Plattform.
Voraussetzungen
Mehr als ein Computer in der gleichen Domäne.
Ein Domänenbenutzerkonto zum Ausführen von PolyBase-Diensten. Die Verwendung eines gruppenverwalteten Dienstkontos (gMSA) wird empfohlen. Weitere Informationen finden Sie unter Gruppenverwaltete Dienstkonten: Übersicht.
Übersicht über den Prozess
Die folgenden Schritte fassen den Prozess der Erstellung einer PolyBase-Erweiterungsgruppe zusammen. Im nächsten Abschnitt finden Sie eine ausführliche exemplarische Vorgehensweise für jeden Schritt.
Installieren Sie die gleiche Version von SQL Server mit PolyBase auf N Computern.
Wählen Sie eine SQL Server-Instanz als Hauptknoten aus.
Fügen Sie mithilfe von sp_polybase_join_groupdie verbleibenden SQL Server-Instanzen als Serverknoten hinzu.
Überwachen Sie Knoten in der Gruppe mit sys.dm_exec_compute_nodes (Transact-SQL).
Optional. Entfernen Sie einen Serverknoten mit sp_polybase_leave_group (Transact-SQL).
Exemplarische Vorgehensweise
Hier erfahren Sie, wie Sie eine PolyBase-Gruppe mit den folgenden Informationen einrichten:
Zwei Computer in der Domäne PQTH4A Die Namen der Computer sind:
PQTH4A-CMP01
PQTH4A-CMP02
Domänenkonto: PQTH4A\PolyBaseUser
Installieren von SQL Server mit PolyBase auf allen Computern
Führen Sie „setup.exe“ aus.
Wählen Sie auf der Seite „Funktionsauswahl“ PolyBase Query Service for External Data (PolyBase-Abfragedienst für externe Daten).
Verwenden Sie das Domänenkonto „PQTH4A\PolyBaseUser“ für die SQL Server-PolyBase-Engine und den SQL Server PolyBase-Datenverschiebungsdienst auf der Konfigurationsseite des Servers.
Wählen Sie auf der PolyBase-Konfigurationsseite die Option Use the SQL Server instance as part of a PolyBase scale-out group(SQL Server-Instanz als Teil einer PolyBase-Erweiterungsgruppe verwenden). Hierdurch wird die Firewall geöffnet, um eingehende Verbindungen für die PolyBase-Dienste zuzulassen. Vom SQL Server-Installations-Assistenten werden die folgenden TCP-Ports automatisch in der Windows Server-Firewall verfügbar gemacht: 1433, 16450 bis 16453 und 17001. Wenn der Hauptknoten eine benannte SQL Server-Instanz ist, müssen Sie zusätzlich den SQL Server-Port manuell der Windows-Firewall auf dem Hauptknoten hinzufügen und den SQL-Browser auf dem Hauptknoten starten. Ports sollten nur in den Firewalls der Server zugelassen sein, die Teil der PolyBase-Erweiterungsgruppe sind.
Nachdem das Setup abgeschlossen ist, führen Sie services.mscaus. Überprüfen Sie, ob SQL Server, die PolyBase-Engine und der PolyBase-Datenverschiebungsdienst ausgeführt werden.
Auswählen einer SQL Server-Instanz als Hauptknoten
Nachdem das Setup abgeschlossen ist, können beide Computer als PolyBase-Gruppenhauptknoten fungieren. In diesem Beispiel wählen wir die MSSQLSERVER-Instanz auf PQTH4A-CMP01 als den Hauptknoten.
Hinzufügen weiterer SQL Server-Instanzen als Computeknoten
Stellen Sie die Verbindung mit SQL Server auf PQTH4A-CMP02 her.
Führen Sie die gespeicherte Prozedur sp_polybase_leave_groupaus.
-- Enter head node details: -- head node machine name, head node dms control channel port, head node sql server name EXEC sp_polybase_join_group 'PQTH4A-CMP01', 16450, 'MSSQLSERVER';
Führen Sie „services.msc“ auf den Computeknoten (PQTH4A CMP02) aus.
Fahren Sie die PolyBase-Engine herunter, und starten Sie den PolyBase-Datenverschiebedienst neu.
Hinweis
Wird der PolyBase-Engine-Dienst auf dem Hauptknoten neu gestartet oder beendet, werden die DMS-Dienste (Data Movement Service) beendet, sobald der Kommunikationskanal zwischen DMS und PolyBase-Engine-Dienst (DW) geschlossen wird. Wird die DW-Engine mehr als zweimal neu gestartet, wechselt der DMS-Dienst für 90 Minuten in einen Ruhezustand. Während dieses Zeitraums kann kein erneuter automatischer Startversuch durchgeführt werden. Starten Sie in diesem Fall den Dienst auf allen Knoten manuell.
Optional: Entfernen eines Computeknotens
Stellen Sie eine Verbindung mit dem Computeknoten SQL Server (PQTH4A-CMP02) her.
Führen Sie die gespeicherte Prozedur
sp_polybase_leave_group
aus.EXEC sp_polybase_leave_group;
Führen Sie „services.msc“ auf dem Computeknoten (PQTH4A CMP02) aus, der entfernt wird.
Starten Sie die PolyBase-Engine. Starten Sie den SQL Server PolyBase-Datenverschiebungsdienst neu.
Überprüfen Sie, ob der Knoten entfernt wurde, indem Sie die DMV
sys.dm_exec_compute_nodes
auf PQTH4A CMP01 ausführen. Jetzt fungiert PQTH4A-CMP02 als eigenständiger Hauptknoten.
Begrenzungen
Wenn Sie eine standardmäßige SQL Server-Instanz haben, die so konfiguriert ist, dass sie an einem anderen TCP-Port als 1433 lauscht, können Sie sie in einer PolyBase-Erweiterungsgruppe nicht als Hauptknoten verwenden. Wenn Sie bei der Ausführung von
sp_polybase_join_group
als Instanznamen MSSQLSERVER übergeben, geht SQL Server davon aus, dass Port 1433 der Listenerport ist, sodass sich der Datenverschiebungsdienst beim Start nicht mit dem Hauptknoten verbinden kann.PolyBase-Erweiterungsgruppen werden mit Always On-Verfügbarkeitsgruppen nicht unterstützt.