- PostgreSQL veritabanları arasında verileri taşımanın ve dönüştürmenin en kolay yolunu sunar
- Gerçek zamanlı akış: PostgreSQL mantıksal çoğaltmasını kullanarak veri değişikliklerini neredeyse gerçek zamanlı olarak akışa alır
- Toplu kopyalama: Paralel işlenebilen toplu kopyalama ile ilk veri senkronizasyonunu hızlıca gerçekleştirir
- Güçlü dönüşümler: Regex tabanlı dönüşümler uygular, hassas verileri maskeler ve sütun değerlerine göre filtreleme yapar
- Esnek yönlendirme: Verileri tablolar arasında sorunsuz biçimde yönlendirir; farklı adlı tablolara ya da aynı tabloya, özel sütun eşlemeleriyle yönlendirme yapar
- Dönüşüm kuralı örnekleri
- E-posta adresi maskeleme: E-posta sütununu maskeleme karakterlerine dönüştürür.
- Telefon numarası biçimlendirme: Regex kullanarak telefon numarası biçimini dönüştürür.
- Tablo yönlendirme ve sütun eşleme
- Esnek tablo yönlendirme:
users tablosunu customers tablosuna yönlendirir; id ve username alanlarını customer_id ve customer_name olarak eşler.
- Çoklu tablo yönlendirme:
orders tablosunu transactions tablosuna yönlendirir; id ve total_amount alanlarını transaction_id ve amount olarak eşler.
- Yaygın kullanım senaryoları
- PostgreSQL DB'leri arasında gerçek zamanlı veri çoğaltma
- Veri dönüşümü içeren ETL pipeline'ları kurma
- Veri yeniden yönlendirme, maskeleme ve filtreleme
- Kesinti olmadan veritabanı migrasyonu gerçekleştirme
- PostgreSQL üzerinde event streaming
- Nasıl çalışır
- pg_flo, veri değişikliklerini yakalayıp akışa almak için PostgreSQL'in mantıksal çoğaltma sisteminden yararlanır.
- NATS'i mesaj aracısı olarak kullanarak WAL'den okumayı replikatör ve worker süreçlerinden ayırır; böylece esneklik ve ölçeklenebilirlik sağlar.
- Dönüştürme ve filtreleme işlemleri, veri hedefe ulaşmadan önce uygulanır.
1 yorum
Hacker News yorumları
pg_flo projesi oldukça ilgi çekici görünüyor; özellikle S3’e arşivleme ve daha uygun maliyetli araç sürümü cazip
PostgreSQL mantıksal replikasyonunu kullanarak ana veritabanındaki verileri temizleyen ve S3’e arşivleyen bir proje üzerinde çalışılıyor
Postgres CDC çözümleri araştırılıyor ve pg_flo’nun yardımcı olup olamayacağı merak ediliyor
Debezium’a bir alternatif olabilmesi umuluyor
pglogical, Postgres içinde çalışabiliyor; ancak pg_flo bir eklenti değil, harici bir servis gibi görünüyor
Bu aracı denemek için büyük heyecan var
Sequin ile kıyaslandığında nasıl farklılaştığı merak ediliyor
Buna benzer bir araç aranıyordu; zamanlaması mükemmel
S3’e yedek almaktansa replikasyon kullanmanın daha iyi olup olmayacağı merak ediliyor
Çok havalı bir araç