Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Auf dieser Seite werden häufige Ursachen für Verzögerungen bei der Planung von Dataproc-Jobs aufgeführt. Außerdem finden Sie hier Informationen, die Ihnen helfen können, diese zu vermeiden.
Übersicht
Im Folgenden sind häufige Gründe für Verzögerungen (Drosselung) bei Dataproc-Jobs aufgeführt:
Zu viele aktive Jobs
Hohe Arbeitsspeichernutzung des Systems
Nicht genügend freier Speicher
Ratenbegrenzung wurde überschritten
Normalerweise wird die Meldung zur Jobverzögerung im folgenden Format ausgegeben:
Awaiting execution [SCHEDULER_MESSAGE]"
In den folgenden Abschnitten finden Sie mögliche Ursachen und Lösungen für bestimmte Szenarien, in denen es zu Verzögerungen bei Jobs kommt.
Zu viele aktive Jobs
Planernachricht:
Throttling job ### (and maybe others): Too many running jobs (current=xx max=xx)
Ursachen:
Die maximale Anzahl gleichzeitiger Jobs basierend auf dem Arbeitsspeicher der Master-VM wurde überschritten (der Job-Treiber wird auf der Master-VM des Dataproc-Clusters ausgeführt).
Standardmäßig reserviert Dataproc 3,5 GB Arbeitsspeicher für Anwendungen und erlaubt 1 Job pro GB.
Beispiel: Der Maschinentyp n1-standard-4 hat 15GB Arbeitsspeicher. Nachdem 3.5GB für Gemeinkosten reserviert wurde, bleiben 11.5GB übrig. Abgerundet auf eine Ganzzahl ist 11GB für bis zu 11 gleichzeitige Jobs verfügbar.
Lösungen:
Überwachen Sie Log-Messwerte wie CPU- und Arbeitsspeichernutzung, um die Jobanforderungen zu schätzen.
Wenn Sie einen Jobcluster erstellen, gilt Folgendes:
Verwenden Sie für die Master-VM des Clusters einen Maschinentyp mit mehr Arbeitsspeicher.
Wenn 1GB pro Job mehr ist, als Sie benötigen, legen Sie die dataproc:dataproc.scheduler.driver-size-mb-Clustereigenschaft auf einen Wert unter 1024 fest.
Legen Sie das Clusterattributdataproc:dataproc.scheduler.max-concurrent-jobs auf einen Wert fest, der Ihren Jobanforderungen entspricht.
Viel Systemspeicher oder nicht genügend freier Speicher
Planernachricht:
Throttling job xxx_____JOBID_____xxx (and maybe others): High system memory usage (current=xx%)
Throttling job xxx_____JOBID_____xxx (and maybe others): Not enough free memory (current=xx min=xx)
Ursachen:
Standardmäßig drosselt der Dataproc-Agent die Jobübermittlung, wenn die Speichernutzung 90 % erreicht (0.9)). Wenn dieser Grenzwert erreicht ist, können keine neuen Jobs geplant werden.
Der freie Arbeitsspeicher, der zum Planen eines weiteren Jobs im Cluster erforderlich ist, reicht nicht aus.
Lösung:
Wenn Sie einen Cluster erstellen, gilt Folgendes:
Erhöhen Sie den Wert des Clusterattributsdataproc:dataproc.scheduler.max-memory-used.
Legen Sie ihn beispielsweise über dem Standardwert 0.90 auf 0.95 fest.
Erhöhen Sie den Wert des Clusterattributsdataproc.scheduler.min-free-memory.mb. Der Standardwert ist 256 MB.
Der Dataproc-Agent hat das Limit für die Job-Einreichungsrate erreicht.
Lösungen:
Standardmäßig ist die Jobübergabe des Dataproc-Agents auf 1.0 QPS begrenzt. Sie können beim Erstellen eines Clusters mit dem Clusterattributdataproc:dataproc.scheduler.job-submission-rate einen anderen Wert festlegen.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-08-22 (UTC)."],[[["\u003cp\u003eDataproc job scheduling delays, often indicated by an "Awaiting execution" message, can occur due to several common reasons, including having too many running jobs, high system memory usage, not enough free memory, or exceeding the job rate limit.\u003c/p\u003e\n"],["\u003cp\u003eThe maximum number of concurrent jobs is limited by the master VM's available memory, with Dataproc reserving 3.5GB and typically allowing 1 job per remaining GB; adjustments can be made to this via cluster properties, in order to be more efficient.\u003c/p\u003e\n"],["\u003cp\u003eJob throttling can occur when system memory usage exceeds 90% or there is insufficient free memory, and these thresholds can be adjusted using specific cluster properties such as \u003ccode\u003edataproc:dataproc.scheduler.max-memory-used\u003c/code\u003e and \u003ccode\u003edataproc.scheduler.min-free-memory.mb\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe job submission rate is limited by default to 1.0 QPS (Queries Per Second), but this limit can be modified by setting the \u003ccode\u003edataproc:dataproc.scheduler.job-submission-rate\u003c/code\u003e cluster property during cluster creation.\u003c/p\u003e\n"]]],[],null,["# Troubleshoot job delays\n\nThis page lists common causes of Dataproc job scheduling delays,\nwith information that can help you avoid them.\n\nOverview\n--------\n\nThe following are common reasons why a Dataproc job is being delayed\n(throttled):\n\n- Too many running jobs\n- High system memory usage\n- Not enough free memory\n- Rate limit exceeded\n\nTypically, the job delay message will be issued in the following format: \n\n Awaiting execution [\u003cvar translate=\"no\"\u003eSCHEDULER_MESSAGE\u003c/var\u003e]\"\n\nThe following sections provide possible causes and solutions for specific\njob delay scenarios.\n\nToo many running jobs\n---------------------\n\nScheduler message: \n\n Throttling job ### (and maybe others): Too many running jobs (current=xx max=xx)\n\nCauses:\n\nThe maximum number of concurrent jobs based on master VM memory is exceeded (the\njob driver runs on the Dataproc cluster master VM).\nBy default, Dataproc reserves 3.5GB of memory for applications,\nand allows 1 job per GB.\n\nExample: The `n1-standard-4` machine type has `15GB` memory. With `3.5GB` reserved for overhead,\n`11.5GB` remains. Rounding down to an integer, `11GB` is available for up to 11 concurrent jobs.\n\nSolutions:\n\n1. Monitor log metrics, such as CPU usage and memory, to estimate job requirements.\n\n2. When you create a job cluster:\n\n 1. Use a larger memory machine type for the cluster master VM.\n\n 2. If `1GB` per job is more than you need, set the\n `dataproc:dataproc.scheduler.driver-size-mb`\n [cluster property](/dataproc/docs/concepts/configuring-clusters/cluster-properties#service_properties)\n to less than `1024`.\n\n 3. Set the `dataproc:dataproc.scheduler.max-concurrent-jobs`\n [cluster property](/dataproc/docs/concepts/configuring-clusters/cluster-properties#service_properties)\n to a value suited to your job requirements.\n\nHigh system memory or not enough free memory\n--------------------------------------------\n\nScheduler message: \n\n Throttling job xxx_____JOBID_____xxx (and maybe others): High system memory usage (current=xx%)\n\n Throttling job xxx_____JOBID_____xxx (and maybe others): Not enough free memory (current=xx min=xx)\n\nCauses:\n\nBy default, the Dataproc agent throttles job submission when\nmemory use reaches 90% (`0.9)`. When this limit is reached, new jobs cannot be\nscheduled.\n\nThe amount of free memory needed to schedule another job on the cluster\nis not sufficient.\n\nSolution:\n\n1. When you create a cluster:\n\n 1. Increase the value of the `dataproc:dataproc.scheduler.max-memory-used` [cluster property](/dataproc/docs/concepts/configuring-clusters/cluster-properties#service_properties). For example, set it above the `0.90` default to `0.95`. Setting the value to `1.0` disables master-memory-utilization job throttling.\n 2. Increase the value of the `dataproc.scheduler.min-free-memory.mb` [cluster property](/dataproc/docs/concepts/configuring-clusters/cluster-properties#service_properties). The default value is `256` MB.\n\nJob rate limit exceeded\n-----------------------\n\nScheduler message: \n\n Throttling job xxx__JOBID___xxx (and maybe others): Rate limit\n\nCauses:\n\nThe Dataproc agent reached the job submission rate limit.\n\nSolutions:\n\n1. By default, the Dataproc agent job submission is limited at `1.0 QPS`, which you can set to a different value when you create a cluster with the `dataproc:dataproc.scheduler.job-submission-rate` [cluster property](/dataproc/docs/concepts/configuring-clusters/cluster-properties#service_properties).\n\nView job status.\n----------------\n\nTo view job status and details, see\n[Job monitoring and debugging](/dataproc/docs/concepts/jobs/life-of-a-job#job_monitoring_and_debugging)."]]