Instrucciones y requisitos de configuración del lab
Protege tu cuenta y tu progreso. Usa siempre una ventana de navegador privada y las credenciales del lab para ejecutarlo.

Análisis de datos sin servidores con Dataflow: Datos de entrada adicionales (Python)

Lab 1 hora 30 minutos universal_currency_alt 5 créditos show_chart Avanzado
info Es posible que este lab incorpore herramientas de IA para facilitar tu aprendizaje.
Este contenido aún no está optimizado para dispositivos móviles.
Para obtener la mejor experiencia, visítanos en una computadora de escritorio con un vínculo que te enviaremos por correo electrónico.

Descripción general

En este lab, aprenderás a cargar datos en BigQuery y ejecutar consultas complejas. Luego, ejecutarás una canalización de Dataflow que pueda llevar a cabo operaciones Map y Reduce, y utilizarás datos de entrada adicionales y transmisiones en BigQuery.

Objetivo

En este lab, aprenderás a utilizar BigQuery como fuente de datos de Dataflow y a usar los resultados de una canalización como datos de entrada adicionales para otra canalización.

  • Leer datos de BigQuery en Dataflow
  • Utilizar los datos de salida de una canalización como datos de entrada adicionales para otra canalización

Configuración

En cada lab, recibirá un proyecto de Google Cloud y un conjunto de recursos nuevos por tiempo limitado y sin costo adicional.

  1. Accede a Qwiklabs desde una ventana de incógnito.

  2. Ten en cuenta el tiempo de acceso del lab (por ejemplo, 1:15:00) y asegúrate de finalizarlo en el plazo asignado.
    No existe una función de pausa. Si lo necesita, puede reiniciar el lab, pero deberá hacerlo desde el comienzo.

  3. Cuando esté listo, haga clic en Comenzar lab.

  4. Anote las credenciales del lab (el nombre de usuario y la contraseña). Las usarás para acceder a la consola de Google Cloud.

  5. Haga clic en Abrir Google Console.

  6. Haga clic en Usar otra cuenta, copie las credenciales para este lab y péguelas en el mensaje emergente que aparece.
    Si usa otras credenciales, se generarán errores o incurrirá en cargos.

  7. Acepta las condiciones y omite la página de recursos de recuperación.

Verifica los permisos del proyecto

Antes de comenzar a trabajar en Google Cloud, asegúrate de que tu proyecto tenga los permisos correctos en Identity and Access Management (IAM).

  1. En la consola de Google Cloud, en el Menú de navegación (Ícono del menú de navegación), selecciona IAM y administración > IAM.

  2. Confirma que aparezca la cuenta de servicio predeterminada de Compute {número-del-proyecto}-compute@developer.gserviceaccount.com, y que tenga asignado el rol Editor. El prefijo de la cuenta es el número del proyecto, que puedes encontrar en el menú de navegación > Descripción general de Cloud > Panel.

El nombre de la cuenta de servicio predeterminada de Compute Engine y el estado del editor destacados en la página de pestañas Permisos

Nota: Si la cuenta no aparece en IAM o no tiene asignado el rol Editor, sigue los pasos que se indican a continuación para asignar el rol necesario.
  1. En la consola de Google Cloud, en el menú de navegación, haz clic en Descripción general de Cloud > Panel.
  2. Copia el número del proyecto (p. ej., 729328892908).
  3. En el Menú de navegación, selecciona IAM y administración > IAM.
  4. En la parte superior de la tabla de funciones, debajo de Ver por principales, haz clic en Otorgar acceso.
  5. En Principales nuevas, escribe lo siguiente:
{project-number}-compute@developer.gserviceaccount.com
  1. Reemplaza {número-del-proyecto} por el número de tu proyecto.
  2. En Rol, selecciona Proyecto (o Básico) > Editor.
  3. Haz clic en Guardar.

Tarea 1. Preparación

Asigna el rol de Desarrollador de Dataflow

Si la cuenta no tiene el rol de Desarrollador de Dataflow, sigue los pasos que se indican a continuación para asignar el rol necesario.

  1. En el Menú de navegación, haz clic en IAM y administración > IAM.

  2. Selecciona la cuenta de servicio de procesamiento predeterminada {project-number}-compute@developer.gserviceaccount.com.

  3. Selecciona la opción Editar (el lápiz en el extremo derecho).

  4. Haz clic en Agregar otro rol.

  5. Haz clic en la casilla para Selecciona un rol. En el selector Escribe para filtrar, ingresa texto y elige Desarrollador de Dataflow.

  6. Haz clic en Guardar.

Página para editar los permisos

Asegúrate de que la API de Dataflow esté habilitada correctamente

  1. En la barra de título de la consola de Google Cloud, haz clic en Activar Cloud Shell. Si se te solicita, haz clic en Continuar.

  2. Ejecuta los siguientes comandos para asegurarte de que la API de Dataflow esté habilitada correctamente en tu proyecto. Si se te solicita, haz clic en Autorizar:

gcloud services disable dataflow.googleapis.com gcloud services enable dataflow.googleapis.com

Abre la terminal SSH y conéctate a la VM de entrenamiento

Ejecutarás todo el código desde una VM de entrenamiento seleccionada.

  1. En la consola, abre el Menú de navegación (Ícono del menú de navegación) y haz clic en Compute Engine > Instancias de VM.

  2. Ubica la línea que tenga la instancia training-vm.

  3. En el extremo derecho, en Conectar, haz clic en SSH para abrir una ventana de la terminal. Si se te solicita, haz clic en Autorizar.

  4. En este lab, ingresarás comandos de la CLI en training-vm.

Descarga el repositorio de código

  • A continuación, descargarás un repositorio de código que usarás en este lab. En la terminal SSH training-vm, ingresa lo siguiente:
git clone https://github.com/GoogleCloudPlatform/training-data-analyst

Crea un bucket de Cloud Storage

Sigue estas instrucciones para crear un bucket.

  1. En el menú de navegación de la consola, haz clic en Cloud Storage > Buckets.
  2. Haz clic en + Crear.
  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:
Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
Nombre
Tipo de ubicación > Región
  1. Haz clic en Crear.

  2. Si recibes el mensaje Se impedirá el acceso público, selecciona Aplicar la prevención de acceso público a este bucket y haz clic en Confirmar.

  3. En la terminal SSH de training-vm, ingresa lo siguiente para crear tres variables de entorno: Una llamada “BUCKET”, otra llamada “PROJECT” y la última con el nombre “REGION”. Verifica que ambas existan en el comando echo.

BUCKET="{{{project_0.project_id|project_place_holder_text}}}" echo $BUCKET PROJECT="{{{project_0.project_id|project_place_holder_text}}}" echo $PROJECT REGION="{{{project_0.startup_script.gcp_region|region_place_holder_text}}}" echo $REGION

Tarea 2. Utiliza las consultas de BigQuery

  1. En la consola, en el menú de navegación (Ícono del menú de navegación), haz clic en BigQuery.
  2. Si se te solicita, haz clic en Listo.
  3. Haz clic en "+". (Consulta en SQL) y escribe la siguiente consulta:
SELECT content FROM `cloud-training-demos.github_repos.contents_java` LIMIT 10
  1. Haz clic en Ejecutar.

¿Qué se devuelve?

La tabla de BigQuery cloud-training-demos.github_repos.contents_java incluye el contenido (y algunos metadatos) de todos los archivos Java presentes en GitHub en 2016.

  1. Para saber cuántos archivos Java contiene esta tabla, escribe la siguiente consulta y haz clic en Ejecutar:
SELECT COUNT(*) FROM `cloud-training-demos.github_repos.contents_java`

¿Cuántos archivos hay en este conjunto de datos?

¿Deseas procesar este conjunto de datos de manera local o en la nube?

Tarea 3. Explora el código de la canalización

  1. Vuelve a la terminal SSH training-vm, navega al directorio /training-data-analyst/courses/data_analysis/lab2/python y busca el archivo JavaProjectsThatNeedHelp.py.

Visualiza el archivo con Nano. No realices cambios en el código. Presiona Ctrl+X para salir de Nano.

cd ~/training-data-analyst/courses/data_analysis/lab2/python nano JavaProjectsThatNeedHelp.py

Consulta este diagrama a medida que lees el código. La canalización se verá de la siguiente manera:

Diagrama de canalización

  1. Responde las siguientes preguntas:
  • Si se considera la documentación de clase en la parte superior, ¿cuál es el objetivo de esta canalización?
  • ¿De dónde proviene el contenido?
  • ¿Qué hace el lado izquierdo de la canalización?
  • ¿Qué hace el lado derecho de la canalización?
  • ¿Qué hace ToLines? (Pista: Mira el campo Contenido del resultado de BigQuery).
  • ¿Por qué el resultado de ReadFromBQ se almacena en una PCollection en lugar de ir directamente hacia otro paso?
  • ¿Cuáles son las dos acciones llevadas a cabo en la PCollection que se generan a partir de ReadFromBQ?
  • Si un archivo posee 3 FIXME y 2 TODO en su contenido (en líneas diferentes), ¿cuántas llamadas de ayuda están asociadas con esto?
  • Si un archivo se encuentra en el paquete com.google.devtools.build, ¿cuáles son los paquetes con los que se asocia?
  • popular_packages y help_packages son PCollections y se utilizan en el paso Puntuaciones (datos de entrada adicionales) de la canalización. ¿Cuál es el dato de entrada principal y cuál el adicional?
  • ¿Cuál es el método utilizado en el paso Puntuaciones?
  • ¿En qué tipo de datos de Python se convierte el dato de entrada adicional en el paso Puntuaciones?
Nota: La versión de Java de este programa es ligeramente distinta de la versión de Python. El SDK de Java es compatible con AsMap, y el SDK de Python no lo es. En su lugar, es compatible con AsDict. En Java, la PCollection se convierte en una Vista como paso previo a su utilización. En Python, la conversión de la PCollection se produce en el paso de su utilización.

Tarea 4. Ejecuta la canalización

  1. El programa requiere los valores BUCKET, PROJECT y REGION y elegir si deseas ejecutar la canalización localmente con --DirectRunner o en la nube con --DataFlowRunner.

  2. Para ejecutar la canalización de forma local, ingresa lo siguiente en la terminal SSH training-vm:

python3 JavaProjectsThatNeedHelp.py --bucket $BUCKET --project $PROJECT --region $REGION --DirectRunner Nota: Si aparece una advertencia como 'BeamDeprecationWarning', ignórala y continúa.
  1. Una vez que haya finalizado la canalización, en el menú de navegación (Ícono del menú de navegación), haz clic en Cloud Storage > Buckets y, luego, en tu bucket. Encontrarás los resultados en la carpeta javahelp. Haz clic en el objeto Resultado para examinar los datos de salida.

  2. Para ejecutar la canalización en la nube, escribe lo siguiente en la terminal SSH training-vm:

python3 JavaProjectsThatNeedHelp.py --bucket $BUCKET --project $PROJECT --region $REGION --DataFlowRunner Nota: Si aparece una advertencia como 'BeamDeprecationWarning', ignórala y continúa.
  1. Regresa a la pestaña del navegador de Console. En el menú de navegación (Ícono del menú de navegación), haz clic en Ver todos los productos y selecciona Dataflow en la sección Analytics.

  2. Haz clic en tu trabajo para supervisar el progreso.

  3. Una vez que haya finalizado la canalización, en el menú de navegación (Ícono del menú de navegación), haz clic en Cloud Storage > Buckets y, luego, en tu bucket. Encontrarás los resultados en la carpeta javahelp. Haz clic en el objeto Resultado para examinar los datos de salida. El nombre del archivo será el mismo, pero notarás que la fecha de creación es más reciente.

Haz clic en Revisar mi progreso para verificar el objetivo. Ejecutar la canalización

Finalice su lab

Cuando haya completado el lab, haga clic en Finalizar lab. Google Cloud Skills Boost quitará los recursos que usó y limpiará la cuenta.

Tendrá la oportunidad de calificar su experiencia en el lab. Seleccione la cantidad de estrellas que corresponda, ingrese un comentario y haga clic en Enviar.

La cantidad de estrellas indica lo siguiente:

  • 1 estrella = Muy insatisfecho
  • 2 estrellas = Insatisfecho
  • 3 estrellas = Neutral
  • 4 estrellas = Satisfecho
  • 5 estrellas = Muy satisfecho

Puede cerrar el cuadro de diálogo si no desea proporcionar comentarios.

Para enviar comentarios, sugerencias o correcciones, use la pestaña Asistencia.

Copyright 2026 Google LLC. Todos los derechos reservados. Google y el logotipo de Google son marcas de Google LLC. El resto de los nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que están asociados.

Antes de comenzar

  1. Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
  2. .
  3. Los labs tienen un límite de tiempo y no tienen la función de pausa. Si finalizas el lab, deberás reiniciarlo desde el principio.
  4. En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar

Usa la navegación privada

  1. Copia el nombre de usuario y la contraseña proporcionados para el lab
  2. Haz clic en Abrir la consola en modo privado

Accede a la consola

  1. Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
  2. Acepta las condiciones y omite la página de recursos de recuperación
  3. No hagas clic en Finalizar lab, a menos que lo hayas terminado o quieras reiniciarlo, ya que se borrará tu trabajo y se quitará el proyecto

Este contenido no está disponible en este momento

Te enviaremos una notificación por correo electrónico cuando esté disponible

¡Genial!

Nos comunicaremos contigo por correo electrónico si está disponible

Un lab a la vez

Confirma para finalizar todos los labs existentes y comenzar este

Usa la navegación privada para ejecutar el lab

Usar una ventana de incógnito o de navegación privada es la mejor forma de ejecutar este lab. Así evitarás cualquier conflicto entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.