[{"data":1,"prerenderedAt":29},["ShallowReactive",2],{"article-data-curso-gcp-medallion-02":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=\"Extracción Serverless con Cloud Functions. Automatiza la ingesta de datos desde APIs externas a Google Cloud Storage y prepara tu capa Bronze con particionado estructurado.\">\r\n    \u003Cmeta name=\"keywords\"\r\n        content=\"Cloud Functions, Google Cloud, Extracción de Datos, API, Serverless, Data Engineering, Data Lake, Terraform, Arquitectura Medallion\">\r\n    \u003Cmeta name=\"author\" content=\"Eduardo Martínez Agrelo\">\r\n    \u003Ctitle>Extracción Serverless con Cloud Functions | Curso GCP Medallion\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\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 segundo laboratorio de vuestro camino en la ingesta con \u003Cstrong>Cloud Functions\u003C/strong>. En este\r\n        módulo,\r\n        sentaremos las bases de la extracción serverless. No se trata solo de consultar una API de forma manual, sino de\r\n        transformar flujos externos de información en archivos almacenados de manera estructurada. Utilizaremos\r\n        \u003Cstrong>Google Cloud\u003C/strong> para automatizar el primer canal de nuestra capa Bronze.\r\n    \u003C/p>\r\n\r\n    \u003Ch2>La Evolución: De Extracciones Manuales a Serverless\u003C/h2>\r\n\r\n    \u003Cp>El procesamiento batch tradicional basado en servidores encendidos continuamente ha llegado a su límite en costes\r\n        operativos. En entornos modernos basados en microservicios, la computación bajo demanda es la respuesta óptima:\r\n    \u003C/p>\r\n    \u003Cul>\r\n        \u003Cli>\u003Cstrong>Limitaciones:\u003C/strong> Mantener infraestructura encendida 24/7 para lanzar scripts periódicos de\r\n            extracción\r\n            genera un gasto innecesario de recursos.\u003C/li>\r\n        \u003Cli>\u003Cstrong>La Solución:\u003C/strong> Funciones serverless ejecutadas bajo demanda permiten pagar únicamente por los\r\n            segundos\r\n            de cómputo consumidos durante la extracción.\u003C/li>\r\n    \u003C/ul>\r\n\r\n    \u003Ch2>La Estructura Raw: Extracción, Particionado y Almacenamiento\u003C/h2>\r\n\r\n    \u003Cp>Para asegurar que nuestra capa Bronze sea un registro fiel e histórico, la función ejecutará tres pasos lógicos:\r\n    \u003C/p>\r\n    \u003Cp>\u003Ccode>Petición GET (API) + Partición Temporal (ingested_at=YYYYMMDD) + Escritura JSON (GCS)\u003C/code>\u003C/p>\r\n    \u003Cp>Aprenderemos que un flujo sin particionamiento lógico es costoso de consultar en el futuro; por ello,\r\n        estructuraremos\r\n        de forma rigurosa la ruta en Cloud Storage para optimizar los procesos de transformación posteriores.\u003C/p>\r\n\r\n    \u003Ch2>Infraestructura Serverless con Terraform\u003C/h2>\r\n\r\n    \u003Cp>En ingeniería de datos, el empaquetado y despliegue del código de extracción debe estar automatizado. No subimos\r\n        el\r\n        código manualmente desde la consola; utilizamos \u003Cstrong>Terraform\u003C/strong> para comprimir, almacenar y desplegar\r\n        la\r\n        Cloud Function junto con sus dependencias:\u003C/p>\r\n    \u003Cul>\r\n        \u003Cli>\u003Cstrong>Fuentes:\u003C/strong> Crearemos un bucket en \u003Cstrong>Cloud Storage\u003C/strong> para el código ZIP y\r\n            asociaremos\r\n            las variables en \u003Cstrong>Terraform\u003C/strong> de forma limpia.\u003C/li>\r\n        \u003Cli>\u003Cstrong>Seguridad:\u003C/strong> Configuraremos una \u003Cstrong>Cuenta de Servicio\u003C/strong> dedicada con el rol\r\n            restrictivo\r\n            de escritor para proteger el bucket analítico.\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 de extracción en Python. Crearemos los archivos `main.py` y\r\n        el de\r\n        dependencias \u003Ccode>requirements.txt\u003C/code> que interactuarán con la API externa, empaquetándolos y\r\n        desplegándolos\r\n        mediante comandos de infraestructura para detonar tu primer pipeline asíncrono.\r\n    \u003C/p>\r\n\r\n    \u003Ch2>Conclusión: El primer flujo de ingesta\u003C/h2>\r\n    \u003Cp>Has completado con éxito tu primer pipeline de extracción serverless. Has aprendido a procesar datos de una API\r\n        externa\r\n        e inyectarlos con metadatos de tiempo en tu Data Lake sin necesidad de encender o mantener servidores. Ya tienes\r\n        tus\r\n        primeros archivos JSON de la capa Bronze listos; el siguiente reto es configurar la replicación en tiempo real\r\n        desde\r\n        bases de datos relacionales NoSQL.\u003C/p>","July 10, 2026","https://storage.googleapis.com/mp-blog/images/curso-gcp-medallion-02.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",1783692775826]