Serverloser SQL-Pool in Azure Synapse Analytics

Jeder Azure Synapse Analytics-Arbeitsbereich wird mit serverlosen SQL-Poolendpunkten geliefert, die Sie zur Abfrage von Daten in Azure Data Lake (Formate Parquet, Delta Lake, Text mit Trennzeichen), Azure Cosmos DB oder Dataverse verwenden können.

Ein serverloser SQL-Pool ist ein Abfragedienst für die Daten in Ihrem Data Lake. Er ermöglicht den Zugriff auf Ihre Daten über folgende Funktionen:

  • Eine vertraute T-SQL-Syntax zum direkten Abfragen von Daten, ohne dass diese in einen speziellen Speicher kopiert oder geladen werden müssen. Weitere Informationen finden Sie im Abschnitt T-SQL-Unterstützung.
  • Integrierte Konnektivität über die T-SQL-Schnittstelle, die ein breites Spektrum an Business Intelligence und Ad-hoc-Abfragetools bietet – einschließlich der beliebtesten Treiber Weitere Informationen finden Sie im Abschnitt Clienttools. Weitere Informationen finden Sie im Video „Einführung in serverlose Synapse SQL-Pools“.

Ein serverloser SQL-Pool ist ein verteiltes Datenverarbeitungssystem, das für umfangreiche Datenmengen und Berechnungsfunktionen konzipiert ist. Mit einem serverlosen SQL-Pool können Sie Big Data abhängig von der Workload in wenigen Sekunden oder Minuten analysieren. Dank der integrierten Fehlertoleranz bei der Abfrageausführung bietet das System auch bei Abfragen mit langer Ausführungszeit und umfangreichen Datasets eine hohe Zuverlässigkeit und Erfolgsquote.

Da es sich bei einem serverlosen SQL-Pool um eine serverlose Lösung handelt, müssen Sie weder eine Infrastruktur einrichten noch Cluster verwalten. In jedem Azure Synapse-Arbeitsbereich wird ein Standardendpunkt für diesen Dienst bereitgestellt, sodass Sie direkt nach der Erstellung des Arbeitsbereichs mit dem Abfragen von Daten beginnen können.

Für reservierte Ressourcen fallen keine Gebühren an. Ihnen werden lediglich die Daten in Rechnung gestellt, die im Rahmen Ihrer Abfragen verarbeitet werden. Somit handelt es sich hierbei um ein Modell mit echter nutzungsbasierter Bezahlung.

Wenn Sie Apache Spark für Azure Synapse in Ihrer Datenpipeline verwenden, können Sie zur Datenvorbereitung, -bereinigung oder -anreicherung im Rahmen des Prozesses erstellte externe Spark-Tabellen direkt über einen serverlosen SQL-Pool abfragen. Verwenden Sie Private Link, um Ihren Endpunkt für den serverlosen SQL-Pool in das verwaltete virtuelle Netzwerk Ihres Arbeitsbereichs zu integrieren.

Vorteile eines serverlosen SQL-Pools

Wenn Sie Daten im Data Lake untersuchen, Erkenntnisse aus diesen Daten gewinnen oder Ihre vorhandene Datentransformationspipeline optimieren möchten, können Sie von einem serverlosen SQL-Pool profitieren. Er eignet sich für folgende Szenarien:

  • Grundlegende Ermittlung und Untersuchung: Unterschiedliche Datenformate (Parquet, CSV, JSON) in Ihrem Data Lake können zur Planung einer geeigneten Vorgehensweise für die Gewinnung von Erkenntnissen schnell und einfach analysiert werden.
  • Logisches Data Warehouse: Eine relationale Abstraktion auf der Grundlage unformatierter oder unterschiedlicher Daten ohne Datenverschiebung oder -transformation ermöglicht einen stets aktuellen Blick auf Ihre Daten. Erfahren Sie mehr über das Erstellen eines logischen Data Warehouse.
  • Datentransformation: Eine einfache, skalierbare und leistungsfähige Möglichkeit zum Transformieren von Daten im Data Lake mithilfe von T-SQL, um die Daten für BI und andere Tools bereitzustellen oder in einen relationalen Datenspeicher (beispielsweise Synapse SQL-Datenbanken oder Azure SQL-Datenbank) zu laden.

Verschiedene professionelle Rollen können von einem serverlosen SQL-Pool profitieren:

  • Dateningenieure können den Data Lake erkunden, Daten mithilfe dieses Diensts transformieren und vorbereiten und ihre Datentransformationspipelines vereinfachen. Weitere Informationen finden Sie in diesem Tutorial.
  • Dank Features wie OPENROWSET und automatischem Schemarückschluss können Data Scientists schnell den Inhalt und die Struktur der Daten im Data Lake analysieren.
  • Datenanalysten können mithilfe der vertrauten T-SQL-Sprache oder mit den von ihnen bevorzugten Tools, die eine Verbindung mit einem serverlosen SQL-Pool herstellen können, Daten und externe Spark-Tabellen erkunden, die von wissenschaftlichen und technischen Fachkräften für Daten erstellt wurden.
  • BI-Experten können schnell Power BI-Berichte auf der Grundlage von Daten im Data Lake sowie Spark-Tabellen erstellen.

Erste Schritte bei der Verwendung eines serverlosen SQL-Pools

In jedem Azure Synapse-Arbeitsbereich steht ein Endpunkt für einen serverlosen SQL-Pool zur Verfügung. Sie können einen Arbeitsbereich erstellen und sofort damit beginnen, Daten mithilfe Ihrer vertrauten Tools abzufragen.

Stellen Sie sicher, dass Sie die bewährten Methoden anwenden, um die beste Leistung zu erzielen.

Clienttools

Ein serverloser SQL-Pool ermöglicht die Nutzung des Data Lake durch bereits vorhandene Tools für SQL-Ad-hoc-Abfragen und Business Intelligence. Dank der vertrauten T-SQL-Syntax kann jedes Tool, das für SQL-Angebote mit TDS-Verbindung geeignet ist, eine Verbindung mit Synapse SQL herstellen und entsprechende Abfragen ausführen. Sie können eine Verbindung mit Azure Data Studio herstellen und Ad-hoc-Abfragen ausführen oder eine Verbindung mit Power BI herstellen, um innerhalb weniger Minuten Erkenntnisse zu gewinnen.

T-SQL-Unterstützung

Ein serverloser SQL-Pool bietet eine Oberfläche für T-SQL-Abfragen, die in einigen Bereichen geringfügig verbessert bzw. erweitert wurde, um Abfragen für teilweise strukturierte und unstrukturierte Daten zu ermöglichen. Darüber hinaus werden einige Aspekte der T-SQL-Sprache aufgrund des Designs von serverlosen SQL-Pools nicht unterstützt (beispielsweise die DML-Funktion).

  • Die Workload kann mithilfe vertrauter Konzepte strukturiert werden:
  • Datenbanken: Der Endpunkt für einen serverlosen SQL-Pool kann über mehrere Datenbanken verfügen.
  • Schemas: Eine Datenbank kann einzelne oder mehrere Objektbesitzgruppen (Schemas) enthalten.
  • Sichten, gespeicherte Prozeduren, Inline-Tabellenwertfunktionen
  • Externe Ressourcen: Datenquellen, Dateiformate und Tabellen

Verfügbare Sicherheitsmaßnahmen:

  • Anmeldungen und Benutzer
  • Anmeldeinformationen zum Steuern des Zugriffs auf Speicherkonten
  • Erteilung, Verweigerung und Widerruf von Berechtigungen auf der Objektebene
  • Microsoft Entra-Integration

T-SQL-Unterstützung:

  • Vollständige Unterstützung der Oberfläche SELECT, einschließlich der meisten SQL-Funktionen
  • CETAS (CREATE EXTERNAL TABLE AS SELECT)
  • Sicht- und sicherheitsbezogene DDL-Anweisungen

Ein serverloser SQL-Pool verfügt über keinen lokalen Speicher, und es werden nur Metadatenobjekte in Datenbanken gespeichert. Daher wird T-SQL im Zusammenhang mit folgenden Konzepten nicht unterstützt:

  • Tabellen
  • Trigger
  • Materialisierte Sichten
  • Sicht- und sicherheitsfremde DDL-Anweisungen
  • DML-Anweisungen

Hinweis

Abfragen im serverlosen SQL-Pool weisen ein Timeout auf. Weitere Informationen zu Abfragetimeouts, die sich auf Ihre Workload auswirken können, finden Sie unter Systemeinschränkungen für serverlose SQL Pools. Derzeit können Sie das Timeout nicht ändern.

Erweiterungen

Ein serverloser SQL-Pool erweitert die vorhandene Funktion OPENROWSET mit folgenden Funktionen, um reibungslose Abfragen für Daten zu ermöglichen, die sich in Dateien im Data Lake befinden:

Abfragen mehrerer Dateien oder Ordner

Abfragen des Parquet-Dateiformats

Abfragen des DELTA-Formats

Verschiedene Textformate mit Trennzeichen (mit benutzerdefiniertem Feldabschlusszeichen, Zeilenabschlusszeichen, Escapezeichen)

Azure Cosmos DB-Analysespeicher

Lesen einer ausgewählten Teilmenge von Spalten

Schemarückschluss

filename-Funktion

filepath-Funktion

Verwenden von komplexen Typen und geschachtelten oder wiederholten Datenstrukturen

Sicherheit

Ein serverloser SQL-Pool bietet Mechanismen, um den Zugriff auf Ihre Daten zu schützen.

Microsoft Entra-Integration und Multi-Faktor-Authentifizierung

Ein serverloser SQL-Pool ermöglicht die zentrale Verwaltung der Identitäten von Datenbankbenutzer*innen und anderen Microsoft-Diensten über die Microsoft Entra-Integration. Diese Funktion vereinfacht die Berechtigungsverwaltung und erhöht die Sicherheit. Microsoft Entra ID unterstützt Multi-Faktor-Authentifizierung (MFA), um die Daten- und Anwendungssicherheit zu erhöhen, während gleichzeitig einmaliges Anmelden unterstützt wird.

Authentifizierung

Die Authentifizierung mit einem serverlosen SQL-Pool bezieht sich darauf, auf welche Weise Benutzer ihre Identität beim Herstellen der Verbindung mit dem Endpunkt nachweisen. Zwei Authentifizierungstypen werden unterstützt:

  • SQL-Authentifizierung

    Diese Authentifizierungsmethode verwendet einen Benutzernamen und ein Kennwort.

  • Microsoft Entra-Authentifizierung:

    Bei dieser Authentifizierungsmethode werden von Microsoft Entra ID verwaltete Identitäten verwendet. Für Microsoft Entra-Benutzer kann die Multi-Faktor-Authentifizierung aktiviert werden. Verwenden Sie immer die Active Directory-Authentifizierung (integrierte Sicherheit), sofern dies möglich ist.

Authorization

Autorisierung bezieht sich darauf, welche Aufgaben ein Benutzer innerhalb einer Datenbank im serverlosen SQL-Pool ausführen kann. Dies wird durch datenbankbezogene Rollenmitgliedschaften und Objektebenenberechtigungen Ihres Benutzerkontos gesteuert.

Bei Verwendung der SQL-Authentifizierung ist der SQL-Benutzer nur in einem serverlosen SQL-Pool vorhanden, und Berechtigungen gelten für die Objekte im serverlosen SQL-Pool. Zugriff auf sicherungsfähige Objekte in anderen Diensten (etwa in Azure Storage) kann einem SQL-Benutzer nicht direkt gewährt werden, da er nur im serverlosen SQL-Pool vorhanden ist. Der SQL-Benutzer muss einen der unterstützten Autorisierungstypen verwenden, um auf die Dateien zugreifen zu können.

Bei Verwendung der Microsoft Entra-Authentifizierung kann sich ein/e Benutzer*in beim serverlosen SQL-Pool und bei anderen Diensten (etwa Azure Storage) anmelden und dem bzw. der Microsoft Entra-Benutzer*in Berechtigungen erteilen.

Zugriff auf Speicherkonten

Ein beim serverlosen SQL-Pool angemeldeter Benutzer benötigt eine Autorisierung, um auf die Dateien in Azure Storage zugreifen und Abfragen für die Dateien ausführen zu können. Serverlose SQL-Pools unterstützen die folgenden Autorisierungstypen:

  • Shared Access Signature (SAS) für delegierten Zugriff auf Ressourcen im Speicherkonto. Mit einer SAS können Sie Clients Zugriff auf Ressourcen im Speicherkonto gewähren, ohne dafür Kontoschlüssel weitergeben zu müssen. Mit einer SAS können Sie präzise steuern, welche Art von Zugriff Sie Clients gewähren möchten, die über die SAS verfügen. Dazu stehen Parameter wie Gültigkeitsintervall, erteilte Berechtigungen, zulässiger IP-Adressbereich und zulässiges Protokoll (HTTPS/HTTP) zur Verfügung.

  • Benutzeridentität (auch „Passthrough“ genannt) ist ein Autorisierungstyp, bei dem die Identität der beim serverlosen SQL-Pool angemeldeten Microsoft Entra-Benutzer*innen verwendet wird, um den Zugriff auf die Daten zu autorisieren. Vor dem Zugriff auf die Daten muss der oder die Azure Storage-Administrator*in den Microsoft Entra-Benutzer*innen Zugriffsberechtigungen für die Daten erteilen. Da bei diesem Autorisierungstyp der bzw. die beim serverlosen SQL-Pool angemeldete Microsoft Entra-Benutzer*in verwendet wird, wird er für SQL-Benutzertypen nicht unterstützt.

  • Arbeitsbereichsidentität ist ein Autorisierungstyp, bei dem die Identität des Synapse-Arbeitsbereichs verwendet wird, um den Zugriff auf die Daten zu autorisieren. Vor dem Zugriff auf die Daten muss der Azure Storage-Administrator der Arbeitsbereichidentität Zugriffsberechtigungen für die Daten erteilen.

Zugreifen auf Azure Cosmos DB

Sie müssen Anmeldeinformationen auf Serverebene oder Datenbankebene mit dem schreibgeschützten Azure Cosmos DB-Kontoschlüssel erstellen, um auf den Azure Cosmos DB-Analysespeicher zuzugreifen.

Nächste Schritte

Weitere Informationen zur Endpunktverbindung und zum Abfragen von Dateien finden Sie in den folgenden Artikeln: