ETL (Extract, Transform, Load)

Ham verileri birden fazla kaynaktan çeken, temiz ve yapılandırılmış bir formata dönüştüren ve analiz için merkezi bir veri ambarına yükleyen bir veri entegrasyon süreci.

Google'ın blockchain-etl projesi gibi açık kaynaklı projeler, Ethereum ve Bitcoin verilerini Google BigQuery'ye aktararak kullanıcıların kendi arşiv düğümlerini çalıştırmadan tüm blokzincir geçmişi üzerinde SQL sorguları çalıştırmasına olanak tanır.

        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;

      

🧠 Bilgi testi

1 / 1

🧒 5 yaşındaki gibi açıkla

Farklı mağazalardan malzemeler alıp kek yaptığınızı düşünün. Extract: Çiftliğe ve değirmene gidip yumurta ve buğday almaktır. Transform: Mutfağınızda yumurtaları kırmak ve buğdayı una çevirmektir. Load: Karışan hamuru pişmek üzere kalıba dökmektir. Yazılımda ETL, farklı uygulamalardan gelen dağınık ham verileri alır, temizler ve yöneticilerin net raporlar okuyabilmesi için büyük, düzenli bir veritabanına koyar.

🤓 Expert Deep Dive

ETL ve ELT Mimarisi: Geleneksel ETL özel bir dönüşüm sunucusu gerektirir (schema-on-write). ELT, ham verileri önce yükler (schema-on-read) ve SQL dönüşümleri için bulutun devasa paralel işleme (MPP) yeteneklerinden yararlanır (ör. dbt ile). Blokzincir ETL Karmaşıklığı: Veri çekme işlemi zincir yeniden organizasyonları (reorg) nedeniyle zordur. Dönüştürme ABI kod çözmeyi gerektirir. Bir Ethereum olay günlüğü 'topics' ve 'data' içerir. ETL boru hattı, olay imzasının Keccak-256 özetini eşlemeli ve hex dizelerini standart SQL türlerine ayrıştırmalıdır.

❓ Sık sorulan sorular

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).

📚 Kaynaklar