Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you restart it, you'll have to start from the beginning.
- Click Start lab to begin
Create a new dataset
/ 25
Identify a key field in your ecommerce dataset
/ 25
Pitfall: non-unique key
/ 25
Join pitfall solution
/ 25
BigQuery es la base de datos analítica de bajo costo, no-ops y completamente administrada de Google. Con BigQuery, puedes consultar muchos terabytes de datos sin tener que administrar infraestructuras y sin necesitar un administrador de base de datos. BigQuery usa SQL y puede aprovechar el modelo de pago por uso. BigQuery te permite enfocarte en el análisis de datos para buscar estadísticas valiosas.
Unir tablas de datos puede proporcionar estadísticas valiosas sobre tu conjunto de datos. Sin embargo, cuando unes los datos, existen errores comunes que podrían corromper los resultados. Este lab se enfoca en cómo evitar estos errores. Tipos de uniones:
Para obtener más información sobre uniones, consulta la Página de uniones.
Usarás un conjunto de datos de comercio electrónico que tiene millones de registros de Google Analytics para Google Merchandise Store cargados en BigQuery. Tienes una copia de ese conjunto de datos para este lab y explorarás los campos y las filas disponibles para obtener estadísticas.
Para obtener información sobre la sintaxis, que te ayudará a seguir y actualizar las consultas, lee el artículo Sintaxis de consultas en SQL estándar.
En este lab, aprenderás a realizar las siguientes tareas:
Lee estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, 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:
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:
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: Ordene las pestañas en ventanas separadas, una junto a la otra.
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
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.
También puedes encontrar la contraseña en el panel Detalles del lab.
Haz clic en Siguiente.
Haga clic para avanzar por las páginas siguientes:
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
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.
Se abrirá la consola de BigQuery.
En tu proyecto de BigQuery, crea un nuevo conjunto de datos llamado ecommerce
.
Se abrirá el diálogo Crear conjunto de datos.
Define el ID del conjunto de datos en ecommerce
.
Deja las otras opciones con sus valores predeterminados y haz clic en Crear conjunto de datos.
En el panel izquierdo, puedes ver una tabla ecommerce
en la lista debajo de tu proyecto.
Haz clic en Revisar mi progreso para verificar el objetivo.
Situación: Tu equipo te proporciona un conjunto de datos nuevo sobre los niveles de inventario para cada uno de tus productos en venta en tu sitio web de comercio electrónico. Recomendamos que te familiarices con los productos del sitio web y con los campos que podrías usar para unirlos a otros conjuntos de datos.
El proyecto que contiene el nuevo conjunto de datos es data-to-insights.
Se abrirá el cuadro de mensaje de bienvenida a BigQuery en la consola de Cloud.
Haz clic en Listo.
Los conjuntos de datos públicos de BigQuery no se muestran de forma predeterminada. Para abrir el proyecto de conjuntos de datos públicos, copia data-to-insights.
Haz clic en + Agregar > Destaca un proyecto por nombre y, luego, pega el nombre data-to-insights.
Haz clic en Destacar.
El proyecto data-to-insights
aparecerá en la sección Explorador.
A continuación, explora los productos y campos del sitio web que puedes usar para crear consultas y analizar el conjunto de datos.
En la sección Recursos del panel de la izquierda, navega a data-to-insights
> ecommerce
> all_sessions_raw
.
A la derecha, debajo del Editor de consultas, haz clic en la pestaña Esquema para ver los Campos y la información de cada campo.
Realiza un análisis más detallado de los productos y los campos. Recomendamos que te familiarices con los productos del sitio web y con los campos que podrías usar para unirlos a otros conjuntos de datos.
En esta sección, descubrirás cuántos nombres y SKU de productos hay en tu sitio web y si alguno de esos campos es único.
Observa los resultados de paginación en la consola para conocer la cantidad total de registros que se devolvieron.
Pero ¿los resultados implican que hay muchos SKU de productos únicos? Como analista de datos, una de las primeras consultas que ejecutarás será para determinar la unicidad de los valores de datos.
DISTINCT
:Ahora, determina qué productos tienen más de un SKU y qué SKU tienen más de un nombre de producto.
Resultados:
El catálogo del sitio web de comercio electrónico indica que cada nombre de producto puede tener varias opciones (como de tamaño y color) que se venden como SKU diferentes.
Ya vimos el caso de 1 producto con 12 SKU. ¿Qué sucede en el caso de 1 SKU? ¿Puede asignarse a más de 1 producto?
En la siguiente sección, verás por qué esta relación de datos de varios a varios puede convertirse en un problema.
Haz clic en Revisar mi progreso para verificar el objetivo.
Para el seguimiento del inventario, un SKU está pensado para identificar de manera inequívoca a cada uno de los productos. Para nosotros, será la base de tu condición de UNIÓN cuando busques información de otras tablas. Tener una clave que no es única puede provocar graves problemas de datos, como verás a continuación.
"GGOEGPJC019099"
.Solución posible:
v2ProductName |
productSKU |
7" Dog Frisbee |
GGOEGPJC019099 |
7" Dog Frisbee |
GGOEGPJC019099 |
Google 7-inch Dog Flying Disc Blue |
GGOEGPJC019099 |
A partir de los resultados de la consulta, parece que hay tres nombres diferentes para el mismo producto. En este ejemplo, hay un carácter especial en un nombre y un nombre apenas diferente para otro:
Ahora, observa el impacto que produce unir un conjunto de datos con varios productos para un único SKU. Primero, explora el conjunto de datos del inventario de productos (la tabla products
) para ver si este SKU es único allí.
Ahora tienes dos conjuntos de datos: uno para el nivel de stock del inventario y otro para nuestras estadísticas del sitio web. UNE el conjunto de datos del inventario a los nombres de producto de tu sitio web y a los SKU, de manera que puedas asociar el nivel de stock del inventario con cada producto a la venta en el sitio web.
Ahora, expande la consulta anterior para SUMAR el inventario disponible por producto.
¡Vaya! Es 154 x 3 = 462 o el triple del inventario. Esto se conoce como una unión cruzada accidental (un tema que volveremos a revisar más adelante).
Haz clic en Revisar mi progreso para verificar el objetivo.
¿Cuáles son las opciones para resolver tu dilema de recuento triple? Primero, solo debes seleccionar SKU distintos del sitio web antes de unirlos a otras bases de datos.
Sabes que puede haber más de un nombre de producto (como 7" Dog Frisbee) que compartan el mismo SKU.
Ahora, en lugar de tener una fila para cada nombre de producto, solo tendrás una fila para cada SKU único.
Ahora está todo listo para que unas tu conjunto de datos de inventario de productos de nuevo.
Parece que se perdieron 819 SKU después de unir los conjuntos de datos. Para investigar esta pérdida, agrega más especificidad en tus campos (una columna de SKU para cada conjunto de datos):
Parece que los SKU están presentes en ambos conjuntos de datos después de la unión de estos 1,090 registros. ¿Cómo puedes encontrar los registros que faltan?
El tipo de instrucción JOIN predeterminado es una INNER JOIN que devuelve registros solo si hay una coincidencia de SKU en las tablas unidas de la izquierda y de la derecha.
Solución posible:
Usaste correctamente LEFT JOIN para devolver los 1,909 SKU de sitio web originales en tus resultados.
¿Cuántos SKU faltan del conjunto del inventario de productos?
Solución posible:
Pregunta: ¿Cuántos productos faltan?
Respuesta: Faltan 819 productos (EL SKU ES NULL) en el conjunto de datos del inventario.
Ahora, ¿qué sucede en la situación inversa? ¿Hay productos del conjunto de datos del inventario de productos que no aparecen en el sitio web?
Solución posible:
Respuesta: Sí. Hay dos SKU de producto que no están en el conjunto de datos del sitio web.
A continuación, agrega más campos del conjunto de datos del inventario de productos para obtener más detalles.
¿Por qué faltarían los siguientes productos del conjunto de datos del sitio web de comercio electrónico?
website_SKU |
SKU |
name |
orderedQuantity |
stockLevel |
restockingLeadTime |
sentimentScore |
sentimentMagnitude |
null |
GGOBJGOWUSG69402 |
USB wired soundbar - in store only |
10 |
15 |
2 |
1.0 |
1.0 |
null |
GGADFBSBKS42347 |
PC gaming speakers |
0 |
100 |
1 |
null |
null |
Respuestas posibles:
¿Por qué el producto nuevo no se mostraría en tu conjunto de datos del sitio web?
¿Qué tal si quisieras realizar una consulta que enumere todos los productos que falten, ya sea del sitio web o del inventario?
Solución posible:
Tienes 819 + 2 = 821 SKU de productos.
LEFT JOIN + RIGHT JOIN = FULL JOIN, que devuelve todos los registros de ambas tablas, sin importar que coincidan las claves de unión. Luego, filtra todos los lugares donde no haya coincidencia de cada lado.
No conocer la relación entre las claves de tabla de datos (1:1, 1:N, N:N) puede devolver resultados inesperados y reducir de manera significativa el rendimiento de las consultas.
El último tipo de unión es CROSS JOIN.
Crea una tabla nueva con un porcentaje de descuento en todo el sitio que quieras aplicar a todos los productos de la categoría “Liquidación”.
En el panel de la izquierda, site_wide_promotion
ahora aparece en la sección Resource debajo de tu proyecto y conjunto de datos.
Observa el impacto de agregar de manera accidental más de un registro a la tabla de descuentos.
Ahora, observa los valores de datos de la tabla de promoción.
¿Cuántos registros se devolvieron?
Respuesta: 3
¿Qué ocurre cuando aplicas de nuevo el descuento en los 82 productos en liquidación?
¿Cuántos productos se devuelven?
Respuesta: En lugar de 82, ahora se devuelven 246, que es una cantidad mayor de registros que los que tenía la tabla original con la que comenzaste.
Investiguemos la causa subyacente examinando el SKU de un producto.
¿Cuál es el impacto de CROSS JOIN?
Respuesta: Ya que hay 3 códigos de descuento para unir de manera cruzada, estás multiplicando el conjunto de datos original por 3.
La solución es conocer las relaciones de tus datos antes de hacer la unión y no suponer que las claves son únicas.
Haz clic en Revisar mi progreso para verificar el objetivo.
Completaste este lab y resolviste algunos errores graves de uniones SQL. Para ello, identificaste los registros duplicados y aprendiste cuándo usar cada tipo de UNIÓN. Buen trabajo.
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.
Última actualización del manual: 3 de febrero de 2024
Prueba más reciente del lab: 20 de septiembre de 2023
Copyright 2025 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.