Resumen del curso/Configura el espacio de trabajo4 de 4

Conoce el almacén de datos

AnteriorSiguiente

Conoce el almacén de datos

Aprende qué son las tablas, filas, granularidad y conexiones; después explora los datos.

Tablas, filas, granularidad y conexiones

Un almacén de datos es un conjunto de tablas. Una tabla tiene columnas, que nombran lo que se almacena, y filas, que son los registros individuales. Este proyecto tiene seis tablas: dates, stores, products, customers, orders y order_items.

Antes de consultar una tabla, decide qué representa una de sus filas. Los equipos de datos llaman a esto la granularidad de la tabla. Dos granularidades recorren todo el curso y es fácil confundirlas. orders tiene una fila por pedido. order_items tiene una fila por línea de un pedido, y cada pedido tiene exactamente 2,40 líneas de media. Ese número reaparece en la lección de uniones y en el proyecto final, así que tenlo presente.

Tus consultas llegan a los datos mediante una conexión, que es un puntero con nombre a una base de datos. La conexión de este proyecto se llama duckdb-default y está definida en el archivo .bruin.yml de la raíz del repositorio. Ese archivo aparece intencionadamente en .gitignore, porque en un proyecto real contendría contraseñas y una contraseña no debe estar bajo control de versiones. Este proyecto concreto no necesita credenciales: la conexión es simplemente una ruta a un archivo local ya configurado.

Una convención de la casa recorre todas las lecciones: cada bruin query lleva un --description que indica qué pretende demostrar la consulta.

Los datos abarcan tres años, de 2023 a 2025, con 360 pedidos en 2023, 480 en 2024 y 360 en 2025. El volumen crece de 2023 a 2024 y luego baja de 2024 a 2025. El descenso es intencionado. Si exploras 2025 y encuentras categorías cada vez menores, son los datos comportándose como se diseñaron, no un error tuyo.

Una nota sobre la lectura de la salida. El terminal imprime los números sin formato: 604065, no 604,065.00, y un número muy grande puede aparecer en notación científica, como 1.44977182e+06, que significa «1.44977182 por 10 elevado a 6»: mueve el punto decimal seis lugares a la derecha para obtener 1.449.771,82. Las lecciones escriben los números con separadores para facilitar la lectura; tu terminal no. Son los mismos valores con distinta ropa.

Tu tarea

Ejecuta tres consultas para «echar un vistazo» y después lee docs/schema.md. El objetivo es confirmar la forma del almacén antes de consultarlo en serio: seis tablas y el número de filas de las dos tablas de pedidos.

bruin query --connection duckdb-default --description "list every table in the project" --query "SHOW TABLES;"
bruin query --connection duckdb-default --description "preview the first five orders" --query "SELECT * FROM orders LIMIT 5;"
bruin query --connection duckdb-default --description "count rows in the two order tables" --query "SELECT (SELECT COUNT(*) FROM orders) AS orders, (SELECT COUNT(*) FROM order_items) AS order_items;"

SHOW TABLES devuelve las seis porque las tablas tienen nombres sencillos como orders, no retail.orders. Espera 6 tablas en la primera consulta. La tercera consulta es la comprobación: debe devolver 1.200 pedidos y 2.880 líneas de pedido.

Comprueba lo que has entendido

  • ¿Qué representa una fila de orders?
  • ¿Qué representa una fila de order_items?
  • ¿Cuál de las dos tiene más filas y por qué?

Hazlo con tu agente

Di next lesson y tu agente impartirá esta lección, te hará estas preguntas y después asignará la tarea anterior. Hazla a mano y luego di review my work: ejecutará tu trabajo, lo comprobará con una rúbrica y te dirá qué debes corregir o marcará la lección como terminada.

Sign up to our newsletter

Practical updates on open-source data pipelines, AI analysts, governance, and what we are shipping at Bruin.

The signup form is hosted by Brevo. Allow marketing cookies to load it.