« Tüm yayınlar

apitap: Rust Tabanlı ELT Motoru 10 Milyon Satırı 9.9 Saniyede Taşıyor

Açık kaynaklı Rust motoru apitap, tek komutla 10 milyon satırı 9.9 saniyede taşıyor; dlt ve ingestr ile karşılaştırmalı benchmark sonuçları.

apitap adlı yeni açık kaynaklı motor, tek bir Python fonksiyon çağrısıyla Postgres, MySQL ve ClickHouse arasında tüm tabloları taşıyor; config dosyası veya pipeline DAG'ı yok. Yayıncının testinde 16 çekirdekli bir makinede 10 milyon satır Postgres'ten ClickHouse'a 9.9 saniyede aktarılırken, aynı iş ingestr'da 111 saniye, dlt'de ise 1893 saniye sürüyor.

Hızın kaynağı mimaride: Postgres-Postgres aktarımında ham binary COPY doğrudan aktarılıyor, Postgres-ClickHouse'ta akış anlık olarak RowBinary formatına dönüştürülüyor, MySQL bağlantılarında ise binary wire protokolü doğrudan çözülüyor - hiçbir yerde ORM ya da metin serileştirme yok. Kritik fark, dlt'nin paralelliği tablolar arasında uygularken apitap'ın tek bir tablo içinde birincil anahtar aralıklarına göre paralel iş parçacıkları çalıştırması.

Yazar, satır sayısı yerine byte/saat üzerinden karşılaştırma yapınca dltHub'ın kendi 360 milyon satır/saat rakamının farklı bir şema boyutundan kaynaklandığını gösteriyor; normalize edilince apitap saniyede 1.2 TB/saat sürdürülebilir hıza ulaşıyor. Bellek kullanımı tablo boyutundan bağımsız tasarlandığı için motor 256 MB'lık bir konteynerde bile sorunsuz çalışıyor - dlt'nin en hızlı arka ucu connectorx ise aynı limitte OOM ile çöküyor.

Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz