Los componentes de Dataflow te permiten enviar trabajos de Apache Beam a Dataflow para su ejecución. En Dataflow, un
recurso Job
representa un trabajo de Dataflow.
El SDK de Google Cloud incluye los
siguientes operadores para crear recursos Job y supervisar su ejecución:
Además, el SDK de Google Cloud incluye el
componente WaitGcpResourcesOp,
que puedes usar para mitigar costos mientras ejecutas
trabajos de Dataflow.
DataflowFlexTemplateJobOp
El operador DataflowFlexTemplateJobOp
te permite crear un
componente de canalizaciones de Gemini Enterprise Agent Platform para iniciar una
plantilla de Flex de Dataflow.
En Dataflow, un recurso LaunchFlexTemplateParameter representa una plantilla de Flex que se iniciará. Este componente crea un recurso LaunchFlexTemplateParameter y, luego, solicita a Dataflow que cree un trabajo mediante el inicio de la plantilla. Si la plantilla se inicia de forma correcta, Dataflow muestra un recurso Job.
El componente de plantilla de Flex de Dataflow finaliza cuando se recibe un recurso Job de Dataflow. El componente genera un job_id como un .proto gcp_resources serializado. Puedes pasar este parámetro a un componente WaitGcpResourcesOp para esperar a que se complete el trabajo de Dataflow.
DataflowPythonJobOp
El operador DataflowPythonJobOp
te permite crear un componente de Gemini Enterprise Agent Platform Pipelines que prepare
datos enviando un trabajo de Apache Beam basado en Python a Dataflow para
su ejecución.
El código de Python del trabajo de Apache Beam se ejecuta con Dataflow Runner.
Cuando ejecutas la canalización con el servicio de Dataflow, el ejecutor
sube el código ejecutable a la ubicación que especifica el parámetro python_module_path
y las dependencias a un bucket de Cloud Storage (especificado por temp_location) y, luego, crea un
trabajo de Dataflow que ejecuta la canalización de Apache Beam en los recursos administrados en Google Cloud.
Para obtener más información sobre Dataflow Runner, consulta Usa Dataflow Runner.
El componente de Python para Dataflow acepta una lista de argumentos
que se pasan a través del ejecutor de Beam a tu código de
Apache Beam. args especifica estos argumentos. Por ejemplo, puedes usar estos
argumentos para configurar
apache_beam.options.pipeline_options y
especificar una red, una subred, claves de encriptación administradas por el cliente (CMEK) y
otras opciones cuando ejecutas trabajos de Dataflow.
WaitGcpResourcesOp
Los trabajos de Dataflow a menudo pueden tardar mucho tiempo en completarse. Los costos de un contenedor busy-wait (el contenedor que inicia el trabajo de Dataflow y espera el resultado) pueden ser caros.
Después de enviar el trabajo de Dataflow a través del ejecutor de Beam,
el componente DataflowPythonJobOp
finaliza de inmediato y muestra un parámetro de salida job_id como un
proto gcp_resources serializado. Puedes pasar este parámetro a un componente WaitGcpResourcesOp para esperar a que se complete el trabajo de Dataflow.
dataflow_python_op = DataflowPythonJobOp( project=project_id, location=location, python_module_path=python_file_path, temp_location = staging_dir, requirements_file_path = requirements_file_path, args = ['--output', OUTPUT_FILE], ) dataflow_wait_op = WaitGcpResourcesOp( gcp_resources = dataflow_python_op.outputs["gcp_resources"] )
Gemini Enterprise Agent Platform Pipelines optimiza el WaitGcpResourcesOp para ejecutarlo sin servidores y sin costos.
Si DataflowPythonJobOp y DataflowFlexTemplateJobOp no cumplen con tus requisitos, también puedes crear tu propio componente que genere el parámetro gcp_resources y lo pase al componente WaitGcpResourcesOp.
Para obtener más información sobre cómo crear el parámetro de salida gcp_resources, consulta
Escribe un componente para mostrar un vínculo de la consola de Google Cloud .
Referencia de la API
Para obtener la referencia del componente, consulta la referencia del SDK deGoogle Cloud para componentes de Dataflow.
Para obtener información de referencia de los recursos de Dataflow, consulta las siguientes páginas de referencia de la API:
recurso
LaunchFlexTemplateParameterrecurso
Job
Instructivos
- Comienza a usar el componente de plantilla de Flex de Dataflow
- Comienza a usar el componente de trabajo de Dataflow para Python
- Especifica una red y una subred.
- Usa claves de encriptación administradas por el cliente (CMEK)
Historial de versiones y notas de la versión
Para obtener más información sobre el historial de versiones y los cambios en el SDK de componentes de canalización de Google Cloud , consulta las notas de la versión del SDK de componentes de canalización deGoogle Cloud .
Contactos de asistencia técnica
Si tienes alguna pregunta, comunícate con kubeflow-pipelines-components@google.com.