Programa canalizaciones

En este documento, se describe cómo programar canalizaciones de BigQuery, lo que incluye cómo programar canalizaciones y cómo inspeccionar las ejecuciones de canalizaciones programadas.

Las canalizaciones funcionan con Dataform. Cada programa de canalización se ejecuta con las credenciales de usuario de tu Cuenta de Google o una cuenta de servicio de Dataform que seleccionas cuando configuras el programa.

Los cambios que realices en una canalización 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 de la canalización, debes implementar la canalización. La implementación actualiza el programa para usar tu versión actual de la canalización. Los programas siempre ejecutan la versión implementada más reciente.

Las programaciones de las canalizaciones que contienen notebooks usan una especificación de tiempo de ejecución predeterminada. Durante una ejecución programada de una canalización 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 una canalización.

Habilita la programación de canalizaciones

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

Usuario de cuenta de servicio (roles/iam.serviceAccountUser)
Sigue los pasos de Otorga un solo rol en 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 canalización contiene consultas SQL, debes otorgar los siguientes roles a la cuenta de servicio que planeas usar para las programaciones de canalizaciones:

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 desde los que tus canalizaciones 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 desde los que tus canalizaciones 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 canalizaciones escriben datos.

Si tu canalización contiene notebooks, debes otorgar los siguientes roles a la cuenta de servicio que planeas usar para las programaciones de canalizaciones:

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 del bucket para agregar tu cuenta de servicio como principal al bucket de Cloud Storage que planeas usar para almacenar el resultado de los notebooks ejecutados en ejecuciones programadas de canalizaciones y otorga 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 canalizaciones, pídele a tu administrador que te otorgue los siguientes roles de IAM:

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 la IAM de Dataform, consulta Controla el acceso con IAM.

Para usar plantillas de entorno de ejecución de notebooks de Colab cuando programes canalizaciones, necesitas el rol de Usuario del entorno de ejecución del notebook (roles/aiplatform.notebookRuntimeUser).

Crea una programación de canalización

Para crear una programación de la canalización, 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 Canalizaciones y, luego, selecciona una canalización.

  3. Haga clic en Programar (Schedule).

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

  5. En la sección Authentication, autoriza la canalización con las credenciales de usuario de tu Cuenta de Google o una cuenta de servicio.

    • Para usar las credenciales de usuario de tu Cuenta de Google (versión preliminar), selecciona Ejecutar con mis credenciales de usuario.
    • Para usar una cuenta de servicio, selecciona Ejecutar con la cuenta de servicio seleccionada y, luego, elige una cuenta de servicio.
  6. Si tu canalización contiene un notebook, en la sección Opciones de notebook, en el campo Plantilla de entorno de ejecución, selecciona una plantilla de entorno de ejecución de notebook de Colab o las especificaciones de entorno de ejecución predeterminadas. Para obtener detalles sobre cómo crear una plantilla de entorno de ejecución de un notebook de Colab, consulta Crea una plantilla de entorno de ejecución.

  7. Si tu canalización contiene un notebook, en la sección Opciones de 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 canalización.

    A la cuenta de servicio seleccionada se le debe otorgar el rol de IAM de administrador de almacenamiento en el bucket seleccionado. Para obtener más información, consulta Habilita la programación de canalizaciones.

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

    1. En el menú Repeticiones, selecciona la frecuencia de las ejecuciones de la canalización programadas.
    2. En el campo En el momento, ingresa la hora de las ejecuciones programadas de la canalización.
    3. En el menú Zona horaria, selecciona la zona horaria para la programación.
  9. Haz clic en Crear programación. Si seleccionaste Ejecutar con mis credenciales de usuario como método de autenticación, debes autorizar tu Cuenta de Google (versión preliminar).

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

La versión implementada más reciente de la canalización se ejecuta en el momento y la frecuencia seleccionados.

Página Programación

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

    Ir a Programación

  2. Haz clic en Crear y, luego, selecciona Programación de canalización en el menú.

  3. En el panel Programar canalización, selecciona una canalización para programar.

  4. En el campo Nombre de la programación, ingresa un nombre para la programación.

  5. En la sección Authentication, autoriza la canalización con las credenciales de usuario de tu Cuenta de Google o una cuenta de servicio.

    • Para usar las credenciales de usuario de tu Cuenta de Google (versión preliminar), selecciona Ejecutar con mis credenciales de usuario.
    • Para usar una cuenta de servicio, selecciona Ejecutar con la cuenta de servicio seleccionada y, luego, elige una cuenta de servicio.
  6. Si tu canalización contiene un notebook, en la sección Opciones de notebook, en el campo Plantilla de entorno de ejecución, selecciona una plantilla de entorno de ejecución de notebook de Colab o las especificaciones de entorno de ejecución predeterminadas. Para obtener detalles sobre cómo crear una plantilla de entorno de ejecución de un notebook de Colab, consulta Crea una plantilla de entorno de ejecución.

  7. Si tu canalización 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 canalización.

    A la cuenta de servicio seleccionada se le debe otorgar el rol de IAM de administrador de almacenamiento en el bucket seleccionado. Para obtener más información, consulta Habilita la programación de canalizaciones.

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

    1. En el menú Repeticiones, selecciona la frecuencia de las ejecuciones programadas de la canalización.
    2. En el campo En el momento, ingresa la hora de las ejecuciones programadas de la canalización.
    3. En el menú Zona horaria, selecciona la zona horaria para la programación.
  9. Haz clic en Crear programación. Si seleccionaste Ejecutar con mis credenciales de usuario como método de autenticación, debes autorizar tu Cuenta de Google (versión preliminar).

Autoriza tu Cuenta de Google

Para autenticar el recurso con las credenciales de usuario de tu Cuenta de Google, debes otorgar permiso de forma manual a las canalizaciones de BigQuery para obtener el token de acceso de tu Cuenta de Google y acceder a los datos de origen en tu nombre. Puedes otorgar la aprobación manual con la interfaz del diálogo de OAuth.

Solo debes otorgar permiso a las canalizaciones de BigQuery una vez.

Para revocar el permiso que otorgaste, sigue estos pasos:

  1. Ve a la página de tu Cuenta de Google.
  2. Haz clic en BigQuery Pipelines.
  3. Haga clic en Quitar acceso.

Cambiar el propietario de la programación de la canalización actualizando las credenciales también requiere aprobación manual si el nuevo propietario de la Cuenta de Google nunca antes creó una programación.

Si tu canalización contiene un notebook, también debes otorgar permiso de forma manual para que Colab Enterprise obtenga el token de acceso a tu Cuenta de Google y acceda a los datos de origen en tu nombre. Solo debes otorgar el permiso una vez. Puedes revocar este permiso en la página de la Cuenta de Google.

Implementa una canalización

Cuando se implementa una canalización, se actualiza su programa con la versión actual de la canalización. Las programaciones ejecutan la versión implementada más reciente de la canalización.

Para implementar una canalización, 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 Canalizaciones y, luego, selecciona una canalización.

  3. Haz clic en Implementar.

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

Cómo inhabilitar un programa

Para pausar las ejecuciones programadas de una canalización seleccionada sin borrar el programa, puedes inhabilitarlo.

Para inhabilitar una programación para un canal seleccionado, 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 Canalizaciones y, luego, selecciona una canalización.

  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.

Página Programación

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

    Ir a Programación

  2. Haz clic en el nombre de la canalización seleccionada.

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

Cómo habilitar un programa

Para reanudar las ejecuciones programadas de una programación de canalización inhabilitada, 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 Canalizaciones y, luego, selecciona una canalización.

  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.

Página Programación

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

    Ir a Programación

  2. Haz clic en el nombre de la canalización seleccionada.

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

Ejecuta manualmente una canalización implementada

Cuando ejecutas manualmente una canalización implementada en un programa seleccionado, BigQuery ejecuta la canalización implementada una vez, independientemente del programa.

Para ejecutar manualmente una canalización implementada, sigue estos pasos:

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

    Ir a Programación

  2. Haz clic en el nombre de la programación de la canalización seleccionada.

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

Visualiza todos los programas de canalización

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

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

    Ir a Programación

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

Visualiza los detalles de la programación de la canalización

Para ver los detalles de una programación de canalización 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 Canalizaciones y, luego, selecciona una canalización.

  3. Haz clic en Ver programación.

Página Programación

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

    Ir a Programación

  2. Haz clic en el nombre de la programación de la canalización seleccionada.

Cómo ver las ejecuciones programadas anteriores

Para ver las ejecuciones anteriores de una programación de canalización 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 Canalizaciones y, luego, selecciona una canalización.

  3. Haz clic en Ejecuciones.

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

Página Programación

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

    Ir a Programación

  2. Haz clic en el nombre de la canalización seleccionada.

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

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

Cómo editar una programación de canalización

Para editar la programación de una canalización, 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 Canalizaciones y, luego, selecciona una canalización.

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

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

Página Programación

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

    Ir a Programación

  2. Haz clic en el nombre de la canalización seleccionada.

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

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

  5. En el diálogo Programar canalización, edita la programación y, luego, haz clic en Actualizar programación.

Borra una programación de canalización

Para borrar de forma permanente una programación de la canalización, sigue estos pasos:

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

    Ir a Programación

  2. Elige una de las siguientes opciones:

    • Haz clic en el nombre del programa de canalización seleccionado y, luego, en Borrar en la página Detalles del programa.

    • En la fila que contiene la programación de la canalización 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?