Freigeben über


Konfigurieren der strukturierten Streaming-Batchgröße auf Azure Databricks

Durch das Einschränken der Eingaberate für strukturierte Streamingabfragen können Sie eine konsistente Batchgröße beibehalten und verhindern, dass große Stapel zu Überlauf und Verzögerungen bei der Mikro-Batchverarbeitung führen.

Azure Databricks bietet dieselben Optionen zum Steuern von strukturierten Streaming-Batchgrößen für Delta Lake und Auto Loader.

Einschränken der Eingaberate mit maxFilesPerTrigger

Einstellung maxFilesPerTrigger (oder cloudFiles.maxFilesPerTrigger für Auto Loader) legt eine Obergrenze für die Anzahl der Dateien fest, die in jedem Mikrobatch verarbeitet werden. Sowohl für Delta Lake als auch für Auto Loader ist der Standardwert 1000. (Beachten Sie, dass diese Option auch in Apache Spark für andere Dateiquellen vorhanden ist, bei denen es standardmäßig keinen Maximumwert gibt.)

Einschränken der Eingaberate mit maxBytesPerTrigger

Die Einstellung maxBytesPerTrigger (oder cloudFiles.maxBytesPerTrigger für den automatischen Ladevorgang) legt einen "soft max" für die Menge an Daten fest, die in jedem Mikrobatch verarbeitet werden. Das bedeutet, dass ein Batch ungefähr diese Datenmenge verarbeitet und möglicherweise mehr als den Grenzwert verarbeitet, um die Streamingabfrage voranzubringen, wenn die kleinste Eingabeeinheit größer als dieser Grenzwert ist. Für diese Einstellung gibt es keinen Standardwert.

Wenn Sie beispielsweise eine Bytezeichenfolge wie 10g angeben, um jeden Mikrobatch auf 10 GB Daten zu begrenzen, und Sie über Dateien mit jeweils 3 GB verfügen, verarbeitet Azure Databricks 12 GB in einem Mikrobatch.

Festlegen mehrerer Eingaberaten zusammen

Wenn Sie maxBytesPerTrigger in Verbindung mit maxFilesPerTrigger verwenden, verarbeitet der Mikrobatch Daten, bis die Untergrenze von entweder maxFilesPerTrigger oder maxBytesPerTrigger erreicht ist.

Einschränken von Eingaberaten für andere strukturierte Streamingquellen

Streamingquellen wie Apache Kafka haben jeweils benutzerdefinierte Eingabebeschränkungen, z. B. maxOffsetsPerTrigger. Weitere Informationen finden Sie unter Konfigurieren von Streamingdatenquellen.