Google Cloud Pub/Sub es un servicio de mensajería en tiempo real completamente administrado que permite enviar y recibir mensajes entre aplicaciones independientes. Usa Cloud Pub/Sub para publicar datos de varias fuentes y suscribirte a ellos. Luego, usa Google Cloud Dataflow para analizarlos, todo en tiempo real.
En este lab, simularás tus datos de sensores de tráfico en un tema de Pub/Sub para, luego, procesarlos con una canalización de Dataflow antes de llegar, finalmente, a una tabla de BigQuery para ahondar en el análisis.
Nota: En el momento en que se redactó este documento, las canalizaciones de transmisión no se encontraban disponibles en el SDK de Dataflow para Python. Por lo tanto, los labs de transmisión están escritos en Java.
Objetivos
En este lab, realizarás las siguientes tareas:
Crear un tema y una suscripción en Pub/Sub
Simular tus datos del sensor de tráfico en Pub/Sub
Configuración
En cada lab, recibirá un proyecto de Google Cloud y un conjunto de recursos nuevos por tiempo limitado y sin costo adicional.
Accede a Qwiklabs desde una ventana de incógnito.
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.
Cuando esté listo, haga clic en Comenzar lab.
Anote las credenciales del lab (el nombre de usuario y la contraseña). Las usarás para acceder a la consola de Google Cloud.
Haga clic en Abrir Google Console.
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.
Acepta las condiciones y omite la página de recursos de recuperación.
Tarea 1. Preparación
Tendrás que ejecutar un simulador del sensor desde la VM de entrenamiento. Se requieren varios archivos, así como configurar algunos ajustes del entorno.
Abre la terminal SSH y conéctate a la VM de entrenamiento
En la consola, abre el menú de navegación () y haz clic en Compute Engine > Instancias de VM.
Ubica la línea que tenga la instancia training-vm.
En el extremo derecho, en Conectar, haz clic en SSH para abrir una ventana de la terminal.
En este lab, ingresarás comandos de la CLI en training-vm.
Verifica que se haya completado la inicialización
La instancia training-vm está instalando software en segundo plano. Revisa el contenido del directorio nuevo para verificar que la configuración esté completa.
ls /training
La configuración estará completa cuando el resultado de tu comando list (ls) aparezca como en la siguiente imagen. Si no aparece la lista completa, espera unos minutos y vuelve a intentarlo. Nota: Es posible que todas las acciones en segundo plano tarden entre 2 y 3 minutos en completarse.
Descarga el repositorio de código
A continuación, descargarás un repositorio de código que usarás en este lab:
Una variable de entorno que configurarás es $DEVSHELL_PROJECT_ID, que contiene el ID del proyecto de Google Cloud requerido para acceder a los recursos facturables.
En la consola, en el menú de navegación (), haz clic en Página principal. Encontrarás el ID de proyecto en el panel Información del proyecto. También puedes encontrar esta información en la pestaña Qwiklabs, en Detalles de la conexión, donde aparecerá como ID del proyecto de Google Cloud.
En la terminal SSH de training_vm, configura la variable de entorno DEVSHELL_PROJECT_ID y expórtala para que esté disponible para otras shells. El siguiente comando obtiene el ID del proyecto activo desde el entorno de Google Cloud:
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear un tema y una suscripción de Pub/Sub
En la terminal SSH training-vm, cancela tu suscripción:
gcloud pubsub subscriptions delete mySub1
Tarea 3. Simula los datos del sensor de tráfico en Pub/Sub
Explora la secuencia de comandos de Python para simular los datos del sensor de tráfico de San Diego. No realices cambios en el código.
cd ~/training-data-analyst/courses/streaming/publish
nano send_sensor_data.py
Observa la función simular. Esta permite que la secuencia de comandos se comporte como si los sensores de tráfico enviaran datos en tiempo real a Pub/Sub. El parámetro speedFactor determina la velocidad de la simulación. Presiona Ctrl + X para salir del archivo.
Descarga el conjunto de datos de la simulación de tráfico:
Para simular datos del sensor, este comando envía datos registrados del sensor a través de mensajes de Pub/Sub. La secuencia de comandos extrae el tiempo original de los datos del sensor y pausa el envío entre cada mensaje para simular el tiempo real en el que se transmiten los datos del sensor. El valor speedFactor cambia el tiempo entre mensajes de forma proporcional. Entonces, un speedFactor de 60 significa "60 veces más rápido" que el tiempo registrado. Enviará cerca de una hora de datos cada 60 segundos.
Deja esta terminal abierta y el simulador ejecutándose.
Tarea 4. Verifica la recepción de mensajes
Abre una segunda terminal SSH y conéctate a la VM de entrenamiento
En la consola, abre el menú de navegación () y haz clic en Compute Engine > Instancias de VM.
Ubica la línea que tenga la instancia training-vm.
En el extremo derecho, en Conectar, haz clic en SSH para abrir una segunda ventana de terminal.
Cambia al directorio en el que estabas trabajando:
cd ~/training-data-analyst/courses/streaming/publish
Crea una suscripción para el tema y extráelo para confirmar que estén ingresando los mensajes (nota: puede que necesites enviar el comando “pull” más de una vez para comenzar a ver mensajes):
Confirma que ves un mensaje con información del sensor de tráfico.
Cancela esta suscripción:
gcloud pubsub subscriptions delete mySub2
Cierra la segunda terminal:
exit
Detén el simulador del sensor
Regresa a la primera terminal.
Presiona Ctrl + C para detener el publicador.
Cierra la primera terminal:
exit
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 2020 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.
Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
.
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.
En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar
Usa la navegación privada
Copia el nombre de usuario y la contraseña proporcionados para el lab
Haz clic en Abrir la consola en modo privado
Accede a la consola
Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
Acepta las condiciones y omite la página de recursos de recuperación
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
Usa una ventana de navegación privada o de Incógnito para ejecutar el 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.
Procesamiento de datos de transmisión: publica datos de transmisión en Pub/Sub
Duración:
1 min de configuración
·
Acceso por 120 min
·
120 min para completar