GSP1096
Descripción general
Este lab te brinda experiencia práctica en la implementación de SingleStoreDB y su combinación con productos nativos de la nube de Google Cloud, como Pub/Sub, Dataflow y Cloud Storage. Para demostrar estas funciones del producto, trabajarás con el conjunto de datos públicos de taxis de la ciudad de Nueva York.
El flujo del lab es, primero, implementar SingleStoreDB a través de tu navegador local y crear el esquema adecuado. Luego, usa Pub/Sub para enviar los datos a Cloud Storage en tiempo real con la ayuda de Dataflow. Los datos generados y guardados en el almacenamiento de objetos se consumen con la canalización nativa de SingleStoreDB. Después de que SingleStoreDB transfiera los datos, podrás ejecutar consultas e interactuar con SingleStore.
Qué aprenderás
En este lab, aprenderás a realizar las siguientes tareas:
- Acceder a Google Cloud y navegar en la plataforma
- Crear una instancia o un clúster de SingleStoreDB.
- Usar Cloud Shell para conectarse y crear un esquema en SingleStoreDB
- Crear temas y suscripciones de Pub/Sub, así como extraer y enviar datos a otros servicios
- Crear un trabajo de transmisión de Dataflow
- Usar la canalización nativa de SingleStore para cargar datos desde el almacenamiento de objetos
- Ejecutar consultas e interactuar con tus datos en SingleStore
Requisitos previos
Debes tener acceso a una cuenta de correo electrónico personal en la que puedas responder a un correo electrónico de verificación de SingleStore. Deberás responder a un código de verificación durante este lab, y solo puedes hacerlo con un correo electrónico personal.
Tener conocimientos de Google Cloud y SingleStore es útil, pero no es un requisito.
Configuración y requisitos
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
- Acceso a un navegador de Internet estándar. Se recomienda el navegador Chrome.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
- Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
-
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá un diálogo para que selecciones la forma de pago.
A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
- El botón para abrir la consola de Google Cloud
- El tiempo restante
- Las credenciales temporales que debes usar para el lab
- Otra información para completar el lab, si es necesaria
-
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
-
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}}
También puedes encontrar el nombre de usuario en el panel Detalles del lab.
-
Haz clic en Siguiente.
-
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}}
También puedes encontrar la contraseña en el panel Detalles del lab.
-
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud.
Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
-
Haz clic para avanzar por las páginas siguientes:
- Acepta los Términos y Condiciones.
- No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
- No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Nota: Para acceder a los productos y servicios de Google Cloud, haz clic en el menú de navegación o escribe el nombre del servicio o producto en el campo Buscar.
Tarea 1: Inicia tu propio clúster de SingleStore
En este punto, deberías haber accedido a la consola de Google Cloud en una ventana de incógnito.
- En otra pestaña de la ventana de incógnito que tienes abierta, ve al portal de SingleStore. Deberías ver la siguiente página:
- Haz clic en Sign up y, luego, ingresa tu información.
- En Company email address, ingresa tu dirección de correo electrónico personal.
- Haz clic en Continue.
- Ingresa una contraseña única y haz clic en Continue para acceder a SingleStore.
- Ingresa el código de verificación que recibiste en tu dirección de correo electrónico y haz clic en Send.
- Selecciona la casilla de verificación de Terms of Service + Privacy Policy y haz clic en Continue.
- En la pantalla About your project, selecciona una de las opciones y haz clic en Next.
- Haz clic en View my Deployment para ir al portal de clientes de SingleStore.
- Haz clic en Start Using SingleStore cuando veas el mensaje Your free starter workspace is ready!
Crea el espacio de trabajo
-
En la esquina superior izquierda, haz clic en + Create New y selecciona Deployment.
-
En la página Create Workspace, establece la siguiente configuración:
- Workspace Group Name: Workshop
- Cloud Provider: GCP
- Region: US East 4 (N.Virginia), este debería ser el valor predeterminado; si no lo es, cámbialo.
La configuración debería verse así:

-
Haz clic en Next.
-
En la página Workspace Details, deja la configuración predeterminada y haz clic en Create Workspace.
Espera unos minutos mientras se inicia tu espacio de trabajo. Generará una base de datos de muestra para ti, que no usarás en este lab.
Tarea 2: Conéctate a SingleStore y Google Cloud
-
Antes de conectarte al espacio de trabajo de SingleStore, vuelve a la consola de Google Cloud.
-
Haz clic en el ícono Activar Cloud Shell (
) en la esquina superior derecha de la consola para abrir una nueva ventana de Cloud Shell. Si se te solicita, haz clic en Continuar y, luego, en Autorizar.
-
En Cloud Shell, ejecuta los siguientes comandos para clonar el repositorio de GitHub y descargar el código del taller.
git clone https://github.com/mlochbihler/singlestore-gcp-looker-devday-01
cd singlestore-gcp-looker-devday-01/section_b
- Vuelve al portal de SingleStore. Una vez que se inicialice tu espacio de trabajo, haz clic en la flecha desplegable junto a Connect y selecciona CLI Client.

-
En la página Connect to Workspace, primero copia la contraseña que se generó para ti. Hay un ícono de copiar junto a la contraseña. Es una buena idea almacenar esto en un archivo local porque lo necesitarás más adelante en este lab.
-
Haz clic en el ícono de Copy a la derecha del comando de MySQL. Esta acción copia el comando en el portapapeles.
El comando de MySQL debería ser similar al siguiente: mysql -u admin -h svc-b675ae2f-b129-4baf-86ca-0a03c2c31d19-dml.gcp-virginia-1.svc.singlestore.com -P 3306 --default-auth=mysql_native_password --password
Nota:
Es posible que veas la contraseña que acabas de crear en el comando de MySQL anterior. Esto solo ocurre la primera vez que abres esa ventana. Después, la contraseña ya no se muestra, por lo que es importante guardarla.
Si por algún motivo no puedes conectarte a la base de datos de SingleStore, puedes restablecer tu contraseña en la pestaña Access y hacer clic en Reset.
-
Vuelve a la consola de Google Cloud y a tu instancia de Cloud Shell.
-
Pega el comando de MySQL en la terminal.
-
Si se te solicita, ingresa la contraseña que copiaste anteriormente. Ahora estás en un prompt de mysql>.

Nota:
Si tu implementación deja de responder a los comandos de MySQL, verifica el estado del espacio de trabajo en SingleStore. Está configurado para pausarse si se deja inactivo durante más de 20 minutos. En ese caso, el botón muestra Resume. Haz clic en él para reanudar las operaciones. Este proceso solo debería tardar unos minutos.
Tarea 3: Crea un esquema e interactúa con SingleStore
En esta sección, crearás los esquemas de tablas.
Usa el siguiente DDL para crear una nueva base de datos llamada nyc_taxi.
- En el prompt de mysql>, ejecuta el siguiente código:
source create_nyctaxi_tables.ddl;
use nyc_taxi; show tables;
Deberías obtener un resultado similar al siguiente.
Resultado:
Database changed
+--------------------+
| Tables_in_nyc_taxi |
+--------------------+
| avgcost |
| avgdist |
| avgriders |
| avgridetime |
| avgwait_driver |
| avgwait_passenger |
| drivers |
| nab_nyctaxi_scored |
| neighborhoods |
| trips |
| triptotals |
| triptotalsc |
+--------------------+
12 rows in set (0.05 sec)
Creaste el esquema y se enumeran las tablas de la base de datos.
- Ejecuta el siguiente comando:
select * from avgcost limit 5;
El resultado de esta consulta es "Empty set" o "0". Esto se debe a que solo creaste el esquema y la tabla está vacía.
Hagamos una pausa. Creaste correctamente la base de datos de SingleStore y te conectaste a ella. El esquema está configurado, pero aún no hay datos.
Si tienes tiempo, explora SingleStore.
Tarea 4: Explora los datos en el lab (opcional)
En el lab de hoy, usarás los datos de taxis de la ciudad de Nueva York, que se pueden encontrar en los conjuntos de datos públicos de BigQuery o en el sitio web de NYC Open Data.
Estos datos se colocaron en un bucket de Cloud Storage con anticipación, por lo que no es necesario que los descargues o importes a Google Cloud. Puedes explorar los datos si lo deseas.
El sitio web de NYC Open Data proporciona conjuntos de datos gratuitos relacionados con la ciudad, incluidos datos de taxis, educación, policía y mucho más.
En este lab, trabajarás con las Áreas de tabulación de vecindarios (NTA) del Departamento de Planificación Urbana de la ciudad de Nueva York, que proporcionan información sobre zonas y vecindarios aproximados. Usarás esto junto con los datos de taxis de Nueva York para ver dónde se recogieron y dejaron pasajeros.
En el sitio web, puedes visualizar los datos por zona:
Tarea 5: Configura un bucket de Cloud Storage
- Antes de comenzar esta sección, abre una nueva pestaña de la terminal de Cloud Shell haciendo clic en el botón "+":
En Google Cloud, las dos formas principales de configurar recursos son a través de la GUI y la CLI. En este lab, usarás la CLI para crear el bucket y obtener los datos más recientes de las zonas del sitio web de taxis de Nueva York.
- Copia y ejecuta los siguientes comandos para crear tu propio bucket y, luego, importar los datos de un bucket público a tu bucket:
gcloud storage buckets create gs://$GOOGLE_CLOUD_PROJECT --location={{{ project_0.default_region | "REGION" }}}
gcloud storage cp -r gs://configuring-singlestore-on-gcp/drivers gs://$GOOGLE_CLOUD_PROJECT
gcloud storage cp -r gs://configuring-singlestore-on-gcp/trips gs://$GOOGLE_CLOUD_PROJECT
gcloud storage cp gs://configuring-singlestore-on-gcp/neighborhoods.csv gs://$GOOGLE_CLOUD_PROJECT
Si se te solicita, haz clic en Autorizar.
Observa que ya hay otro bucket creado en tu proyecto. No te preocupes por este bucket, es una ubicación de almacenamiento temporal o de etapa de pruebas para Dataflow.
- Ve a Cloud Storage > Buckets, busca tu bucket () y asegúrate de que contenga 2 carpetas y un archivo CSV, que debería verse así:

Haz clic en Revisar mi progreso para verificar el objetivo.
Configurar el bucket de Cloud Storage
Tarea 6: Configura Pub/Sub y un trabajo de transmisión de Dataflow
Los recursos de Pub/Sub y Dataflow ya se propagaron en tu proyecto. Para verlos, usa el cuadro de búsqueda en la parte superior de la consola de Cloud para encontrar Pub/Sub y Dataflow, respectivamente.
- Para Pub/Sub, haz lo siguiente:
- Comprueba que haya un tema llamado "Taxi".
- Verifica que haya una suscripción llamada "Taxi-sub".
- Para Dataflow, haz lo siguiente:
- Comprueba que haya un trabajo llamado “GCStoPS” con el estado Con errores.
-
Haz clic en el trabajo y, luego, en Clonar para ejecutar una copia de él. Cámbiale el nombre y revisa su información (que ya se propagó previamente porque lo clonaste) para saber qué estás ejecutando. Desplázate hacia abajo y haz clic en Ejecutar trabajo.
-
Vuelve a Trabajos de Dataflow y asegúrate de que tu trabajo tenga el estado "En ejecución".
Nota: Tu trabajo de Dataflow puede tardar entre 5 y 7 minutos en comenzar a transmitir.
- Vuelve a Pub/Sub, busca la suscripción Taxi-sub, haz clic en Mensajes y, luego, en Extracción. Los mensajes deberían empezar a llegar. El resultado debería parecerse a lo siguiente:

Ya simulaste la transmisión de datos en vivo. Como ejemplo, si subieras más datos a GCS y los extrajeras de Pub/Sub, Dataflow los movería en vivo.
Haz clic en Revisar mi progreso para verificar el objetivo.
Clonar el trabajo de Dataflow
Tarea 7: Configura una arquitectura de transmisión en Google Cloud
Una arquitectura de transmisión común en Google Cloud consiste en Pub/Sub > Dataflow > GCS. En esta tarea, configurarás esto y, luego, conectarás SingleStore a GCS.
-
Regresa a Dataflow.
-
Haz clic en Crear trabajo a partir de una plantilla y asígnale el nombre pstogcs (PubSub a GCS).
-
Selecciona el extremo regional como .
-
Selecciona la siguiente plantilla de Dataflow: Pub/Sub Subscription or Topic to Text Files on Cloud Storage. Aparecerán varias opciones, por lo que es posible que debas filtrar para encontrarla.
-
En Destino, haz clic en Explorar y selecciona el bucket que creaste antes, llamado . El resultado de este trabajo debe llegar al bucket que creaste anteriormente en el lab. Haz clic en Seleccionar.
-
Deja el prefijo del nombre del archivo de salida como output. Esto sirve para marcar los archivos de salida con claridad.
-
Expande Parámetros de origen opcionales. En Suscripción de entrada de Pub/Sub, selecciona Taxi-sub, que es la suscripción en la que acabas de ver que ingresaron mensajes. No es necesario incluir el tema de entrada.
-
Deja los valores predeterminados para todo lo demás, ve a la parte inferior de la página y haz clic en EJECUTAR TRABAJO.
Nota:
Si obtienes un error cuando intentas ejecutar el trabajo, verifica si los problemas están en los campos de patrón personalizado para la fecha y la hora. Si ese es el caso, borra los valores de todos esos campos y vuelve a intentarlo.
Este trabajo de Dataflow debería leer los mensajes que viste antes en Pub/Sub y transmitirlos a tu bucket de Cloud Storage.
Nota: Tu trabajo de Dataflow puede tardar entre 5 y 7 minutos en comenzar a transmitir.
-
Ve a Cloud Storage > Buckets y abre tu bucket, . Deberías ver un archivo de salida con marca de tiempo en el bucket.
-
Haz clic en el archivo de salida y selecciona Descargar. Deberías ver datos de taxis que incluyen nombres, coordenadas y horarios.
Haz clic en Revisar mi progreso para verificar el objetivo.
Configurar una arquitectura de transmisión en Google Cloud
Habilita Gemini Code Assist en el IDE de Cloud Shell
Puedes usar Gemini Code Assist en un entorno de desarrollo integrado (IDE) como Cloud Shell para recibir orientación sobre el código o resolver problemas con tu código. Antes de comenzar a usar Gemini Code Assist, debes habilitarlo.
- En Cloud Shell, habilita la API de Gemini for Google Cloud con el siguiente comando:
gcloud services enable cloudaicompanion.googleapis.com
- En la barra de herramientas de Cloud Shell, haz clic en Abrir editor.
Nota: Para abrir el editor de Cloud Shell, haz clic en Abrir editor en la barra de herramientas de Cloud Shell. Para cambiar entre Cloud Shell y el editor de código, haz clic en Abrir editor o Abrir terminal, según sea necesario.
-
Haz clic en Cloud Code - Sin proyecto en la barra de estado, en la parte inferior de la pantalla.
-
Autoriza el complemento según las instrucciones. Si no se selecciona un proyecto automáticamente, haz clic en Seleccionar un proyecto de Google Cloud y elige .
-
Verifica que tu proyecto de Google Cloud () se muestre en el mensaje de la barra de estado de Cloud Code.
Conecta Cloud Storage a SingleStore
Ahora, debes crear una clave para conectar este bucket privado de Cloud Storage a SingleStore.
-
En Cloud Storage, ve a Configuración (en el menú de navegación).
-
Haz clic en la pestaña Interoperabilidad. En la parte inferior, haz clic en Crear una clave.
A continuación, transferirás datos a SingleStore con canalizaciones y ejecutarás un procedimiento almacenado.
- Vuelve a la pestaña de Cloud Shell con la terminal de SingleStore abierta.
-
Para crear canalizaciones iniciales de SingleStore, haz lo siguiente:
- En la primera pestaña de Cloud Shell, haz clic en Abrir editor. Si se te solicita, haz clic en Abrir en una nueva ventana.
- Abre el archivo singlestore-gcp-looker-devday-01 > section b > create_nyctaxi_pipelines.dml.
Esta acción habilita Gemini Code Assist, como lo indica la presencia del ícono
en la esquina superior derecha del editor.
Usa Gemini Code Assist para obtener información sobre un archivo de canalización de SingleStore
-
Haz clic en el ícono de Gemini Code Assist: Smart Actions
y selecciona Explain this.
-
Gemini Code Assist abre un panel de chat con la instrucción Explain this completada previamente. En el cuadro de texto intercalado del chat de Code Assist, reemplaza la instrucción completada previamente por lo siguiente y haz clic en Enviar:
You are an expert Data Engineer at Cymbal AI. A new team member is unfamiliar with this SingleStore Pipelines code. Explain this "create_nyctaxi_pipelines.dml" file in detail, breaking down its key components used in the code.
For the suggested improvements, don't update this file.
La explicación del código en el archivo create_nyctaxi_pipelines.dml aparece en el chat de Gemini Code Assist.
- Realiza las siguientes actualizaciones en el archivo:
- En la línea 4, cambia el nombre del bucket por el nombre del tuyo.
- En la línea 5, agrega el ID de acceso al bucket de almacenamiento y la clave secreta que acabas de crear.
- En la línea 12, cambia el nombre del bucket por el nombre del tuyo.
- En la línea 13, agrega el ID de acceso al bucket de almacenamiento y la clave secreta que acabas de crear.
- En la línea 22, cambia el nombre del bucket por el tuyo y
.tsv por .csv.
- En la línea 23, agrega el ID de acceso al bucket de Storage y la clave secreta que acabas de crear.
- En la línea 26, cambia
/t por ,.
Tu archivo debería ser similar al siguiente:

- Haz clic en Save.
-
Regresa a la terminal Cloud Shell. Conéctate a SingleStore con el comando de MySQL que usaste antes. Puedes usar el mismo comando que ya usaste para hacerlo.
-
En el cuadro de MySQL, ejecuta el siguiente comando para crear las canalizaciones:
source create_nyctaxi_pipelines.dml;
show pipelines;
El resultado debe parecerse al siguiente.
Resultado:
| Pipelines_in_nyc_taxi | State | Scheduled |
| --------------------- | ------- | --------- |
| neighborhoods | Stopped | False |
| drivers | Stopped | False |
| trips | Stopped | False |
Tarea 8: Inicia las canalizaciones
- Ejecuta los siguientes comandos para iniciar las canalizaciones:
source start_nyctaxi_pipelines.dml;
show pipelines;
Resultado:
| Pipelines_in_nyc_taxi | State | Scheduled |
| --------------------- | ------- | --------- |
| neighborhoods | Running | False |
| drivers | Running | False |
| trips | Running | False |
- Asegúrate de que el estado de las tres canalizaciones sea En ejecución.
Tarea 9: Ejecuta consultas analíticas operativas
- Ejecuta los siguientes comandos para ejecutar las consultas de análisis operativo:
select * from trips limit 5;
select * from drivers limit 5;
select * from neighborhoods limit 5;
Informe 1: Cantidad total de viajes de cada zona.
- Luego, ejecuta lo siguiente:
source total_trips.sql;
Informe 2: El tiempo promedio que transcurre desde que alguien solicita un hasta que lo recogen.
- Luego, ejecuta lo siguiente:
source average_wait.sql;
Informe 3: La distancia promedio de un viaje.
- Ejecuta lo siguiente:
source average_distance.sql;
Informe 4: El tiempo promedio que transcurre desde que se recoge a una persona hasta que se la deja en su destino.
- Ejecuta lo siguiente:
source average_ride_time.sql;
Informe 5: El costo promedio de un viaje.
- Ejecuta lo siguiente:
source average_cost.sql;
Informe 6: El tiempo promedio que transcurre desde que un conductor acepta un viaje hasta que recoge al pasajero.
- Ejecuta lo siguiente:
source average_wait2.sql;
Informe 7: La cantidad promedio de pasajeros por viaje.
- Por último, ejecuta lo siguiente:
source average_num_riders.sql;
¡Felicitaciones!
¡Felicitaciones! En este lab, implementaste SingleStoreDB y lo combinaste con productos nativos de la nube de Google Cloud, como Pub/Sub, Dataflow y Cloud Storage. También usaste la canalización nativa de SingleStoreDB para transferir datos desde Cloud Storage y ejecutar consultas analíticas operativas.
Puedes obtener más información sobre SingleStore en SingleStore.com.
Capacitación y certificación de Google Cloud
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Actualización más reciente del manual: 4 de septiembre de 2025
Prueba más reciente del lab: 4 de septiembre de 2025
Copyright 2026 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.