[{"data":1,"prerenderedAt":29},["ShallowReactive",2],{"article-data-curso-gcp-dbt-07":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 integrar archivos CSV en tu proyecto dbt con Seeds y a automatizar tareas con Hooks pre y post ejecución.\">\r\n    \u003Cmeta name=\"keywords\" content=\"dbt Seeds, CSV, Hooks, Post-run, BigQuery, Data Governance\">\r\n    \u003Cmeta name=\"author\" content=\"Eduardo Martínez Agrelo\">\r\n    \u003Ctitle>dbt: Seeds y Hooks | Curso dbt 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>dbt: Seeds y Hooks (Datos Estáticos y Automatización)\u003C/h1>\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>No todos los datos vienen de una base de datos transaccional. A veces tenemos mapeos de países o listas de\r\n        objetivos en archivos CSV. dbt maneja esto mediante los \u003Cstrong>Seeds\u003C/strong>.\u003C/p>\r\n\r\n    \u003Ch2> dbt Seeds\u003C/h2>\r\n\r\n    \u003Cp>Al colocar un archivo CSV en la carpeta \u003Ccode>seeds/\u003C/code>, dbt lo carga directamente en BigQuery como una\r\n        tabla. Esto es ideal para datos de referencia que cambian poco y que queremos tener bajo control de versiones en\r\n        GitHub.\u003C/p>\r\n\r\n    \u003Ch2>Pre y Post Hooks\u003C/h2>\r\n\r\n    \u003Cp>¿Necesitas dar permisos de lectura a un grupo después de crear una tabla? ¿O insertar un registro en un log antes\r\n        de empezar? Los \u003Cstrong>Hooks\u003C/strong> nos permiten ejecutar sentencias SQL personalizadas en momentos clave del\r\n        ciclo de vida de dbt (on-run-start u on-run-end).\u003C/p>\r\n\r\n    \u003Ch2>Conclusión: Control Total\u003C/h2>\r\n    \u003Cp>Has integrado datos manuales y automatizado permisos. Tu pipeline es cada vez más autónomo. Solo nos queda el\r\n        paso final: optimización incremental y automatización con CI/CD.\u003C/p>\r\n\u003C/body>\r\n\r\n\u003C/html>","April 15, 2026","https://storage.googleapis.com/mp-blog/images/curso-gcp-dbt-07.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",1776363704066]