Utiliser des réservations Compute Engine avec Dataflow
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Pour vous assurer que des ressources de VM sont disponibles lorsque vos jobs Dataflow en ont besoin, vous pouvez utiliser des réservations Compute Engine. Les réservations offrent un niveau élevé d'assurance pour l'obtention de la capacité des ressources zonales Compute Engine.
Pour utiliser des réservations Compute Engine avec Dataflow, procédez comme suit :
Créez une réservation Compute Engine. Il peut s'agir d'une réservation à projet unique ou d'une réservation partagée. Pour en savoir plus, consultez les documents suivants :
La réservation peut inclure des accélérateurs de GPU.
Lorsque vous envoyez votre job Dataflow, transmettez l'une des options de service suivantes, en fonction de la version du SDK Beam que vous utilisez :
Beam version < 2.29 : --experiments=skip_gce_quota_verification
Beam version >= 2.29 : --dataflow_service_options=automatically_use_created_reservation
Pour éviter que les charges de travail de faible priorité du même projet n'entrent en concurrence avec Dataflow pour les réservations, définissez l'affinité de réservation sur none lorsque vous créez des VM pour ces charges de travail. Pour en savoir plus, consultez la section Consommer des instances réservées.
Pour utiliser la réservation, les nœuds de calcul Dataflow doivent correspondre à la configuration de la réservation. Vous devrez peut-être définir le type de machine des nœuds de calcul pour le job. Pour plus d'informations, consultez la section Nœuds de calcul.
Limites
Toutes les limites des réservations Compute Engine s'appliquent lorsque les nœuds de calcul Dataflow consomment des réservations. Consultez la section Fonctionnement des réservations.
Dataflow s'appuie sur l'ordre d'utilisation par défaut dans Compute Engine. Par conséquent, les limites suivantes s'appliquent :
Dataflow ne consomme pas de réservation créée avec l'option --require-specific-reservation.
Les autres charges de travail du même projet ou de la même organisation qui ne spécifient pas l'option --reservation peuvent être en concurrence avec les charges de travail Dataflow pour les réservations spécifiques à un projet ou partagées.
Les jobs Dataflow Prime ne consomment pas de réservations Compute Engine.
Tarifs
Les VM Compute Engine réservées sont facturées par Dataflow pendant l'exécution du job Dataflow et sont facturées par Compute Engine lorsque les VM ne sont pas utilisées par Dataflow.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/18 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/08/18 (UTC)."],[[["\u003cp\u003eCompute Engine reservations can be used to ensure VM resources are available for Dataflow jobs.\u003c/p\u003e\n"],["\u003cp\u003eTo utilize reservations, create a Compute Engine reservation and pass the appropriate service option when submitting a Dataflow job, dependent on the Beam SDK version used.\u003c/p\u003e\n"],["\u003cp\u003eSetting the reservation affinity to \u003ccode\u003enone\u003c/code\u003e for low-priority workloads prevents competition for reservations with Dataflow jobs.\u003c/p\u003e\n"],["\u003cp\u003eDataflow worker configurations must match the reservation's configuration to successfully consume the reserved resources, which may require adjustments to the worker machine type.\u003c/p\u003e\n"],["\u003cp\u003eCompute Engine reservations used with Dataflow are billed by Dataflow while the job runs and by Compute Engine when idle, and they are not eligible for Compute Engine committed use discounts.\u003c/p\u003e\n"]]],[],null,["To ensure that VM resources are available when your Dataflow jobs need\nthem, you can use Compute Engine reservations. Reservations provide a high\nlevel of assurance in obtaining capacity for Compute Engine zonal\nresources.\n\nTo use Compute Engine reservations with Dataflow, perform the\nfollowing steps:\n\n1. Create a Compute Engine reservation. It can be a single-project\n reservation or a shared reservation. For more information, see the following\n documents:\n\n - [Create a reservation for a single project](/compute/docs/instances/reservations-single-project)\n - [Create a shared reservation](/compute/docs/instances/reservations-shared)\n\n The reservation can include GPU or TPU accelerators.\n2. When you submit your Dataflow job, pass one of the following\n service options, depending on which version of the Beam SDK you are using:\n\n - Beam version \\\u003c 2.29: `--experiments=skip_gce_quota_verification`\n - Beam version \\\u003e= 2.29: `--dataflow_service_options=automatically_use_created_reservation`\n\nTo prevent low-priority workloads in the same project from competing for\nreservations with Dataflow, set the reservation affinity to\n`none` when you create VMs for those workloads. For more information, see\n[Consuming reserved instances](/compute/docs/instances/reserving-zonal-resources#consuming_reserved_instances).\n\nIn order to use the reservation, the Dataflow workers must match\nthe reservation configuration. You might need to set the worker machine type for\nthe job. For more information, see\n[Workers](/dataflow/docs/request-quotas#workers).\n\nLimitations\n\n- All limitations of Compute Engine reservations apply when\n Dataflow workers consume reservations. See\n [How reservations work](/compute/docs/instances/reservations-overview#how-reservations-work).\n\n- Dataflow relies on the\n [default consumption order](/compute/docs/instances/reservations-overview#consumption-order)\n in Compute Engine. As a result, the following limitations apply:\n\n - Other workloads in the same project or Organization that don't specify the `--reservation` flag might compete with Dataflow workloads for project-specific or shared reservations.\n- Dataflow Prime jobs don't consume Compute Engine reservations.\n\nReservations and accelerators\n\nDataflow supports [*specifically targeted*\nreservations](/compute/docs/instances/reservations-consume#consuming_instances_from_a_specific_reservation)\nfor pipelines using accelerators (GPUs or TPUs). This functionality is generally\navailable with an allowlist. For instructions on using Dataflow\naccelerators with specific reservations, contact your account team.\n\nPricing\n\nDataflow bills you for VMs from *automatically consumed*\nreservations while your Dataflow job runs. When\nDataflow isn't using the VMs, Compute Engine bills you.\n\nCompute Engine pricing model\n\nIf your Dataflow usage includes VMs from [*specifically targeted*\nreservations](/compute/docs/instances/reservations-overview#consumption-type)\nthat have GPUs or TPUs, then compute resources from those reserved VMs are\nbilled according to [Compute Engine\nPricing](/compute/all-pricing). If your *specifically targeted* reservations are\nattached to a [Compute Engine resource-based\ncommitment](/compute/docs/instances/signing-up-committed-use-discounts), then\nyou also receive applicable resource-based committed use discounts (CUDs) for\nyour usage. You're also billed a management premium for compute resources\nconsumed in Dataflow. For more pricing details, see [Dataflow Pricing](/dataflow/pricing).\n\nDataflow pricing model\n\nFor any other type of Compute Engine reservations that you use with\nDataflow, your usage is billed by using the\n[Dataflow pricing model](/dataflow/pricing). Dataflow\nusage from those reservations isn't eligible for resource-based CUDs, even if\nthose reservations are attached to a resource-based commitment. This applies to\nthe following Compute Engine reservations:\n\n- *Specifically targeted* reservations that don't have GPUs or TPUs\n- All *automatically consumed* reservations\n\nWhat's next\n\nTo learn more about Compute Engine reservations, see\n[Reservations of Compute Engine zonal resources](/compute/docs/instances/reservations-overview)."]]