[{"data":1,"prerenderedAt":29},["ShallowReactive",2],{"article-data-curso-gcp-medallion-04":3},{"content":4,"date":5,"image":6,"sideArticles":7},"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\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>Bienvenidos al cuarto laboratorio de vuestro camino en la ingesta por lotes con \u003Cstrong>BigQuery Load Jobs\u003C/strong>. En\r\n    este módulo, sentaremos las bases de la carga masiva reactiva. No se trata de procesar archivos línea por línea, sino\r\n    de delegar la computación de forma nativa e integrada en la nube. Utilizaremos \u003Cstrong>Google Cloud\u003C/strong> para\r\n    orquestar la ingesta asíncrona de archivos planos hacia Bronze.\r\n\u003C/p>\r\n\r\n\u003Ch2>La Evolución: De Procesamiento Local a Cargas Nativas en BigQuery\u003C/h2>\r\n\r\n\u003Cp>El procesamiento masivo local con librerías pesadas en memoria excede el tiempo de ejecución y los límites de computación\r\n    serverless cuando los archivos crecen. En entornos escalables de datos, delegar la carga al motor analítico es la\r\n    respuesta óptima:\u003C/p>\r\n\u003Cul>\r\n    \u003Cli>\u003Cstrong>Limitaciones:\u003C/strong> Leer archivos gigantes en la memoria de una función genera saturación de recursos,\r\n        caídas del servicio e incrementa la facturación.\u003C/li>\r\n    \u003Cli>\u003Cstrong>La Solución:\u003C/strong> Desencadenar Jobs de carga nativos delegando el cómputo al motor distribuido de\r\n        BigQuery maximiza la velocidad de ingesta.\u003C/li>\r\n\u003C/ul>\r\n\r\n\u003Ch2>La Optimización de Cargas: Triggers de GCS, Job Config y Esquemas Estrictos\u003C/h2>\r\n\r\n\u003Cp>Para asegurar que nuestra base de datos Bronze reciba los registros del lago de datos de forma paralela y sin errores,\r\n    ejecutaremos tres fases clave:\u003C/p>\r\n\u003Cp>\u003Ccode>Detección de Archivo (Eventarc) + Configuración de Carga (LoadJobConfig) + Ejecución del Job (BigQuery)\u003C/code>\u003C/p>\r\n\u003Cp>Aprenderemos que un flujo sin control de formatos puede corromper las tablas de destino; por ello, nos enfocaremos en\r\n    estructurar la configuración de carga e imponer el esquema estricto definido en la infraestructura.\u003C/p>\r\n\r\n\u003Ch2>Configuración de Seguridad y Permisos con Terraform\u003C/h2>\r\n\r\n\u003Cp>En arquitecturas reactivas, las cuentas de servicio deben contar con el mínimo privilegio posible. No otorgamos roles\r\n    globales desde el portal web; utilizamos \u003Cstrong>Terraform\u003C/strong> para aprovisionar accesos granulares que enlacen los\r\n    componentes de manera profesional:\u003C/p>\r\n\u003Cul>\r\n    \u003Cli>\u003Cstrong>Permisos:\u003C/strong> Otorgaremos el rol de publicador en \u003Cstrong>Pub/Sub\u003C/strong> a la cuenta de servicio de\r\n        \u003Cstrong>Storage\u003C/strong> de forma limpia.\u003C/li>\r\n    \u003Cli>\u003Cstrong>Lotes:\u003C/strong> Configuraremos un trigger de \u003Cstrong>Storage\u003C/strong> para capturar la subida de nuevos\r\n        archivos en las carpetas.\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 práctico, codificarás el script reactivo de ingesta batch en Python. Definiremos la función y sus\r\n    dependencias en el archivo \u003Ccode>requirements.txt\u003C/code> para mapear las carpetas, permitiéndote simular la subida de un\r\n    CSV y observar la carga nativa asíncrona.\r\n\u003C/p>\r\n\r\n\u003Ch2>Conclusión: Automatización del flujo batch\u003C/h2>\r\n\u003Cp>Has completado con éxito la automatización del flujo batch asíncrono. Has aprendido a delegar la computación de carga\r\n    pesada a la infraestructura de BigQuery utilizando disparadores de Cloud Storage sin consumir recursos locales de\r\n    procesamiento. Ya tienes los flujos clave de Bronze terminados; el siguiente desafío es estructurar, limpiar y tipar\r\n    estos datos crudos en la capa Silver.\u003C/p>","July 9, 2026","https://storage.googleapis.com/mp-blog/images/curso-gcp-medallion-04.jpg",[8,14,19,24],{"id":9,"title":10,"description":11,"image":12,"date":13},"curso-gcp-ai-ops-01","Fundamentos de AIOps en Google Cloud | Curso AIOps con Vertex AI","Módulo 1: Fundamentos de AIOps en Google Cloud. Aprende la transición de ITOps a operaciones inteligentes y cómo preparar tu infraestructura base con Terraform.","https://storage.googleapis.com/mp-blog/images/curso-gcp-ai-ops-01.jpg","May 28, 2026",{"id":15,"title":16,"description":17,"image":18,"date":13},"curso-gcp-ai-ops-02","Vertex AI para AIOps: AutoML y Despliegue | Curso AIOps","Módulo 2: Gestión de modelos con Vertex AI para AIOps. Aprende a utilizar AutoML, gestionar datasets tabulares y desplegar endpoints de predicción.","https://storage.googleapis.com/mp-blog/images/curso-gcp-ai-ops-02.jpg",{"id":20,"title":21,"description":22,"image":23,"date":13},"curso-gcp-ai-ops-03","Observabilidad Inteligente en GCP | Curso AIOps","Módulo 3: Observabilidad Inteligente en GCP. Configuración de Cloud Monitoring, Cloud Logging y creación de dashboards predictivos correlacionados con BigQuery.","https://storage.googleapis.com/mp-blog/images/curso-gcp-ai-ops-03.jpg",{"id":25,"title":26,"description":27,"image":28,"date":13},"curso-gcp-ai-ops-04","Automatización Operativa y Remediación | Curso AIOps","Módulo 4: Automatización Operativa en AIOps. Aprende a crear arquitecturas dirigidas por eventos con Cloud Functions y Pub/Sub para la remediación automática.","https://storage.googleapis.com/mp-blog/images/curso-gcp-ai-ops-04.jpg",1783609814688]