Das Senden von Jobs aus einer SDK-Version, die nicht mehr unterstützt wird, führt zu Unterbrechungen und einem geringeren Durchsatz für Batch- und Streamingjobs mit langer Ausführungszeit. So verringern Sie mögliche Probleme:
- Führen Sie ein Upgrade der SDK-Version durch. (bevorzugt)
- Senden Sie den Job noch einmal mit einem temporären Token.
- Setzen Sie den unterbrochenen Job fort.
Jobs mit nicht unterstützten SDK-Versionen starten
Wenn Sie einen Dataflow-Job aus einer nicht mehr unterstützten SDK-Version senden, wird eine Fehlermeldung angezeigt, in der Sie aufgefordert werden, entweder Ihre SDK-Version zu aktualisieren oder ein temporäres Token zu verwenden, wenn Sie den Job senden.
Der Tokenwert in der Fehlermeldung enthält das Datum und die Uhrzeit, zu der das Token abläuft, sowie das Token selbst. Das Ablaufdatum liegt zwei Wochen in der Zukunft.
Wenn Sie das Token verwenden möchten, senden Sie den Job noch einmal mit dem Experiment-Flag unsupported_sdk_temporary_override_token
und dem Tokenwert.
--experiments=unsupported_sdk_temporary_override_token=TOKEN
Wenn Sie einen Job mit dem Token senden, nachdem es abgelaufen ist, erhalten Sie eine Fehlermeldung, in der steht, dass das Token abgelaufen ist. Sie können entweder ein Upgrade auf eine unterstützte SDK-Version durchführen oder den Job ohne das Token noch einmal senden, um ein neues Token zu erhalten.
Tokens sollten nicht als Dauerlösung verwendet werden, um ein nicht unterstütztes SDK weiterhin verwenden zu können. Eine Weile nachdem ein SDK nicht mehr unterstützt wird, werden alle Tokens widerrufen und alle Jobs, die jene nicht unterstützte SDK-Version verwenden, abgelehnt. Weitere Informationen zum Supportstatus von jedem SDK finden Sie unter Supportstatus für SDK-Versionen.
Unterbrochene Jobs fortsetzen
Dataflow-Jobs mit langer Ausführungszeit, die nicht mehr unterstützte SDKs verwenden, wie Streamingjobs, werden ebenfalls unterbrochen und ihr Durchsatz wird deutlich reduziert. Diese unterbrochenen Jobs können anhand der folgenden Fehlermeldung in den Joblogs identifiziert werden:
Der Workflow wurde automatisch durch den Dienst unterbrochen, da er ein nicht mehr unterstütztes SDK, das Apache Beam SDK for Python 2.3.0, verwendet. Führen Sie ein Upgrade auf die neueste SDK-Version durch. Verwenden Sie
gcloud alpha dataflow jobs resume-unsupported-sdk --token=TOKEN --region=REGION JOB_ID
, um den unterbrochenen Job vorübergehend fortzusetzen. Der mit diesem Token fortgesetzte Job wird am 28.08.2020 von 11:21:58 Uhr bis 7:00 Uhr wieder unterbrochen. Eine Liste der unterstützten SDK-Versionen finden Sie unter https://cloud.google.com/dataflow/support#support-status-for-dataflow-sdk-releases.
Wie sich anhand des Fehlers erahnen lässt, kann die Unterbrechung mit dem Befehl resume-unsupported-sdk kurzzeitig behoben werden. Das Fortsetzen eines unterbrochenen Jobs ist eine vorübergehende Lösung. Daher sollten Sie stattdessen Ihre SDK-Version upgraden, um in Zukunft weitere Unterbrechungen zu vermeiden.