📰 Hikayesi ve Doğuşu
Büyük ölçekli şema migrasyonları ve karmaşık veri dönüşümleri, geliştiricilerin en büyük korkulu rüyalarından biridir. Paganel, geliştiricisinin harici SaaS araçlarının yasak olduğu hava-aralıklı bir ağda milyonlarca satırı hatasız taşıma zorunluluğundan doğdu. Mevcut araçların temel satır sayımlarının ötesine geçememesi ve dönüşüm doğrulaması sunmaması üzerine, sıfırdan Rust ile geliştirilmeye başlanan bu motor; veri göçünü tek bir deklaratif dosyaya indirgeyerek süreci şeffaf ve güvenli hale getiriyor.
⚡ Nasıl Çalışıyor & Mimari Detaylar
Paganel, tüm migrasyon sürecini özel bir PPL (Paganel Pipeline Language) dosyası üzerinden yönetir. Kaynak, hedef, filtreler ve dönüşüm kuralları bu dosyada tanımlanır. Motorun arkasındaki en çarpıcı yenilik ise `--integrity` bayrağıdır: Veriler taşınırken anlık olarak hashlenir ve diske kaydedilerek 32 baytlık bir 'migrasyon makbuzu' oluşturulur. İlerleyen haftalarda sadece hedef veritabanı okunarak `pag verify` komutu çalıştırılabilir ve kaynak sisteme bağlanmadan verinin bozulup bozulmadığı satır bazlı doğrulanabilir. Ayrıca Rust ve JS tabanlı WASM eklentileri, katı bellek ve ağ kısıtlamalarına sahip korumalı alanlarda (sandbox) çalışarak motorun kabiliyetlerini güvenle genişletir.
💡 Neden Radarımıza Girdi?
Weezir Radar ekibi olarak Paganel'i; ham performans rakamları ve mühendislik yaklaşımı nedeniyle mercek altına aldık. Ayrı sunuculardaki MySQL ve PostgreSQL arasında yapılan testlerde, tek akışta saniyede 390 bin, dört paralel akışta ise 940 bin satır işleyebilen motor; bütünlük kontrolü açıkken bile saniyede 670 bin satır gibi etkileyici bir hızı koruyor. Hata durumunda kaldığı yerden devam edebilen (crash-safe) yapısı, şema geçişlerindeki bağımlılık grafiği analizi ve satır düzeyinde uyumsuzluk raporlaması, kurumsal düzeydeki veri mühendisliği standartlarını bağımsız bir araca taşıyor.
🚀 Nasıl Denenir & Kaynaklar
Paganel henüz 1.0 sürümüne ulaşmamış olsa da, aktif geliştirme aşamasındadır ve Linux, macOS ile Windows için önceden derlenmiş ikili dosyalar sunar. Hızlıca test etmek ve Docker üzerinde örnek veritabanları ayağa kaldırmak için projenin GitHub deposundaki dokümantasyonu inceleyebilirsiniz. Kaynak kodlara ve hızlı başlangıç rehberine GitHub deposu üzerinden ulaşabilirsiniz.