ETL (Extract, Transform, Load)
Proceso de integración que extrae datos sin procesar de múltiples fuentes, los convierte a un formato limpio y estructurado, y los carga en un almacén de datos centralizado para su análisis.
Proyectos open-source como blockchain-etl de Google exportan datos de Ethereum y Bitcoin a Google BigQuery, permitiendo consultas SQL sobre todo el historial de la blockchain.
graph LR
Center["ETL (Extract, Transform, Load)"]:::main
Rel_indexing_search["indexing-search"]:::related -.-> Center
click Rel_indexing_search "/terms/indexing-search"
Rel_consensus_mechanism["consensus-mechanism"]:::related -.-> Center
click Rel_consensus_mechanism "/terms/consensus-mechanism"
Rel_edge_computing["edge-computing"]:::related -.-> Center
click Rel_edge_computing "/terms/edge-computing"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧠 Prueba de conocimiento
🧒 Explícalo como si tuviera 5 años
Imagina que haces un pastel con ingredientes de distintas tiendas. Extract: ir a la granja y al molino por huevos y trigo. Transform: romper los huevos y moler el trigo en tu cocina. Load: poner la masa en el molde. En informática, ETL toma datos desordenados de distintas apps, los limpia y los guarda en una base de datos ordenada para que los gerentes puedan leer informes claros.
🤓 Expert Deep Dive
Arquitectura ETL vs ELT: ETL tradicional requiere un servidor de transformación dedicado y usa schema-on-write. ELT carga primero los datos crudos (schema-on-read), aprovechando el procesamiento masivo paralelo (MPP) de la nube para transformaciones SQL (ej. con dbt). Complejidad ETL Blockchain: La extracción se complica por reorganizaciones de cadena (reorgs). La transformación requiere decodificación ABI. Un log de evento Ethereum contiene 'topics' y 'data'. El pipeline ETL debe mapear el hash Keccak-256 de la firma del evento y convertir el hexadecimal a tipos SQL estándar.
❓ Preguntas frecuentes
What is the difference between ETL and ELT?
In ETL (Extract, Transform, Load), data is transformed in a separate processing engine before it is loaded into the data warehouse. In ELT (Extract, Load, Transform), raw data is loaded directly into the data warehouse, and transformations are performed inside the warehouse using its own computing power (e.g., using SQL in Snowflake or BigQuery).
Why is the Transform step necessary?
Raw data from different sources is often messy and incompatible. Dates might be in different formats, databases might use different ID schemes, and text might contain errors. Transformation cleans, standardizes, and joins this data so that it can be accurately analyzed.
How is Blockchain ETL different from traditional ETL?
Blockchain data is extracted from RPC nodes in a raw, unreadable hexadecimal format. The transformation step requires an ABI (Application Binary Interface) to decode these hex strings into readable function calls and event logs. Additionally, blockchain ETL must handle chain reorganizations (where recent blocks are rewritten).