Organiza flujos de trabajo

Para solicitar asistencia o enviar comentarios sobre esta función, envía un correo electrónico a bigquery-workflows-preview-feedback@google.com.

En este documento, se describe cómo orquestar flujos de trabajo, incluidos cómo programar flujos de trabajo y cómo inspeccionar las ejecuciones programadas de flujos de trabajo.

Workflows se basan en Dataform.

Cada programación de flujo de trabajo se ejecuta con una cuenta de servicio personalizada de Dataform, que seleccionas durante la creación de la programación. Para obtener más información sobre los tipos de cuentas de servicio en Dataform, consulta Acerca de las cuentas de servicio en Dataform.

Los cambios que realices en un flujo de trabajo se guardarán automáticamente, pero solo estarán disponibles para ti y para los usuarios a los que se les otorgue el rol de administrador de Dataform en el proyecto. Para actualizar el programa con una versión nueva del flujo de trabajo, debes implementarlo. La implementación actualiza la programación para usar la versión actual del flujo de trabajo. Las programaciones siempre ejecutan la versión implementada más reciente.

Las programaciones de flujos de trabajo que contienen notebooks usan una especificación de entorno de ejecución predeterminada. Durante una ejecución programada de un flujo de trabajo que contiene notebooks, BigQuery escribe el resultado del notebook en el bucket de Cloud Storage seleccionado durante la creación de la programación.

Antes de comenzar

Antes de comenzar, crea un flujo de trabajo.

Habilita la programación de flujos de trabajo

Para programar flujos de trabajo, debes otorgar los siguientes roles a la cuenta de servicio que planeas usar para las programaciones de flujos de trabajo:

Usuario de cuenta de servicio (roles/iam.serviceAccountUser)
Sigue los pasos de Otorga un solo rol a una cuenta de servicio para agregar tu cuenta de servicio como principal a sí misma. En otras palabras, agrega la cuenta de servicio como principal a la misma cuenta de servicio. Luego, otorga el rol de usuario de cuenta de servicio a este principal.

Si tu flujo de trabajo contiene consultas SQL, debes otorgar los siguientes roles a la cuenta de servicio que planeas usar para las programaciones de flujos de trabajo:

Usuario de trabajo de BigQuery (roles/bigquery.jobUser)
Sigue los pasos de Cómo otorgar un solo rol en un proyecto para otorgar el rol de Usuario de trabajo de BigQuery a tu cuenta de servicio en los proyectos de los que tus flujos de trabajo leen datos.
Visualizador de datos de BigQuery (roles/bigquery.dataViewer)
Sigue los pasos de Cómo otorgar un solo rol en un proyecto para otorgar el rol de Visualizador de datos de BigQuery a tu cuenta de servicio en los proyectos de los que tus flujos de trabajo leen datos.
Editor de datos de BigQuery (roles/bigquery.dataEditor)
Sigue los pasos de Cómo otorgar un solo rol en un proyecto para otorgar el rol de Editor de datos de BigQuery a tu cuenta de servicio en los proyectos en los que tus flujos de trabajo escriben datos.

Si tu flujo de trabajo contiene notebooks, debes otorgar los siguientes roles a la cuenta de servicio que planeas usar para las programaciones de flujos de trabajo:

Usuario del ejecutor de notebooks (roles/aiplatform.notebookExecutorUser)
Sigue los pasos de Cómo otorgar un solo rol en un proyecto para otorgar el rol de usuario de ejecutor de notebooks a tu cuenta de servicio en el proyecto seleccionado.
Administrador de almacenamiento (roles/storage.admin)
Sigue las instrucciones de Agrega un principal a una política a nivel de bucket para agregar tu cuenta de servicio como principal al bucket de Cloud Storage que planeas usar para almacenar el resultado de notebooks ejecutados en ejecuciones programadas de flujos de trabajo y otorgar el rol de administrador de almacenamiento a este principal.

Además, debes otorgar el siguiente rol a la cuenta de servicio predeterminada de Dataform:

Creador de tokens de cuenta de servicio (roles/iam.serviceAccountTokenCreator)
Sigue los pasos de Otorga acceso de creación de tokens a una cuenta de servicio para agregar la cuenta de servicio predeterminada de Dataform como principal a tu cuenta de servicio, y otorga el rol de creador de tokens de cuentas de servicio a esta principal.

Para obtener más información sobre las cuentas de servicio en Dataform, consulta Acerca de las cuentas de servicio en Dataform.

Roles obligatorios

Para obtener los permisos que necesitas para administrar flujos de trabajo, pídele a tu administrador que te otorgue los siguientes roles de IAM:

  • Para borrar flujos de trabajo, haz lo siguiente: Administrador de Dataform (roles/dataform.Admin) en el flujo de trabajo
  • Para crear, editar, ejecutar y borrar programas de flujo de trabajo, usa el rol de Administrador de Dataform (roles/dataform.Admin) en el flujo de trabajo.
  • Para ver y ejecutar flujos de trabajo, usa el Visualizador de Dataform (roles/dataform.Viewer) en el proyecto.
  • Para ver las programaciones de flujos de trabajo, usa el editor de Dataform (roles/dataform.Editor) en el proyecto.

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

Para obtener más información sobre IAM de Dataform, consulta Control de acceso con IAM.

Crea un programa de flujo de trabajo

Para programar un flujo de trabajo, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página BigQuery.

    Ir a BigQuery

  2. En el panel Explorador, expande tu proyecto y la carpeta Flujos de trabajo y, luego, selecciona un flujo de trabajo.

  3. Haga clic en Programar (Schedule).

  4. En el panel Programar flujo de trabajo, en el campo Nombre de la programación, ingresa un nombre para la programación.

  5. En el campo Cuenta de servicio, selecciona una cuenta de servicio.

  6. Si tu flujo de trabajo contiene un notebook, en el campo Bucket de Cloud Storage, haz clic en Explorar y selecciona o crea un bucket de Cloud Storage para almacenar el resultado de los notebooks en tu flujo de trabajo.

    Se debe otorgar a la cuenta de servicio seleccionada el rol de IAM de Administrador de almacenamiento en el bucket seleccionado. Para obtener más información, consulta Habilita la programación de flujos de trabajo.

  7. En la sección frecuencia de programación, haz lo siguiente:

    1. En el menú desplegable Repeticiones, selecciona la frecuencia de las ejecuciones programadas del flujo de trabajo.
    2. En el campo A la hora, ingresa la hora de las ejecuciones de flujos de trabajo programadas.
    3. En el menú desplegable Zona horaria, selecciona la zona horaria para la programación.
  8. Haz clic en Crear programación.

Cuando creas el programa, se implementa automáticamente la versión actual del flujo de trabajo. Para actualizar el programa con una versión nueva del flujo de trabajo, implementa el flujo de trabajo.

La versión más reciente implementada del flujo de trabajo se ejecuta a la hora y frecuencia seleccionadas.

Implementa un flujo de trabajo

La implementación de un flujo de trabajo actualiza su programación con la versión actual del flujo de trabajo. Las programaciones ejecutan la versión implementada más reciente del flujo de trabajo.

Para implementar un flujo de trabajo, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página BigQuery.

    Ir a BigQuery

  2. En el panel Explorador, expande tu proyecto y la carpeta Flujos de trabajo y, luego, selecciona un flujo de trabajo.

  3. Haz clic en Implementar.

La programación correspondiente se actualiza con la versión actual del flujo de trabajo. La versión implementada más reciente del flujo de trabajo se ejecuta a la hora programada.

Inhabilita un programa

Para pausar las ejecuciones programadas de un flujo de trabajo seleccionado sin borrar el programa, puedes inhabilitarlo.

Para inhabilitar una programación de un flujo de trabajo seleccionado, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página BigQuery.

    Ir a BigQuery

  2. En el panel Explorador, expande tu proyecto y la carpeta Flujos de trabajo y, luego, selecciona un flujo de trabajo.

  3. Haz clic en Ver programación.

  4. En la tabla Detalles de la programación, en la fila Estado de la programación, haz clic en el botón de activación La programación está habilitada.

Habilita un programa

Para reanudar las ejecuciones programadas de una programación de flujo de trabajo inhabilitada, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página BigQuery.

    Ir a BigQuery

  2. En el panel Explorador, expande tu proyecto y la carpeta Flujos de trabajo y, luego, selecciona un flujo de trabajo.

  3. Haz clic en Ver programación.

  4. En la tabla Detalles de la programación, en la fila Estado de la programación, haz clic en el botón de activación La programación está inhabilitada.

Ejecuta un flujo de trabajo implementado de forma manual

Cuando ejecutas de forma manual un flujo de trabajo implementado en una programación seleccionada, BigQuery ejecuta el flujo de trabajo implementado una vez, independientemente de la programación.

Para ejecutar manualmente un flujo de trabajo implementado, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página Orchestration.

    Ve a la página Organización

  2. Haz clic en el nombre de la programación del flujo de trabajo seleccionada.

  3. En la página Detalles de la programación, haz clic en Ejecutar.

Cómo ver todos los programas de flujo de trabajo

Para ver todas las programaciones de flujos de trabajo en tu proyecto de Google Cloud, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página Orchestration.

    Ve a la página Organización

  2. Opcional: Para mostrar columnas adicionales con detalles de la programación del flujo de trabajo, haz clic en Opciones de visualización de columnas, selecciona las columnas y haz clic en Aceptar.

Cómo ver los detalles del programa del flujo de trabajo

Para ver los detalles de una programación de flujo de trabajo seleccionada, sigue estos pasos:

Panel Explorador

  1. En la consola de Google Cloud, ve a la página BigQuery.

    Ir a BigQuery

  2. En el panel Explorador, expande tu proyecto y la carpeta Flujos de trabajo y, luego, selecciona un flujo de trabajo.

  3. Haz clic en Ver programación.

Página Organización

  1. En la consola de Google Cloud, ve a la página Orchestration.

    Ve a la página Organización

  2. Haz clic en el nombre de la programación del flujo de trabajo seleccionada.

Cómo ver las ejecuciones programadas anteriores

Para ver las ejecuciones anteriores de una programación de flujo de trabajo seleccionada, sigue estos pasos:

Panel Explorador

  1. En la consola de Google Cloud, ve a la página BigQuery.

    Ir a BigQuery

  2. En el panel Explorador, expande tu proyecto y la carpeta Flujos de trabajo y, luego, selecciona un flujo de trabajo.

  3. Haz clic en Ejecuciones.

  4. Opcional: Para actualizar la lista de ejecuciones anteriores, haz clic en Actualizar.

Página Organización

  1. En la consola de Google Cloud, ve a la página Orchestration.

Ve a la página Organización

  1. Haz clic en el nombre del flujo de trabajo seleccionado.

  2. En la página Detalles del programa, en la sección Ejecuciones anteriores, inspecciona las ejecuciones anteriores.

  3. Opcional: Para actualizar la lista de ejecuciones anteriores, haz clic en Actualizar.

Edita el programa de un flujo de trabajo

Para editar una programación de flujo de trabajo, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página BigQuery.

    Ir a BigQuery

  2. En el panel Explorador, expande tu proyecto y la carpeta Flujos de trabajo y, luego, selecciona un flujo de trabajo.

  3. Haz clic en Ver programación y, luego, en Editar.

  4. En el diálogo Programar flujo de trabajo, edita la programación y, luego, haz clic en Actualizar programación.

Borra la programación de un flujo de trabajo

Para borrar definitivamente una programación de flujo de trabajo, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página Orchestration.

    Ve a la página Organización

  2. Elija una de las siguientes opciones:

    • Haz clic en el nombre del programa de flujo de trabajo seleccionado y, luego, en la página Detalles del programa, haz clic en Borrar.

    • En la fila que contiene la programación del flujo de trabajo seleccionada, haz clic en Ver acciones en la columna Acciones y, luego, en Borrar.

  3. En el cuadro de diálogo que aparece, haz clic en Borrar.

¿Qué sigue?