Informationen zu Streaming

Mit der Apache Spark Structured Streaming-Funktion können Sie Streamingdaten oder kontinuierlich erzeugte Daten nahezu in Echtzeit in Oracle AI Data Platform Workbench verarbeiten.

Sowohl Notizbücher als auch Workflows unterstützen strukturiertes Streaming von Apache Spark. Sie können die folgenden Quellen und Senken zum Lesen von Streamdaten, Schreiben von Streamdaten in und für Checkpoint-Speicherorte verwenden.

Tabelle 16-1: Unterstützte Quellen und Sinks

Quelle oder Sink Unterstützt?
Volume-Pfad (/Volume/bronze/bucket1) Unterstützt für alle Formate
Workspace-Pfad (/Workspace/folder1/) Unterstützt für alle Formate
Tabellen in Katalogen mit drei Teilenamen (catalog.schema.table) Nur für Delta-Format unterstützt

Nicht unterstützt für Parquet-, CSV-, JSON-, ORC-Formate

Beispiel 1: Unterstützter Code

  • streaming_df = spark.readStream.format("delta").table('stdcatalog.stdschema.deltatable')
  • streaming_df.writeStream.format("delta").outputMode("append").option("checkpointLocation", "/Volumes/checkpoints1/").toTable("stdcatalog.stdschema.deltatable")

Beispiel 2: Nicht unterstützter Code

  • spark.readStream.option("withEventTimeOrder", "true").format("format") .table("stdcatalog.stdschema.samplecsv")
Kafka Wird für alle Kafka-kompatiblen Streams ohne dreiteilige Benennungskonvention unterstützt

Nicht unterstützt für Kafka-basierten Katalog nach dreiteiligen Benennungskonventionen)

OCI Streaming-Service Unterstützt
OCI-Objektspeicherpfad (mit OCI://) Nicht unterstützt
Oracle Autonomous AI Lakehouse, Oracle AI Database, Oracle Autonomous AI Transaction Processing Nicht unterstützt für Streaming (readStream oder writeStream)

Strukturiertes Streaming mit Notizbüchern

Sie können Python-Code schreiben, um Streamdaten in einem Notizbuch zu verarbeiten. Volume-Pfade oder Workspace-Pfade sind als Checkpoint-Speicherort gültig, Object Storage-Pfade (oci://-Format) werden jedoch nicht als Checkpoint-Speicherort unterstützt. Wir empfehlen, Volume-Pfade als Checkpoint-Speicherort zu verwenden.


Beispiel für das Streaming von Code in einer Notizbuchzelle der AI Data Platform Workbench


Beispiel für Python-Code zur Verarbeitung von Streamdaten in einem AI Data Platform Workbench-Notizbuch

Auf der Registerkarte Dashboard in Ihrem Notizbuch können Sie Apache Spark-Streamingereignisse wie Eingaberate, Verarbeitungsrate und Batchdauer anzeigen, während Sie Streamingcode ausführen.


Dashboard-Registerkarte in einem geöffneten Notizbuch zur Anzeige von Streamingdaten

Sie können die Raw Streaming-bezogenen Ereignisse auch auf der Registerkarte Raw-Daten anzeigen, während Sie Ihren Code inkrementell entwickeln.


Registerkarte "Rohdaten" in einem Notizbuch geöffnet, in dem Streaming-bezogene Ereignisse angezeigt werden