Vorbereitungen für Data Flow-SQL-Endpunkte
Voraussetzungen für Data Flow-SQL-Endpunkte prüfen
Um Data Flow-SQL-Endpunkte verwenden zu können, benötigen Sie:
- Ein Oracle Cloud Infrastructure-Account. Mit Testaccounts kann Data Flow angezeigt werden.
- Die Rolle "Serviceadministrator" für die Oracle Cloud-Services. Wenn der Service aktiviert ist, werden die Zugangsdaten und die URL an den ausgewählten Accountadministrator gesendet. Der Accountadministrator erstellt einen Account für jeden Benutzer, der Zugriff auf den Service benötigt.
- Einen unterstützten Browser, wie z.B.:
-
Microsoft Internet Explorer 11.x oder höher
-
Mozilla Firefox ESR 38 oder höher
-
Google Chrome 42 oder höher
Hinweis
Verwenden Sie für die Spark-UI nur Google Chrome. -
-
In Object Storage geladene Daten für die Verarbeitung. Die Daten können aus externen Datenquellen oder Cloud-Services gelesen werden. Data Flow SQL-Endpunkte optimieren die Performance und Sicherheit für Daten, die in Object Storage gespeichert sind.
Geben Sie keine vertraulichen Informationen ein, wenn Sie den Cloud-Ressourcen Beschreibungen, Tags oder freundliche Namen über die Konsole, die API oder die CLI von Oracle Cloud Infrastructure zuweisen. Sie gilt beim Erstellen oder Bearbeiten von Anwendungen in Data Flow.
SQL-Endpunkte verstehen
Data Flow SQL-Endpunkt ist eine Serviceentity, die Compute-Cluster mit langer Ausführungszeit in Ihrem Mandanten verwendet. Sie wählen eine Compute-Ausprägung aus und geben an, wie viele Instanzen Sie verwenden möchten. Jedes Cluster wird ausgeführt, bis es von einem Administrator gestoppt wird. Spark wird im Cluster ausgeführt. Die SQL-Engine ist schnell, lässt sich in Data Flow integrieren und unterstützt unstrukturierte Daten. Sie stellen eine Verbindung über ODBC oder JDBC her und authentifizieren sich mit IAM-Zugangsdaten.
Was sind Data Flow-SQL-Endpunkte
Data Flow-SQL-Endpunkte sind für Entwickler, Data Scientists und erfahrene Analysten gedacht, um Daten direkt an ihrem Speicherort im Data Lake interaktiv abzufragen. Diese Daten sind relational, halbstrukturiert und unstrukturiert, wie Logs, Sensorstreams und Videostreams, die normalerweise im Objektspeicher gespeichert werden. Wenn das Datenvolumen und die Komplexität zunehmen, werden Tools zur Untersuchung und Analyse von Daten im Data Lake in nativen Formaten wichtig, anstatt sie zu transformieren oder zu verschieben. Mit Data Flow SQL-Endpunkten können Sie große Mengen an Rohdaten wirtschaftlich verarbeiten, wobei die Cloud-native Sicherheit zur Kontrolle des Zugriffs verwendet wird. Sie können auf die benötigten Erkenntnisse per Selfservice zugreifen, ohne komplexe IT-Projekte koordinieren oder sich um veraltete Daten kümmern zu müssen. Abfragen in Data Flow SQL-Endpunkten arbeiten nahtlos mit Data Flow Batch für geplante Produktions-Pipelines zusammen. Sie ermöglichen eine schnelle Datenanalyse und verwenden Compute-Cluster mit langer Ausführungszeit, die in der Größe fixiert sind und bis zum Stoppen durch den Administrator ausgeführt werden.
Data Flow-SQL-Endpunkte:
- Stellen Sie interaktive Analysen direkt im Data Lake bereit.
- Sie basieren auf Spark für horizontale Skalierung, einfaches Lesen und Schreiben unstrukturierter Daten und Interoperabilität mit vorhandenem Datenfluss.
- Verwendet SQL, um Analysen zu vereinfachen.
- Unterstützen Sie wichtige Business Intelligence-(BI-)Tools mit ODBC- oder JDBC-Verbindungen mit IAM-Zugangsdaten.
- Daten für die in Object Storage geladene Verarbeitung verwenden. Die Daten können aus externen Datenquellen oder Cloud-Services gelesen werden.
Data Flow SQL-Endpunkte unterstützen alle von Spark unterstützten Dateitypen. Beispiel: JSON, Parquet, CSV und Avro.
Überlegungen zur Data Catalog-Metastore-Integration
Eine enge Integration zwischen den Data Flow SQL-Endpunkten und dem Data Catalog-Metastore ("Metastore") ist von grundlegender Bedeutung, um einen konsistenten, zuverlässigen und gesteuerten Zugriff auf externe und verwaltete Tabellen zu ermöglichen. Durch diese Integration verwendet ein SQL-Endpunkt den Metastore als autoritatives Repository für Schemas, Tabellendefinitionen, Partitionsmetadaten und Speicherorte, sodass Abfragen geplant und optimiert werden können, ohne die zugrunde liegenden Dateien wiederholt zu scannen.
Bei externen Tabellen stellt der Metastore sicher, dass Schema- und Partitionsinformationen mit Object Storage-Layouts konsistent bleiben. Bei verwalteten und Delta-Tabellen werden Transaktionsmetadaten, Herkunft und Lebenszyklusvorgänge verfolgt. Diese einheitliche Metadatenebene ermöglicht es Spark SQL, vorhersehbare Performance zu liefern, Governance- und Zugriffskontrollen durchzusetzen, die Schemaentwicklung zu unterstützen und die Kompatibilität über Workloads und Cluster hinweg aufrechtzuerhalten.
Der Metastore verwendet einen einfachen Sperrmechanismus, um sicherzustellen, dass nebenläufige Data Definition Language-(DDL-)Vorgänge, die über einen SQL-Endpunkt ausgegeben werden, keine Metadaten beschädigen oder inkonsistente Tabellenstatus erstellen. Wenn eine DDL-Anweisung wie CREATE/ALTER TABLE/PARTITION oder DROP TABLE/PARTITION ausgeführt wird, erwirbt der Metastore eine exklusive Sperre, sodass andere Sessions das Schema oder die Metadaten nicht ändern können, bis der Vorgang abgeschlossen ist.
Diese Lock-Koordination schützt vor Race-Bedingungen (z.B. zwei Benutzer, die dieselbe Tabelle gleichzeitig ändern) und stellt sicher, dass der SQL-Endpunkt in einer kohärenten, serialisierten Ansicht von Metadaten arbeitet. Durch die Kopplung der DDL-Ausführung mit der Durchsetzung von Sperren auf Metastorebene bewahrt der SQL-Endpunkt die Transaktionsintegrität für Metadatenvorgänge auf, selbst in Umgebungen mit mehreren Benutzern, die eine hohe Gleichzeitigkeit aufweisen.
Die Sperren blockieren jedoch vorübergehend den Zugriff auf Tabellenmetadaten, und DDL-Vorgänge mit langer Ausführungszeit können zu merklichen Verzögerungen bei Abfragen anderer Benutzer führen, die Metadatenlesevorgänge erfordern, insbesondere in gemeinsam genutzten oder hoch nebenläufigen Umgebungen.
Um diese Auswirkungen zu minimieren, koordinieren Sie DDL-Aktivitäten während Wartungsfenstern mit geringem Datenverkehr oder über orchestrierte Workflows, die sicherstellen, dass Schemaänderungen außerhalb der Ausführungszeiträume von Spitzenabfragen stattfinden.