arrow_back

Introducción a SQL para BigQuery y Cloud SQL

Unirse Acceder

Introducción a SQL para BigQuery y Cloud SQL

1 hora 15 minutos Gratis

GSP281

Labs de autoaprendizaje de Google Cloud

Descripción general

SQL (Structured Query Language) es un lenguaje estándar para operaciones de datos que permite hacer preguntas y obtener estadísticas a partir de conjuntos de datos estructurados. Es de uso general en la administración de bases de datos y le permite realizar tareas como escribir registros de transacciones en bases de datos relacionales y análisis de datos a escala de petabytes.

Este lab sirve como una introducción a SQL y está diseñado con el fin de prepararlo para los diversos labs y Quests en Google Cloud Skills Boost sobre temas relacionados con la ciencia de datos. Está dividido en dos partes. En la primera parte, aprenderá palabras clave esenciales para formular consultas en SQL, las cuales ejecutará en la consola de BigQuery con un conjunto de datos públicos que contiene información acerca de los sistemas de bicicletas compartidas de Londres.

En la segunda parte, aprenderá a exportar subconjuntos del conjunto de datos de los sistemas de bicicletas compartidas de Londres a archivos CSV, que posteriormente subirá a Cloud SQL. Luego, aprenderá a usar Cloud SQL para crear y administrar tablas y bases de datos. Al final, adquirirá práctica con palabras clave de SQL adicionales que permiten manipular y editar datos.

Qué aprenderá

En este lab, aprenderá a hacer lo siguiente:

  • Distinguir bases de datos de tablas y proyectos
  • Usar las palabras clave SELECT, FROM y WHERE para crear consultas sencillas
  • Identificar los diferentes componentes y jerarquías dentro de la consola de BigQuery
  • Cargar tablas y bases de datos en BigQuery
  • Ejecutar consultas sencillas sobre tablas
  • Obtener información sobre las palabras clave COUNT, GROUP BY, AS y ORDER BY
  • Ejecutar y encadenar los comandos mencionados para extraer información significativa de los conjuntos de datos
  • Exportar un subconjunto de datos a un archivo CSV y almacenarlo en un bucket nuevo de Cloud Storage
  • Crear una instancia de Cloud SQL nueva y cargar su archivo CSV exportado como una tabla nueva
  • Ejecutar consultas de CREATE DATABASE, CREATE TABLE, DELETE, INSERT INTO y UNION en Cloud SQL

Requisitos previos

Muy importante: Antes de comenzar este lab, salga de su cuenta de Gmail personal o corporativa.

Este es un lab de nivel introductorio. Parte de la suposición de que el alumno tiene escasa o nula experiencia en el uso de SQL. Se recomienda tener conocimientos de Cloud Storage y Cloud Shell, pero no es obligatorio. En este lab, aprenderá los conceptos básicos de leer y escribir consultas en SQL, y los aplicará para usar BigQuery y Cloud SQL.

Antes de realizar este lab, considere su nivel de competencia en SQL. A continuación, encontrará labs más desafiantes que le permitirán aplicar sus conocimientos a casos de uso más avanzados:

Cuando esté listo, desplácese hacia abajo y siga los pasos que se muestran a continuación para configurar el entorno de su lab.

Configuración y requisitos

Antes de hacer clic en el botón Comenzar lab

Lea estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando hace clic en Comenzar lab, indica por cuánto tiempo tendrá a su disposición los recursos de Google Cloud.

Este lab práctico de Qwiklabs le permitirá llevar a cabo las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, le proporciona credenciales temporales nuevas que utilizará para acceder a Google Cloud durante todo el lab.

Qué necesita

Para completar este lab, necesitará lo siguiente:

  • Acceso a un navegador de Internet estándar (se recomienda el navegador Chrome)
  • Tiempo para completar el lab

Nota: Si ya tiene un proyecto o una cuenta personal de Google Cloud, no los use para este lab.

Nota: Si usa un dispositivo con Chrome OS, ejecute este lab en una ventana de incógnito.

Cómo iniciar su lab y acceder a la consola de Google Cloud

  1. Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su forma de pago. A la izquierda, se encuentra el panel Detalles del lab que tiene estos elementos:

    • El botón Abrir la consola de Google
    • Tiempo restante
    • Las credenciales temporales que debe usar para el lab
    • Otra información para completar el lab, si es necesaria
  2. Haga clic en Abrir la consola de Google. El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.

    Sugerencia: Ordene las pestañas en ventanas separadas, una junto a la otra.

    Nota: Si ve el diálogo Elegir una cuenta, haga clic en Usar otra cuenta.
  3. Si es necesario, copie el nombre de usuario del panel Detalles del lab y péguelo en el cuadro de diálogo Acceder. Haga clic en Siguiente.

  4. Copie la contraseña del panel Detalles del lab y péguela en el cuadro de diálogo de bienvenida. Haga clic en Siguiente.

    Importante: Debe usar las credenciales del panel de la izquierda. No use sus credenciales de Google Cloud Skills Boost. Nota: Usar su propia Cuenta de Google podría generar cargos adicionales.
  5. Haga clic para avanzar por las páginas siguientes:

    • Acepte los términos y condiciones.
    • No agregue opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
    • No se registre para obtener pruebas gratuitas.

Después de un momento, se abrirá la consola de Cloud en esta pestaña.

Nota: Para ver el menú con una lista de los productos y servicios de Google Cloud, haga clic en el Menú de navegación que se encuentra en la parte superior izquierda de la pantalla. Ícono del menú de navegación

Tarea 1: Cree una instancia de Cloud SQL

En la consola, seleccione Menú de navegación > SQL.

  1. Haga clic en CREAR INSTANCIA > Elija MySQL.

  2. En el ID de instancia, escriba qwiklabs-demo.

  3. En el campo Contraseña, ingrese una contraseña segura (es importante que la recuerde).

  4. Seleccione la versión de base de datos MySQL 5.7.

  5. Establezca el campo de Multi zonas (Con alta disponibilidad) en

  6. Haga clic en CREAR INSTANCIA.

Nota: Es posible que la instancia tarde algunos minutos en crearse. Cuando se cree, verá una marca de verificación verde al lado del nombre de la instancia.

Mientras tanto, puede pasar a la siguiente sección y aprender los conceptos básicos de SQL.

Tarea 2: Conceptos básicos de SQL

Tablas y bases de datos

Como se mencionó antes, SQL le permite obtener información de "conjuntos de datos estructurados". Estos cuentan con reglas y formatos claros y, a menudo, están organizados en tablas: datos organizados en filas y columnas.

Un ejemplo de datos no estructurados sería un archivo de imagen. Los datos no estructurados no pueden operarse con SQL ni tampoco pueden almacenarse en los conjuntos de datos o tablas de BigQuery (al menos de forma nativa). Para trabajar con datos de imágenes, por ejemplo, debería usar un servicio como Cloud Vision, quizá directamente a través de su API.

El siguiente es un ejemplo de un conjunto de datos estructurados, una tabla sencilla:

User

Price

Shipped

Sean

$35

Yes

Rocky

$50

No

Si está familiarizado con Hojas de cálculo de Google, entonces el ejemplo anterior debería verse bastante similar. Como podemos ver, la tabla tiene las columnas User, Price y Shipped, además de dos filas en las que se encuentran los valores de columna ingresados.

Una base de datos es básicamente una colección de una o más tablas. SQL es una herramienta de administración de bases de datos estructurados, pero con frecuencia (y en este lab) se usa para ejecutar consultas en una o varias tablas unidas, no en bases de datos completas.

SELECT y FROM

SQL es fonético por naturaleza, de modo que, antes de ejecutar una consulta, siempre es útil pensar primero qué pregunta queremos responder con los datos (a menos que solo estemos explorando por curiosidad).

SQL tiene palabras clave predefinidas que se usan para traducir una pregunta a la sintaxis en seudoinglés de SQL, de modo que pueda hacer que el motor de base de datos muestre la respuesta que desea.

Las palabras clave más importantes son SELECT y FROM:

  • Use SELECT para especificar qué campos desea extraer de su conjunto de datos.
  • Use FROM para especificar de qué tabla o tablas desea extraer los datos.

Podrá entenderlo mejor con un ejemplo. Supongamos que tenemos la siguiente tabla, llamada example_table, que tiene columnas identificadas como USER, PRICE y SHIPPED:

Tabla de ejemplo

Digamos que solo queremos extraer los datos que se encuentran en la columna USER. Para hacerlo, podemos ejecutar la siguiente consulta que usa SELECT y FROM:

SELECT USER FROM example_table

Si ejecutamos el comando anterior, seleccionaremos todos los nombres de la columna USER en example_table.

También puede seleccionar varias columnas con la palabra clave SELECT de SQL. Supongamos que quiere extraer los datos que se encuentran en las columnas USER y SHIPPED. Para ello, modifique la consulta anterior agregando otro valor de columna a nuestra consulta SELECT (asegúrese de que esté separado por una coma):

SELECT USER, SHIPPED FROM example_table

Si ejecuta lo anterior, recuperará los datos de USER y SHIPPED de la memoria:

Tabla de ejemplo

Con estos ejemplos, ya está familiarizado con dos palabras clave importantes de SQL. Ahora, hagamos todo un poco más interesante.

WHERE

La palabra clave WHERE es otro comando de SQL que filtra tablas según valores de columna específicos. Supongamos que desea extraer los nombres de example_table cuyos paquetes fueron enviados. Puede complementar la consulta con WHERE, como en el siguiente ejemplo:

SELECT USER FROM example_table WHERE SHIPPED='YES'

Ejecutar esa consulta mostrará todos los usuarios (USER) cuyos paquetes les fueron enviados (SHIPPED) desde la memoria:

Tabla de ejemplo

Ahora que cuenta con una comprensión básica de las palabras clave principales de SQL, aplicará lo que aprendió mediante la ejecución de estos tipos de consultas en la consola de BigQuery.

Ponga a prueba sus conocimientos

Las siguientes son algunas preguntas de opción múltiple para reforzar sus conocimientos de los conceptos que vimos hasta ahora. Trate de responderlas lo mejor posible.

Tarea 3: Explore la consola de BigQuery

El paradigma de BigQuery

BigQuery es un almacén de datos a escala de petabytes completamente administrado que se ejecuta en Google Cloud. Los analistas y científicos de datos pueden consultar y filtrar rápidamente grandes conjuntos de datos, agregar resultados y realizar operaciones complejas sin tener que preocuparse por configurar y administrar servidores. Se presenta como una herramienta de línea de comandos (preinstalada en Cloud Shell) o una consola web; en ambos casos, viene lista para administrar y consultar datos alojados en proyectos de Google Cloud.

En este lab, usará la consola web para ejecutar consultas en SQL.

Cómo abrir la consola de BigQuery

  1. En la consola de Google Cloud, seleccione elmenú de navegación > BigQuery.

Se abrirá el cuadro de mensaje Te damos la bienvenida a BigQuery en la consola de Cloud. Este cuadro de mensaje contiene un vínculo a la guía de inicio rápido y las notas de la versión.

  1. Haga clic en Listo.

Se abrirá la consola de BigQuery.

Dedique un momento a observar algunas características importantes de la IU. En el lado derecho de la consola, se encuentra el "Editor" de consultas. Aquí es donde se escriben y ejecutan comandos de SQL, como los de los ejemplos que explicamos anteriormente. Debajo de este, se encuentra el "Historial de consultas", una lista de consultas que ejecutó previamente.

El panel izquierdo de la consola es el panel de navegación. Además de las secciones denominadas Historial de consultas, Historial de trabajos y Consultas guardadas, cuyo significado es evidente, también hay una pestaña llamada Explorador.

El nivel más alto de recursos en la pestaña Explorador contiene proyectos de Google Cloud, que son como los proyectos temporales de Google Cloud a los que accede y que usa en cada lab de Google Cloud Skills Boost. Como puede ver en su consola y en la última captura de pantalla, solo tenemos nuestro proyecto alojado en la pestaña Explorador. Si intenta hacer clic en la flecha junto al nombre del proyecto, no se mostrará nada.

Esto ocurre porque su proyecto no contiene conjuntos de datos ni tablas, por lo que no hay nada que pueda consultarse. Anteriormente, aprendió que los conjuntos de datos contienen tablas. Cuando agregue datos a su proyecto, observe que, en BigQuery, los proyectos contienen conjuntos de datos, y los conjuntos de datos contienen tablas. Ahora que ya comprende mejor el paradigma de proyecto > conjunto de datos > tabla y las particularidades de la consola, puede cargar algunos datos que pueden consultarse.

Suba datos que puedan consultarse

En esta sección, incorporará algunos datos públicos a su proyecto para practicar la ejecución de comandos de SQL en BigQuery.

  1. Haga clic en + AGREGAR DATOS.

  2. Elija Fijar un proyecto > Ingresar nombre del proyecto.

  3. Ingrese el nombre de proyecto como bigquery-public-data

  4. Haga clic en el botón FIJAR.

Es importante destacar que aún no está trabajando en su proyecto de Qwiklabs en esta pestaña nueva. Lo único que hizo fue incorporar a BigQuery un proyecto al que se puede acceder de manera pública y que contiene tablas y conjuntos de datos para su análisis; pero no cambió a ese proyecto. Todos sus trabajos y servicios siguen vinculados a la cuenta de Google Cloud Skills Boost. Puede verlo por usted mismo si revisa el campo de proyecto cerca de la parte superior de la consola:

Campo del proyecto en el que se muestra el nombre del proyecto de Google Cloud Skills Boost

  1. En la barra de búsqueda, escriba London Bicycles Hires y haga clic en VER CONJUNTO DE DATOS.

  2. Ahora, tiene acceso a los siguientes datos:

  • Proyecto de Google Cloud → bigquery-public-data

  • Conjunto de datos → london_bicycles

  1. Haga clic en el conjunto de datos london bicycles para revelar las tablas asociadas.

  • Tabla → cycle_hire
  • Tabla → cycle_stations

En este lab, usaremos los datos de la tabla cycle_hire. Abra la tabla cycle_hire y, luego, haga clic en la pestaña Vista previa. Su página debería verse de la siguiente manera:

tabla cycle_hire, pestaña de vista previa

Revise las columnas y los valores propagados en las filas. Ahora está listo para ejecutar algunas consultas de SQL en la tabla cycle_hire.

Ejecute SELECT, FROM y WHERE en BigQuery

Ya cuenta con conocimientos básicos de las palabras clave de consulta en SQL y del paradigma de datos de BigQuery, así como con algunos datos para trabajar. Ejecute algunos comandos de SQL con este servicio.

Si se fija en la esquina inferior derecha de la consola, notará que hay 24,369,201 filas de datos o viajes individuales en bicicletas compartidas realizados en Londres entre 2015 y 2017 (no es una cifra pequeña en absoluto).

Ahora, tome nota de la clave de la séptima columna, end_station_name, que especifica el destino final de los viajes en bicicletas compartidas. Antes de profundizar más, primero ejecutemos una consulta sencilla para aislar la columna end_station_name.

  1. Copie el siguiente comando y péguelo en el EDITOR de consultas:

SELECT end_station_name FROM `bigquery-public-data.london_bicycles.cycle_hire`;
  1. Luego, haga clic en Ejecutar.

Después de unos 20 segundos, deberían mostrarse 24,369,201 filas que contienen la única columna que solicitó en la consulta: end_station_name.

¿Por qué no averigua cuántos viajes en bicicleta duraron 20 minutos o más?

  1. Borre la consulta del editor y ejecute la siguiente consulta que usa la palabra clave WHERE:

SELECT * FROM `bigquery-public-data.london_bicycles.cycle_hire` WHERE duration>=1200;

Esta consulta puede tardar aproximadamente un minuto en ejecutarse.

SELECT * muestra los valores de todas las columnas de la tabla. La duración se mide en segundos; es por ello que usó el valor 1200 (60 * 20).

Si se fija en la esquina inferior derecha, verá que se mostraron 7,334,890 filas. Como fracción del total (7,334,890/24,369,201), esto significa que aproximadamente el 30% de los viajes en bicicletas compartidas en Londres duraron 20 minutos o más (a estos usuarios sí que les gusta pedalear).

Ponga a prueba sus conocimientos

Las siguientes son algunas preguntas de opción múltiple para reforzar sus conocimientos sobre los conceptos que tratamos hasta ahora. Trate de responderlas lo mejor posible.

Tarea 4: Más palabras clave de SQL: GROUP BY, COUNT, AS y ORDER BY

GROUP BY

La palabra clave GROUP BY agrega filas de un conjunto de resultados que comparten criterios comunes (p. ej., el valor de la columna) y muestra todas las entradas únicas encontradas para esos criterios.

Es una palabra clave útil para averiguar información categórica en las tablas.

  1. Para comprender mejor cómo funciona esta palabra clave, borre la consulta del editor y, luego, copie y pegue el siguiente comando:

SELECT start_station_name FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name;
  1. Haga clic en Ejecutar.

Sus resultados serán una lista de valores de columna únicos (no duplicados).

Sin GROUP BY, la consulta hubiera mostrado las 24,369,201 filas. Con GROUP BY, el resultado son los valores de columna únicos que se encuentran en la tabla. Puede verlo por sí mismo si se fija en la esquina inferior derecha. Notará que hay 880 filas, lo que significa que hay 880 puntos de partida diferentes para las bicicletas compartidas de Londres.

COUNT

La función COUNT() mostrará la cantidad de filas que comparten el mismo criterio (p. ej., el valor de columna). Esto puede resultar muy útil cuando lo utilizamos con GROUP BY.

Agregue la función COUNT a nuestra consulta anterior para averiguar cuántos viajes comienzan en cada punto de partida.

  • Borre la consulta del editor, copie y pegue el siguiente comando y, luego, haga clic en Ejecutar:

SELECT start_station_name, COUNT(*) FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name;

En el resultado se muestra cuántos viajes en bicicletas compartidas comenzaron en cada ubicación de partida.

AS

SQL también cuenta con una palabra clave AS, que crea un alias de una tabla o columna. Un alias es un nombre nuevo que se le da a la columna o tabla que se muestra, según lo que se especifique en AS.

  1. Agregue una palabra clave AS a la última consulta que ejecutamos para verla en acción. Borre la consulta del editor y, luego, copie y pegue el siguiente comando:

SELECT start_station_name, COUNT(*) AS num_starts FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name;
  1. Haga clic en Ejecutar.

Para obtener resultados, el nombre de la columna derecha cambió de COUNT(*) a num_starts.

Como puede ver, la columna COUNT(*) en la tabla que se muestra ahora tiene el nombre de alias num_starts. Esta es una palabra clave práctica, sobre todo si trabaja con grandes conjuntos de datos y olvida que los nombres ambiguos en columnas o tablas suelen ser más comunes de lo que cree.

ORDER BY

La palabra clave ORDER BY ordena los datos resultantes de una consulta de manera ascendente o descendente según el criterio o valor de columna que se especifique. Agregaremos esta palabra clave a nuestra consulta anterior para hacer lo siguiente:

  • Mostrar una tabla que contenga la cantidad de viajes en bicicletas compartidas que comienzan en cada estación de partida, organizada alfabéticamente según la estación
  • Mostrar una tabla que contenga la cantidad de viajes en bicicletas compartidas que comienzan en cada estación de partida, organizada numéricamente de menor a mayor
  • Mostrar una tabla que contenga la cantidad de viajes en bicicletas compartidas que comienzan en cada estación de partida, organizada numéricamente de mayor a menor

Cada uno de los siguientes comandos es una consulta individual. Haga lo siguiente con cada comando:

  1. Borre los datos del EDITOR de consultas.

  2. Copie el comando y péguelo en el EDITOR de consultas:

  3. Haga clic en Ejecutar. Analice los resultados.

SELECT start_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name ORDER BY start_station_name; SELECT start_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name ORDER BY num; SELECT start_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name ORDER BY num DESC;

En los resultados de la última consulta se enumeran las ubicaciones de partida por la cantidad de partidas desde esa ubicación.

Vemos que "Belgrove Street, King's Cross" tiene la mayor cantidad de salidas. Sin embargo, como fracción del total (234,458/24,369,201), observamos que menos del 1% de los viajes comienzan en esa estación.

Ponga a prueba sus conocimientos

Las siguientes son algunas preguntas de opción múltiple para reforzar sus conocimientos sobre los conceptos que tratamos hasta ahora. Trate de responderlas lo mejor posible.

Tarea 5: Trabaje con Cloud SQL

Exporte consultas como archivos CSV

Cloud SQL es un servicio de bases de datos completamente administrado que facilita la configuración, el mantenimiento y la administración de bases de datos relacionales de PostgreSQL y MySQL en la nube. Cloud SQL acepta dos formatos de datos: archivos de volcado (.sql) o archivos CSV (.csv). Aprenderá a exportar subconjuntos de la tabla cycle_hire a archivos CSV y subirlos a Cloud Storage como ubicación intermedia.

Regrese a la consola de BigQuery; el siguiente debería ser el último comando que ejecutó:

SELECT start_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name ORDER BY num DESC;
  1. En la sección Resultados de la consulta, haga clic en GUARDAR RESULTADOS > CSV (archivo local). Esta acción inicia una descarga que guarda la consulta como un archivo CSV. Tome nota de la ubicación y el nombre de este archivo descargado; los necesitará pronto.

  2. Borre el contenido del EDITOR de consultas y, luego, copie y ejecute el siguiente comando allí:

SELECT end_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY end_station_name ORDER BY num DESC;

Esto muestra una tabla que contiene la cantidad de viajes en bicicletas compartidas que terminan en cada estación de llegada, y está organizada de forma numérica desde la cantidad de viajes más alta hasta la más baja.

  1. En la sección Resultados de la consulta, haga clic en GUARDAR RESULTADOS > CSV (archivo local). Esta acción inicia una descarga que guarda la consulta como un archivo CSV. Tome nota de la ubicación y el nombre de este archivo descargado; los necesitará en la sección siguiente.

Suba archivos CSV a Cloud Storage

  1. Vaya a la consola de Cloud, donde creará un bucket de Storage en el que subirá los archivos que acaba de crear.

  2. Seleccione Menú de navegación > Cloud Storage > Navegador y, luego, haga clic en CREAR BUCKET.

Nota: Si se le solicita, haga clic en SALIR en el diálogo Trabajo sin guardar.
  1. Ingrese un nombre único para su bucket, mantenga el resto de la configuración predeterminada y haga clic en Crear:

Pruebe la tarea completada

Haga clic en Revisar mi progreso a continuación para revisar su progreso en el lab. Si creó su bucket correctamente, verá una puntuación de evaluación.

Crear un bucket de Cloud Storage

Ahora debería estar en la consola de Cloud y ver el bucket de Cloud Storage que acaba de crear.

  1. Haga clic en SUBIR ARCHIVOS y seleccione el archivo CSV que contiene datos de start_station_name.

  2. A continuación, haga clic en Abrir. Repita estos pasos para los datos de end_station_name.

  3. Para cambiar el nombre de su archivo start_station_name, haga clic en los tres puntos que aparecen en el extremo del archivo y seleccione Cambiar nombre. Cambie el nombre del archivo a start_station_data.csv.

  4. Para cambiar el nombre de su archivo end_station_name, haga clic en los tres puntos que aparecen en el extremo del archivo y seleccione Cambiar nombre. Cambie el nombre del archivo a end_station_data.csv.

Ahora, debería ver start_station_name.csv y end_station_data.csv en la lista deObjetos en la páginaDetalles del bucket.

Pruebe la tarea completada

Haga clic en Revisar mi progreso para verificar la tarea realizada. Si subió los objetos CSV a su bucket de forma correcta, verá una puntuación de evaluación.

Subir archivos CSV a Cloud Storage

Cree una instancia de Cloud SQL

  1. En la consola, seleccione Menú de navegación > SQL.

  2. Haga clic en CREAR INSTANCIA.

  3. Aquí, se le solicitará que elija un motor de base de datos. Seleccione MySQL.

  4. Ahora ingrese un nombre para la instancia (como “qwiklabs-demo”) y una contraseña segura en el campo Contraseña (es importante que la recuerde). Luego, haga clic en CREAR INSTANCIA:

Es posible que la instancia tarde algunos minutos en crearse. Cuando se cree, verá una marca de verificación verde al lado del nombre de la instancia.

  1. Haga clic en la instancia de Cloud SQL. Se abrirá la página Descripción general de SQL.

Pruebe la tarea completada

Para verificar su progreso en el lab, haga clic en Revisar mi progreso a continuación. Si configuró su instancia de Cloud SQL de forma correcta, verá una puntuación de evaluación.

Crear una instancia de Cloud SQL

Tarea 6: Consultas nuevas en Cloud SQL

Palabra clave CREATE (tablas y bases de datos)

Ahora que ya cuenta con una instancia de Cloud SQL en funcionamiento, cree una base de datos dentro de esta a través de la línea de comandos de Cloud Shell. Copie el vínculo de Cloud Shell que aparece a continuación y péguelo en una nueva pestaña de incógnito del navegador.

https://shell.cloud.google.com/?show=terminal

Cree una base de datos en Cloud Shell

  1. Ejecute el siguiente comando en Cloud Shell a fin de conectarse a su instancia de SQL, pero reemplace qwiklabs-demo si usó un nombre diferente para su instancia:

gcloud sql connect qwiklabs-demo --user=root Nota: La conexión a su instancia puede tardar uno o dos minutos.
  1. Cuando se le solicite, ingrese la contraseña raíz que estableció para la instancia.

Debería ver un resultado similar al siguiente:

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 494 Server version: 5.7.14-google-log (Google) Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>

Una instancia de Cloud SQL incluye bases de datos preconfiguradas, pero usted creará una propia para almacenar los datos del sistema de bicicletas compartidas de Londres.

  1. Ejecute el siguiente comando en el símbolo del sistema del servidor de MySQL para crear una base de datos llamada bike:

CREATE DATABASE bike;

Debería recibir el siguiente resultado:

Query OK, 1 row affected (0.05 sec) mysql>

Pruebe la tarea completada

Haga clic en Revisar mi progreso y verifique la tarea realizada. Si creó correctamente la base de datos en la instancia de Cloud SQL, verá una puntuación de evaluación.

Crear una base de datos

Cree una tabla en Cloud Shell

  1. Ejecute el siguiente comando para crear una tabla dentro de la base de datos de bicicletas:

USE bike; CREATE TABLE london1 (start_station_name VARCHAR(255), num INT);

Esta sentencia usa la palabra clave CREATE, pero esta vez usa la cláusula TABLE para especificar que se desea crear una tabla en lugar de una base de datos. La palabra clave USE especifica una base de datos a la que desea conectarse. Ahora tiene una tabla llamada “london1” que contiene dos columnas: “start_station_name” y “num”. VARCHAR(255) especifica la columna de string de longitud variable que admite hasta 255 caracteres, y el valor INT es una columna de tipo número entero.

  1. Ejecute el siguiente comando para crear otra tabla con el nombre "london2":

USE bike; CREATE TABLE london2 (end_station_name VARCHAR(255), num INT);
  1. Ahora confirme que se crearon sus tablas vacías. Ejecute los siguientes comandos en el símbolo del sistema del servidor MySQL:

SELECT * FROM london1; SELECT * FROM london2;

Debería recibir el siguiente resultado para ambos comandos:

Empty set (0.04 sec)

Aparece “empty set” porque aún no se cargaron datos.

Suba archivos CSV a las tablas

Regrese a la consola de Cloud SQL. Ahora, subirá los archivos CSV start_station_name y end_station_name a sus tablas recién creadas, london1 y london2.

  1. En la página de su instancia de Cloud SQL, haga clic en IMPORTAR.
  2. En el campo de archivos de Cloud Storage, haga clic en Explorar. Luego, haga clic en la flecha que se encuentra opuesta al nombre de su bucket y en start_station_data.csv. A continuación, haga clic en Seleccionar.
  3. Seleccione CSV como el formato de archivo.
  4. Seleccione la base de datos bike y escriba “london1” como su tabla.
  5. Haga clic en Importar:

Haga lo mismo para el otro archivo CSV.

  1. En la página de su instancia de Cloud SQL, haga clic en IMPORTAR.
  2. En el campo de archivos de Cloud Storage, haga clic en Explorar. Luego, haga clic en la flecha que se encuentra opuesta al nombre de su bucket y en end_station_data.csv. A continuación, haga clic en Seleccionar.
  3. Seleccione CSV como el formato de archivo.
  4. Seleccione la base de datos bike y escriba “london2” como su tabla.
  5. Haga clic en Importar:

Los dos archivos CSV deberían haberse subido a las tablas de la base de datos bike.

  1. Regrese a su sesión de Cloud Shell y ejecute el siguiente comando en el símbolo del sistema del servidor MySQL para revisar el contenido de london1:

SELECT * FROM london1;

Debería recibir 881 líneas de resultados, una por cada nombre de estación único.

  1. Ejecute el siguiente comando para asegurarse de que se hayan propagado datos a london2:

SELECT * FROM london2;

Debería recibir 883 líneas de resultados, una por cada nombre de estación único.

Palabra clave DELETE

Estas son algunas palabras clave de SQL más que nos ayudarán con la administración de los datos. La primera es DELETE.

  • Ejecute los siguientes comandos en su sesión de MySQL para borrar la primera fila de las tablas london1 y london2:

DELETE FROM london1 WHERE num=0; DELETE FROM london2 WHERE num=0;

Debería recibir el siguiente resultado después de ejecutar ambos comandos:

Query OK, 1 row affected (0.04 sec)

Las filas que se borraron eran los encabezados de columna de los archivos CSV. La palabra clave DELETE no quitará la primera fila del archivo, sino todas las filas de la tabla en las que el nombre de columna (en este caso, “num”) contenga un valor especificado (en este caso, “0”). Si ejecuta las consultas SELECT * FROM london1; y SELECT * FROM london2;, y se desplaza hacia la parte superior de la tabla, verá que esas filas ya no existen.

Palabra clave INSERT INTO

También puede insertar valores en las tablas con la palabra clave INSERT INTO.

  • Ejecute el siguiente comando para agregar una fila nueva a london1, que configura start_station_name como “test destination” y num como “1”:

INSERT INTO london1 (start_station_name, num) VALUES ("test destination", 1);

La palabra clave INSERT INTO requiere de una tabla (london1) y creará una fila nueva con columnas especificadas por los términos en el primer paréntesis (en este caso, “start_station_name” y “num”). El contenido que aparece después de la cláusula "VALUES" se inserta como valores en la fila nueva.

Debería recibir el siguiente resultado:

Query OK, 1 row affected (0.05 sec)

Si ejecuta la consulta SELECT * FROM london1; verá una fila adicional agregada al final de la tabla “london1”.

Palabra clave UNION

La última palabra clave de SQL que aprenderá es UNION. Esta combina el resultado de dos o más consultas SELECT en un conjunto de resultados. Usará UNION para combinar los subconjuntos de las tablas "london1" y "london2".

La siguiente consulta en cadena extrae datos específicos de ambas tablas y los combina con el operador UNION.

  • Ejecute el siguiente comando en el símbolo del sistema del servidor MySQL:

SELECT start_station_name AS top_stations, num FROM london1 WHERE num>100000 UNION SELECT end_station_name, num FROM london2 WHERE num>100000 ORDER BY top_stations DESC;

La primera consulta SELECT selecciona las dos columnas de la tabla "london1" y crea un alias para "start_station_name", que se establece como "top_stations". Usa la palabra clave WHERE para extraer solo los nombres de las estaciones de transporte compartido en las que comienzan su recorrido más de 100,000 bicicletas.

La segunda consulta SELECT selecciona las dos columnas de la tabla "london2" y usa la palabra clave WHERE para extraer solamente los nombres de las estaciones de transporte compartido en las que terminan su recorrido más de 100,000 bicicletas.

La palabra clave UNION en el medio combina el resultado de estas consultas integrando los datos de "london2" con "london1". Puesto que “london1” se está uniendo con “london2”, los valores de columna que tendrán precedencia son “top_stations” y “num”.

ORDER BY ordenará alfabéticamente la tabla unida final según el valor de columna "top_stations", en orden descendente.

Debería recibir el siguiente resultado:

Tabla resultante con columnas top_stations y num

Como puede ver, hay 13 o 14 estaciones que comparten los primeros puestos como punto de partida y llegada para el transporte compartido. Con algunas palabras clave básicas de SQL pudo realizar consultas a un conjunto de datos considerable, que mostró como resultado datos y respuestas a preguntas específicas.

¡Felicitaciones!

En este lab, aprendió los conceptos básicos de SQL y cómo puede aplicar palabras clave y ejecutar consultas en BigQuery y Cloud SQL. Aprendió los conceptos principales detrás de los proyectos, las bases de datos y las tablas. Practicó el uso de palabras clave para manipular y editar datos. Aprendió a cargar conjuntos de datos en BigQuery y practicó la ejecución de consultas en tablas. Además, aprendió cómo crear instancias en Cloud SQL y practicó la transferencia de subconjuntos de datos a tablas contenidas en bases de datos. Encadenó y ejecutó consultas en Cloud SQL para llegar a algunas conclusiones interesantes sobre las estaciones de partida y llegada del sistema de bicicletas compartidas de Londres.

Finalice su Quest

Este lab de autoaprendizaje forma parte de las Quests de Data Science on Google Cloud, Scientific Data Processing, Cloud SQL, BigQuery Basics for Data Analysts, NCAA® March Madness®: Bracketology with Google Cloud, Cloud Engineering, Data Catalog Fundamentals y Applying BQML's Classification, Regression, and Demand Forecasting for Retail Applications. Una Quest es una serie de labs relacionados que forman una ruta de aprendizaje. Si completa esta Quest, obtendrá una insignia como reconocimiento por su logro. Puede hacer públicas sus insignias y agregar vínculos a ellas en su currículum en línea o en sus cuentas de redes sociales. Inscríbase en cualquier Quest que contenga este lab y obtenga un crédito inmediato de finalización. Consulte el catálogo de Google Cloud Skills Boost para ver todas las Quests disponibles.

Próximos pasos/Más información

Continúe aprendiendo y practicando con Cloud SQL y BigQuery con estos labs de Google Cloud Skills Boost:

Obtenga más información relacionada con la Ciencia de datos con el libro Data Science on the Google Cloud Platform, 2nd Edition: O'Reilly Media, Inc..

Google Cloud Training & Certification

Aproveche al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarlo a ponerse en marcha rápidamente y a seguir aprendiendo. Para que pueda realizar nuestros cursos cuando más le convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: según demanda, presenciales y virtuales. Las certificaciones lo ayudan a validar y demostrar sus habilidades y experiencia en las tecnologías de Google Cloud.

Última actualización del manual: 25 de julio de 2022

Prueba más reciente del lab: 25 de julio de 2022

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.