Einführung in PolyBase
- 8 Minuten
PolyBase ist das Feature, das SQL Server verwendet, um das Datenvirtualisierungskonzept umzusetzen. PolyBase wurde ursprünglich in SQL Server 2016 veröffentlicht und seitdem in jeder nachfolgenden Version von SQL Server verbessert. Das allgemeine Konzept des Remotezugriffs auf Daten, ohne dass die Daten kopiert werden müssen, stammt aus SQL Server 7.0 mit der Einführung des Verbindungsservers.
In der folgenden Tabelle ist die erste SQL Server-Version aufgeführt, die verschiedene PolyBase-Features unterstützt.
| SQL Server 2016 | SQL Server 2017 | SQL Server 2019 | SQL Server 2025 |
|---|---|---|---|
| •Hadoop • Azure Blob Storage |
• OPENROWSET-Verbesserungen • CSV für Azure Blob Storage • Datenbankbezogene Anmeldeinformationen |
• SQL Server •Oracle • Azure Cosmos DB •Mongodb •Teradata • Linux-Unterstützung • Generisches ODBC |
• Neues Konnektorframework • Objektspeicherintegration •CSV • Parquet •Delta • CETAS |
Weitere Informationen zu PolyBase finden Sie unter PolyBase-Features und -Einschränkungen.
PolyBase-Verbesserungen in SQL Server 2025
Native Unterstützung für CSV, Parquet und Delta 1: Die Installation des PolyBase-Abfragediensts für externe Daten ist nicht mehr erforderlich, um OPENROWSET, CREATE EXTERNAL TABLE oder CREATE EXTERNAL TABLE AS SELECT mit den folgenden Arten externer Daten zu verwenden: Parquet, Delta, Azure Blob Storage (ABS), Azure Data Lake Storage (ADLS) oder S3-kompatibler Objektspeicher.
Generische ODBC-Datenquellen unter Linux verwenden: Weitere Informationen finden Sie unter Konfigurieren von PolyBase für den Zugriff auf externe Daten mit generischen ODBC-Typen.
TDS 8.0-Unterstützung: Bei Verwendung von Microsoft ODBC-Treiber 18 für SQL Server wird TDS 8.0 für SQL Server nicht als externe Datenquelle unterstützt.
S3-kompatibler Objektspeicher
SQL Server 2025 unterstützt S3-kompatiblen Objektspeicher. Um diese Integration zu ermöglichen, verwendet SQL Server 2025 eine REST-API-Connectorframework-Architektur, die dem S3-Framework folgt. Jeder Objektspeicher, der das S3-Framework unterstützt, funktioniert auch mit SQL Server 2025. S3-kompatible Objektspeicherlösungen können lokal, in Ihrem Netzwerk, in der Cloud oder in einer Hybridumgebung ausgeführt werden.
Objektspeicher, auch als objektbasierter Speicher bezeichnet, ist eine Strategie, die den Datenspeicher als eigenständige Einheiten verwaltet und bearbeitet, die als Objekte bezeichnet werden. Diese Objekte werden an einem einzigen Speicherort (Storehouse) aufbewahrt und sind nicht in Dateien in anderen Ordnern verankert. Stattdessen kombiniert der Objektspeicher die Datenelemente, aus denen eine Datei besteht, fügt dieser Datei alle seine relevanten Metadaten hinzu und einen benutzerdefinierten Bezeichner an.
Einige der Hauptmerkmale von Objektspeichers im Vergleich zu einem herkömmlichen Dateisystem:
- Speichert Metadaten, die in die Datei eingebettet sind
- Ermöglicht Dateiattribute wie Tags
- Kostengünstiger zu skalieren und einfacher zu verwalten
- Optimiert für große Datenmengen wie Big Data, Internet der Dinge (IoT), KI, maschinelles Lernen und Analysen
- Nicht empfohlen für Workloads mit vielen Transaktionen oder OLTP-Workloads (Online Transaction Processing, Onlinetransaktionsverarbeitung)
Sie können auch S3-kompatiblen Objektspeicher für Sicherungs- und Wiederherstellungsszenarien verwenden, indem Sie den Befehl BACKUP TO URL verwenden. Weitere Informationen finden Sie unter SQL Server-Sicherungs- und -Wiederherstellungsvorgänge für S3-kompatiblen Objektspeicher.
Das S3-Standardframework ist weit verbreitet, und viele große Speicheranbieter bieten jetzt S3-kompatible Objektspeicherlösungen an. Wenn die Lösung Kompatibilität mit S3-REST-APIs bietet, ist sie mit SQL Server 2025 kompatibel. Eine Liste der unterstützten Objektspeicheranbieter finden Sie unter Anbieter von S3-kompatiblem Objektspeicher.
Einige Objektspeicherpartner bieten die Möglichkeit, ihre Lösung als Software auszuführen, mit der Sie Ihren aktuellen Speicher virtualisieren können. Sie können diese Lösungen auf Ihrem eigenen Computer oder Ihrer VM (virtuelle Computer) installieren und testen.
PolyBase-Dienste im Vergleich zum PolyBase-REST-API-Features
Um PolyBase zu verwenden, müssen Sie den PolyBase-Abfragedienst für externe Daten installieren und PolyBase mithilfe von sp_configure auf Instanzebene aktivieren. Das PolyBase-Setup installiert zwei PolyBase-Dienste, SQL Server PolyBase Engine und SQL Server PolyBase Data Movement.
SQL Server-Polybase-Engine
- Ausführbare Dienstdatei:
mpdwsvc.exe -dweng - Analysiert Abfragen
- Generiert Abfragepläne
- Verteilt die Last auf Serverknoten (SQL Server 2019)
- Verarbeitet die Ergebnisse vom Serverknoten und gibt sie an den Client zurück (SQL Server 2019)
- Ausführbare Dienstdatei:
SQL Server PolyBase Data Movement
- Ausführbare Dienstdatei:
mpdwsvc.exe -dms - Überträgt Daten zwischen externen Datenquellen und den PolyBase-Haupt- und -Serverknoten (SQL Server 2019)
- Fügt Daten in andere Datenquellen ein, z. B. Azure Storage
- Ausführbare Dienstdatei:
Datenquellen wie SQL Server, Oracle, MongoDB oder ODBC-basierte Quellen verwenden diese PolyBase-Dienste. Datenquellen, die die PolyBase-Architektur verwenden, die auf der SQL Server 2025-REST-API basiert, erfordern keine Ausführung oder Konfiguration dieser Dienste, der PolyBase-Abfragedienst für externe Daten muss aber trotzdem installiert und aktiviert sein.
Sie können die PolyBase-REST-APIs verwenden, um auf Azure Data Lake Storage, Azure Blob Storage, alle S3-kompatiblen Objektspeicher und Dateiformate wie Parquet-, Delta- und CSV-Dateien zuzugreifen. Für zuvor unterstützte Datenquellen werden weiterhin die Dienste SQL Server-PolyBase-Engine und SQL Server PolyBase-Datenverschiebungsdienst verwendet.
| Datenquelle | PolyBase-Dienste | PolyBase-REST-API-Feature |
|---|---|---|
| Azure Blob Storage (Speicherdienst von Azure für unstrukturierte Daten) |
|
|
| Azure Data Lake Storage |
|
|
| S3-kompatibler Objektspeicher |
|
|
| SQL Server |
|
|
| Oracle |
|
|
| Teradata |
|
|
| MongoDB oder Azure Cosmos DB-API für MongoDB |
|
|
| Generisches ODBC (Open Database Connectivity) |
|
|
| Massenvorgänge |
|
|