1. Introducción
Imagina poder preparar tus datos para el análisis de forma más rápida y eficiente sin necesidad de ser un experto en programación. Con BigQuery Data Preparation, esto es una realidad. Esta potente función simplifica la transferencia, la transformación y la limpieza de datos, y pone la preparación de datos en manos de todos los profesionales de datos de tu organización.
¿Todo listo para descubrir los secretos ocultos en tus datos de productos?
Requisitos previos
- Conocimientos básicos sobre la consola de Google Cloud
- Conocimientos básicos de SQL
Qué aprenderás
- Cómo la preparación de datos de BigQuery puede limpiar y transformar tus datos sin procesar en inteligencia empresarial práctica, con un ejemplo realista de la industria de la moda y la belleza
- Cómo ejecutar y programar la preparación de datos para tus datos limpios
Requisitos
- Una cuenta de Google Cloud y un proyecto de Google Cloud
- Un navegador web, como Chrome
2. Configuración básica y requisitos
Configuración del entorno de autoaprendizaje
- Accede a la consola de Google Cloud y crea un proyecto nuevo o reutiliza uno existente. Si aún no tienes una cuenta de Gmail o de Google Workspace, debes crear una.



- El Nombre del proyecto es el nombre visible de los participantes de este proyecto. Es una cadena de caracteres que no se utiliza en las APIs de Google. Puedes actualizarla cuando quieras.
- El ID del proyecto es único en todos los proyectos de Google Cloud y es inmutable (no se puede cambiar después de configurarlo). La consola de Cloud genera automáticamente una cadena única. Por lo general, no importa cuál sea. En la mayoría de los codelabs, deberás hacer referencia al ID de tu proyecto (suele identificarse como
PROJECT_ID). Si no te gusta el ID que se generó, podrías generar otro aleatorio. También puedes probar uno propio y ver si está disponible. No se puede cambiar después de este paso y se usa el mismo durante todo el proyecto. - Recuerda que hay un tercer valor, un número de proyecto, que usan algunas APIs. Obtén más información sobre estos tres valores en la documentación.
- A continuación, deberás habilitar la facturación en la consola de Cloud para usar las APIs o los recursos de Cloud. Ejecutar este codelab no costará mucho, tal vez nada. Para cerrar recursos y evitar que se generen cobros más allá de este instructivo, puedes borrar los recursos que creaste o borrar el proyecto. Los usuarios nuevos de Google Cloud son aptos para participar en el programa Prueba gratuita de USD 300.
3. Antes de comenzar
Habilitar API
Para usar Gemini en BigQuery, debes habilitar la API de Gemini para Google Cloud. Por lo general, un administrador de servicios o un propietario del proyecto con el permiso de IAM serviceusage.services.enable realiza este paso.
- Para habilitar la API de Gemini para Google Cloud, ve a la página de Gemini para Google Cloud en Google Cloud Marketplace. Ir a Gemini para Google Cloud
- En el selector de proyectos, elige un proyecto.
- Haz clic en Habilitar. La página se actualiza y muestra el estado Habilitado. Gemini en BigQuery ahora está disponible en el proyecto de Google Cloud seleccionado para todos los usuarios que tienen los permisos de IAM necesarios.
Cómo configurar roles y permisos para desarrollar preparaciones de datos
- En IAM y administración, selecciona IAM.

- Selecciona tu usuario y haz clic en el ícono de lápiz para "Editar principal".

Para usar la preparación de datos de BigQuery, necesitarás los siguientes roles y permisos:
- Editor de datos de BigQuery (roles/bigquery.dataEditor)
- Consumidor de Service Usage (roles/serviceusage.serviceUsageConsumer)
4. Cómo encontrar la ficha "bq data preparation demo" y suscribirse a ella en Analytics Hub de BigQuery
Usaremos el conjunto de datos bq data preparation demo para este instructivo. Es un conjunto de datos vinculado en Analytics Hub de BigQuery desde el que leeremos.
La preparación de datos nunca vuelve a escribir en la fuente, y te pediremos que definas una tabla de destino en la que escribir. La tabla con la que trabajaremos en este ejercicio solo tiene 1,000 filas para mantener los costos al mínimo, pero la preparación de datos se ejecuta en BigQuery y se ajustará según sea necesario.
Sigue estos pasos para encontrar el conjunto de datos vinculado y suscribirte a él:
- Accede a Analytics Hub: En la consola de Google Cloud, navega a BigQuery.
- En el menú de navegación de BigQuery, en "Gobernanza", selecciona "Analytics Hub".

- Busca la ficha: En la IU de Analytics Hub, haz clic en Search Listings.
- Escribe
bq data preparation demoen la barra de búsqueda y presiona Intro.

- Suscríbete a la ficha: Selecciona la ficha
bq data preparation demoen los resultados de la búsqueda. - En la página de detalles de la ficha, haz clic en el botón Suscribirse.
- Revisa los cuadros de diálogo de confirmación y actualiza el proyecto o el conjunto de datos si es necesario. Los valores predeterminados deben ser correctos.

- Accede al conjunto de datos en BigQuery: Una vez que te hayas suscrito correctamente, los conjuntos de datos de la ficha se vincularán a tu proyecto de BigQuery.
Regresa a BigQuery Studio.
5. Explora los datos y lanza la preparación de datos
- Busca el conjunto de datos y la tabla: En el panel Explorador, selecciona tu proyecto y, luego, busca el conjunto de datos que se incluyó en la lista
bq data preparation demo. Selecciona la tablastg_product. - Abrir en Preparación de datos: Haz clic en los tres puntos verticales junto al nombre de la tabla y selecciona
Open in Data Preparation.
Se abrirá la tabla en la interfaz de Preparación de datos, lista para que comiences a transformar tus datos.

Como puedes ver en la vista previa de los datos a continuación, tenemos algunos desafíos relacionados con los datos que abordaremos, incluidos los siguientes:
- La columna de precios contiene el importe y la moneda, lo que dificulta el análisis.
- La columna de producto combina el nombre y la categoría del producto (separados por un símbolo de barra vertical |).

De inmediato, Gemini analiza tus datos y sugiere varias transformaciones. En este ejemplo, vemos varias recomendaciones. En los próximos pasos, aplicaremos los que necesitemos.

6. Cómo controlar la columna Precio
Abordemos la columna Precio. Como vimos, contiene tanto la moneda como el importe. Nuestro objetivo es separar estos datos en dos columnas distintas:Moneda y Importe.
Gemini identificó varias recomendaciones para la columna Precio.
- Busca una recomendación que diga algo similar a lo siguiente:
Descripción: "Esta expresión quita el prefijo "USD " del campo especificado"
REGEXP_REPLACE(Price,` `r'^USD\s',` `r'')
- Selecciona Vista previa.

- Selecciona Aplicar.
A continuación, para la columna Price, convierte el tipo de datos de STRING a NUMERIC.
- Busca una recomendación que diga algo similar a lo siguiente:
Descripción: "Convierte la columna Precio del tipo string a float64"
SAFE_CAST(Price AS float64)
- Selecciona Aplicar.
Ahora deberías ver tres pasos aplicados en la lista de pasos.

7. Cómo controlar la columna de productos
La columna de productos contiene el nombre y la categoría del producto, separados por una barra vertical (|).
Si bien podríamos volver a usar el lenguaje natural, exploremos otra de las potentes funciones de Gemini.
Limpia el nombre del producto
- Selecciona la parte de la categoría de una entrada de producto, incluido el carácter
|, y bórrala.

Gemini reconocerá de forma inteligente este patrón y sugerirá una transformación para aplicar a toda la columna.
- Selecciona “Editar”.

La recomendación de Gemini es acertada: quita todo lo que aparece después del carácter “|”, lo que aísla de manera eficaz el nombre del producto.
Pero esta vez no queremos sobrescribir nuestros datos originales.
- En el menú desplegable de la columna de destino, selecciona "Crear columna nueva".
- Establece el nombre como ProductName.

- Obtén una vista previa de los cambios para asegurarte de que todo se vea bien.
- Aplica la transformación.
Extrae la categoría del producto
Con lenguaje natural, le indicaremos a Gemini que extraiga la palabra que se encuentra después de la barra vertical (|) en la columna Producto. Este valor extraído se reemplazará en la columna existente llamada Producto.
- Haz clic en
Add Steppara agregar un nuevo paso de transformación.

- Selecciona
Transformationen el menú desplegable. - En el campo de instrucción en lenguaje natural, ingresa "extrae la palabra que aparece después de la barra vertical (|) en la columna Producto" y, luego, presiona Retorno para generar el código SQL.

- Deja la columna objetivo como "Producto".
- Haga clic en Aplicar.
La transformación debería arrojar los siguientes resultados.

8. Unión para enriquecer los datos
A menudo, querrás enriquecer tus datos con información de otras fuentes. En nuestro ejemplo, uniremos nuestros datos de productos con atributos de productos extendidos, stg_extended_product, de una tabla de terceros. En esta tabla, se incluyen detalles como la marca y la fecha de lanzamiento.
- Haz clic en
Add Step. - Seleccionar
Join - Navega a la tabla
stg_extended_product.

Gemini en BigQuery eligió automáticamente la clave de unión productid y calificó los lados izquierdo y derecho, ya que el nombre de la clave es idéntico.
Nota: Asegúrate de que el campo de descripción diga "Join by productid". Si incluye claves de unión adicionales, reemplaza el campo de descripción por "Unir por productid" y selecciona el botón de generar en el campo de descripción para volver a generar la expresión de unión con la siguiente condición L.
productid
= R.
productid. 
- De manera opcional, selecciona Vista previa para obtener una vista previa de los resultados.
- Haz clic en
Apply.
Cómo limpiar los atributos extendidos
Si bien la unión se realizó correctamente, los datos de los atributos extendidos requieren cierta limpieza. La columna LaunchDate tiene formatos de fecha incoherentes, y la columna Brand contiene algunos valores faltantes.
Comenzaremos por abordar la columna LaunchDate.

Antes de crear cualquier transformación, consulta las recomendaciones de Gemini.
- Haz clic en el nombre de la columna
LaunchDate. Deberías ver algunas recomendaciones generadas similares a las de la siguiente imagen.

- Si ves una recomendación con el siguiente código SQL, aplícala y omite los próximos pasos.
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
- Si no ves una recomendación que coincida con el código SQL anterior, haz clic en
Add Step. - Selecciona
Transformation. - En el campo SQL, ingresa lo siguiente:
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
- Establece
Target ColumnsenLaunchDate. - Haz clic en
Apply.
La columna LaunchDate ahora tiene un formato de fecha coherente.

9. Cómo agregar una tabla de destino
Nuestro conjunto de datos ahora está limpio y listo para cargarse en una tabla de dimensiones en nuestro almacén de datos.
- Haz clic en
ADD STEP. - Selecciona
Destination. - Completa los parámetros obligatorios: Dataset:
bq_data_preparation_demoTable:DimProduct - Haz clic en
Save.

Ahora trabajamos con las pestañas "Datos" y "Esquema". Además de estas, la Preparación de datos de BigQuery proporciona una vista de "Gráfico" que muestra visualmente la secuencia de pasos de transformación en tu canalización.

10. Bonificación A: Cómo controlar la columna Fabricante y crear la tabla de errores
También identificamos valores vacíos en la columna Manufacturer. Para estos registros, queremos implementar una verificación de calidad de los datos y trasladarlos a una tabla de errores para su posterior revisión.
Crea una tabla de errores
- Haz clic en el botón
Morejunto al títulostg_product data preparation. - En la sección
Setting, seleccionaError Table. - Marca la casilla
Enable error tabley configura los parámetros de la siguiente manera:
- Conjunto de datos: Selecciona
bq_data_preparation_demo. - Tabla: Ingresa
err_dataprep - En
Define duration for keeping errors, selecciona30 days (default).
- Haz clic en
Save.

Configura la validación en la columna Fabricante
- Selecciona la columna Fabricante.
- Es probable que Gemini haya identificado una transformación pertinente. Busca la recomendación que solo conserva las filas en las que el campo Fabricante no está vacío. Tendrá un SQL similar al siguiente:
Manufacturer IS NOT NULL
2.Haz clic en el botón "Editar" de esta recomendación para revisarla.

- Marca la opción "Las filas de validación con errores se envían a la tabla de errores" si no está marcada.
- Haz clic en
Apply.
En cualquier momento, puedes revisar, modificar o borrar las transformaciones que aplicaste haciendo clic en el botón "Pasos aplicados".

Limpia la columna redundante ProductID_1
Ahora se puede borrar la columna ProductID_1, que duplica el ProductID de nuestra tabla combinada.
- Ve a la pestaña
Schema. - Haz clic en los 3 puntos junto a la columna
ProductID_1. - Haz clic en
Drop.
Ahora podemos ejecutar el trabajo de preparación de datos y validar toda nuestra canalización. Cuando estemos satisfechos con los resultados, podemos programar el trabajo para que se ejecute automáticamente.
- Antes de salir de la vista de preparación de datos, guarda tus preparaciones. Junto al título
stg_product data preparation, deberías ver un botónSave. Haz clic en el botón para guardar.
11. Limpia el entorno
- Borra el
stg_product data preparation. - Borra el conjunto de datos
bq data preparation demo
12. Felicitaciones
Felicitaciones por completar el codelab.
Temas abordados
- Configura la preparación de datos
- Cómo abrir tablas y navegar por la preparación de datos
- Cómo dividir columnas con datos de descriptores numéricos y de unidades
- Estandarización de formatos de fecha
- Ejecuta preparaciones de datos