[{"data":1,"prerenderedAt":29},["ShallowReactive",2],{"article-data-curso-gcp-cloud-composer-03":3},{"content":4,"date":5,"image":6,"sideArticles":7},"\u003C!DOCTYPE html>\r\n\u003Chtml lang=\"es\">\r\n\r\n\u003Chead>\r\n    \u003Cmeta charset=\"UTF-8\">\r\n    \u003Cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n    \u003Cmeta name=\"description\"\r\n        content=\"Aprende a mover datos desde Google Cloud Storage hacia BigQuery de forma automática. Domina el patrón ELT y el uso del GCSToBigQueryOperator en Cloud Composer.\">\r\n    \u003Cmeta name=\"keywords\"\r\n        content=\"Cloud Composer, BigQuery, ELT, GCS, Data Warehouse, GCSToBigQueryOperator, Data Engineering, Google Cloud\">\r\n    \u003Cmeta name=\"author\" content=\"Eduardo Martínez Agrelo\">\r\n    \u003Ctitle>Cloud Composer: Ingesta a BigQuery | Curso Composer GCP\u003C/title>\r\n    \u003Cstyle>\r\n        body {\r\n            font-family: sans-serif;\r\n            line-height: 1.6;\r\n        }\r\n\r\n        h1,\r\n        h2,\r\n        h3 {\r\n            color: #333;\r\n        }\r\n\r\n        ul {\r\n            list-style-type: disc;\r\n            margin-left: 20px;\r\n        }\r\n\r\n        code {\r\n            background-color: #f4f4f4;\r\n            padding: 2px 5px;\r\n            border-radius: 3px;\r\n            font-family: monospace;\r\n        }\r\n    \u003C/style>\r\n\u003C/head>\r\n\r\n\u003Cbody>\r\n    \u003Ch1>Cloud Composer: Ingesta a BigQuery (El Patrón ELT)\u003C/h1>\r\n    \u003Cp>\u003Cstrong>Autor:\u003C/strong> \u003Ca href=\"https://www.youtube.com/@EduardoMartinezAgrelo\" target=\"_blank\">Eduardo Martínez\r\n            Agrelo\u003C/a>\u003C/p>\r\n\r\n    \u003Cp>Tener datos en un Data Lake es un gran primer paso, pero los archivos CSV \"tirados\" en un bucket no son útiles\r\n        para el análisis de negocio. Para que los analistas puedan extraer valor, necesitamos llevar esos datos a un\r\n        entorno estructurado y potente. En Google Cloud, ese lugar es \u003Cstrong>BigQuery\u003C/strong>, y el proceso para\r\n        llevarlos allí se conoce como la carga del Patrón ELT.\u003C/p>\r\n\r\n    \u003Ch2>¿Qué es el Patrón ELT?\u003C/h2>\r\n\r\n    \u003Cp>A diferencia del tradicional ETL, el modelo \u003Cstrong>ELT (Extract, Load, Transform)\u003C/strong> aprovecha la potencia\r\n        de cálculo del Data Warehouse moderno:\u003C/p>\r\n    \u003Cul>\r\n        \u003Cli>\u003Cstrong>Extract & Load:\u003C/strong> Los datos se extraen de la fuente y se cargan directamente en el destino en\r\n            su formato original o con mínimas transformaciones.\u003C/li>\r\n        \u003Cli>\u003Cstrong>Transform:\u003C/strong> Una vez dentro de BigQuery, utilizamos SQL para limpiar, agregar y modelar los\r\n            datos, aprovechando la escalabilidad masiva de Google.\u003C/li>\r\n    \u003C/ul>\r\n\r\n    \u003Ch2>El GCSToBigQueryOperator\u003C/h2>\r\n\r\n    \u003Cp>Airflow facilita esta tarea mediante operadores especializados que se comunican directamente con las APIs de\r\n        Google Cloud sin pasar los datos por la memoria del orquestador:\u003C/p>\r\n    \u003Cp>\u003Ccode>load_csv = GCSToBigQueryOperator(task_id='gcs_to_bq', bucket='data-lake')\u003C/code>\u003C/p>\r\n    \u003Cp>Aprenderemos a configurar parámetros críticos como el \u003Ccode>schema_fields\u003C/code> para definir la estructura de la\r\n        tabla, y el \u003Ccode>write_disposition\u003C/code>, que determina si queremos sobrescribir los datos existentes o añadir\r\n        nuevos registros al final de la tabla.\u003C/p>\r\n\r\n    \u003Ch2>Airflow Orquestador, No Procesador\u003C/h2>\r\n\r\n    \u003Cp>Es un error común intentar leer archivos pesados con Python dentro de un DAG. Es vital entender que\r\n        \u003Cstrong>Airflow es el director de orquesta\u003C/strong>:\r\n    \u003C/p>\r\n    \u003Cul>\r\n        \u003Cli>\u003Cstrong>Eficiencia:\u003C/strong> Airflow simplemente da la orden a BigQuery para que absorba el archivo desde\r\n            GCS.\u003C/li>\r\n        \u003Cli>\u003Cstrong>Escalabilidad:\u003C/strong> Este método permite procesar terabytes de datos con la misma facilidad que\r\n            unos pocos kilobytes, ya que el esfuerzo pesado lo realiza el motor de almacenamiento de Google.\u003C/li>\r\n    \u003C/ul>\r\n\r\n    \u003Ch2>Implementación práctica\u003C/h2>\r\n\r\n    \u003Cp>En este laboratorio, primero utilizaremos Terraform para crear nuestro Dataset en BigQuery de forma automática.\r\n        Posteriormente, desplegaremos un DAG que detectará nuestros archivos de ventas y los cargará en una tabla \"raw\".\r\n        Al finalizar, entraremos en la consola de BigQuery para ejecutar nuestras primeras consultas SQL sobre los datos\r\n        que acabamos de ingestar, verificando que los tipos de datos (enteros, cadenas y flotantes) se hayan mapeado\r\n        correctamente.\u003C/p>\r\n\r\n    \u003Ch2>Conclusión: Tu primer Warehouse funcional\u003C/h2>\r\n    \u003Cp>Has completado el ciclo de ingesta batch profesional. Tus datos ya no son archivos inertes en un bucket; ahora\r\n        residen en una base de datos analítica de clase mundial. Sin embargo, en producción los datos suelen venir con\r\n        errores. El siguiente paso es aprender a bifurcar nuestros pipelines para gestionar la calidad del dato mediante\r\n        técnicas de Branching.\u003C/p>\r\n\u003C/body>\r\n\r\n\u003C/html>","April 15, 2026","https://storage.googleapis.com/mp-blog/images/curso-gcp-cloud-composer-03.jpg",[8,14,19,24],{"id":9,"title":10,"description":11,"image":12,"date":13},"curso-gcp-apache-spark-01","Spark: Infraestructura como Código con Terraform | Curso Spark, Scala y Terraform","Aprende a desplegar clústeres de Big Data profesionalmente. Domina Terraform para crear infraestructura como código (IaC) en Google Cloud y automatiza tu entorno de Dataproc para Spark.","https://storage.googleapis.com/mp-blog/images/curso-gcp-apache-spark-01.jpg","March 12, 2026",{"id":15,"title":16,"description":17,"image":18,"date":13},"curso-gcp-apache-spark-02","Spark: Ingesta (Raw to Bronze) y Formatos Columnares | Curso Spark, Scala y Terraform","Domina la ingesta de datos con Spark. Aprende a convertir JSONs pesados en formato Parquet, optimiza tu almacenamiento en un 85% y domina los esquemas estrictos con Scala.","https://storage.googleapis.com/mp-blog/images/curso-gcp-apache-spark-02.jpg",{"id":20,"title":21,"description":22,"image":23,"date":13},"curso-gcp-apache-spark-03","Spark: Limpieza y Calidad (Bronze to Silver) | Curso Spark, Scala y Terraform","Domina la limpieza de datos en Spark. Aprende a usar Scala para implementar la capa Silver (Plata) de tu arquitectura Medallón, utilizando Case Classes para mayor seguridad.","https://storage.googleapis.com/mp-blog/images/curso-gcp-apache-spark-03.jpg",{"id":25,"title":26,"description":27,"image":28,"date":13},"curso-gcp-apache-spark-04","Spark: Analítica Avanzada (Silver to Gold) | Curso Spark, Scala y Terraform","Domina el Análisis Avanzado con Spark. Aprende a calcular métricas de negocio con Window Functions y a extraer el Top 3 de canciones por país y día para tu capa Gold.","https://storage.googleapis.com/mp-blog/images/curso-gcp-apache-spark-04.jpg",1776363704175]