- Mevcut veri backend’i geliştirmenin karmaşıklığı ve yavaşlığını çözerek, TypeScript veya Python ile veri analitiği backend’lerini hızlıca geliştirmeyi sağlayan açık kaynak bir framework
- Yerleşik stack (ClickHouse, Redpanda, Temporal) sunuyor ve ileride çeşitli bulut platformlarına genişlemesi planlanıyor
- Yerel geliştirmeyi basitleştirerek hızlı test ve anında hot reload desteği sağlıyor
- Çeşitli veri yoğun uygulamalar geliştirmek için uygun; gerçek zamanlı analiz, veri taşıma ve event streaming gibi kullanım alanlarına sahip
Moose
- Moose, yalnızca TypeScript veya Python koduyla veri analitiği backend’i kurmayı sağlayan bir framework’tür
- Mevcut veri backend’i geliştirme araçlarının yavaş ve karmaşık olma sorununu çözmek için vardır
-
Günümüz araçlarıyla analitik backend oluştururken yaşanan sorunlar
- Araçların dağınık olması
Kafka, ClickHouse, Postgres, dbt, Airflow gibi çok sayıda servisi entegre etmek zaman alır
- Şema uyumsuzluğu sorunu
Kod modelleri, veritabanı şeması, API doğrulaması ve mesaj formatları zamanla birbiriyle uyumsuz hale gelir
- Geliştirme iş akışının zorluğu
Yerelde test eksikliği, uzun dağıtım döngüleri ve sık bağlam değiştirme geliştirici verimliliğini düşürür
- Yalnızca SQL’e dayalı işleme
Aşina olunan programlama dilleri yerine sadece SQL kullanmak zorunda kalma rahatsızlığı vardır
-
Her şeyi doğrudan kendiniz kurduğunuzda ortaya çıkan sorunlar
- Basit bir alan ekleme için bile aşağıdaki işlerin tamamını manuel yapmak gerekir
- TypeScript/Python kod modelini değiştirme
- Veritabanı şemasını değiştirme
- Kafka topic’ini güncelleme
- Runtime doğrulamasını güncelleme
- Dönüşümleri ve sorguları güncelleme
- Her değişikliği güvenli biçimde test etmek her seferinde çok zaman ve emek ister
Moose’un çözüm yaklaşımı
-
Moose’un sundukları
- TypeScript veya Python kodunun kendisi, veri uygulaması mantığı ile altyapının tek doğruluk kaynağı olarak görev yapar
- Kod tabanlı olarak şunları garanti eder
- Tam tip güvenliği ve doğrulama
- Boilerplate kodun ortadan kaldırılması
- Hataların geliştirme aşamasında önceden yakalanması
-
Bağlam değiştirmenin ortadan kaldırılması
- Veritabanı tablo adlandırma kuralları, model/tablo alanlarının senkron olup olmadığı veya alanların nullable olup olmadığı gibi konuları düşünmek gerekmez
-
Yerel geliştirme
- Tek tıkla çalıştırma
Tek bir komutla tüm veri altyapısını yerelde çalıştırabilirsiniz
- Sıfır yapılandırma
Tüm bileşenler önceden yapılandırılmıştır; ek kurulum gerekmez
- Prodüksiyonla aynı mimari
Gerçek dağıtım ortamıyla aynı teknoloji stack’i kullanılır
- Gerçek zamanlı geri bildirim
Değişiklikler tüm stack’e anında yansır
-
Tipik geliştirme iş akışı
- Model eklediğinizde veya değiştirdiğinizde kaydetmeniz yeterlidir; yerel altyapıda anında hot reload uygulanır
- Yeni alan eklendiğinde API’ye, stream’e ve veritabanına hemen yansır
- Pipeline testleri de örnek veriyi yerel ingest API’sine göndererek anında doğrulanabilir
-
Hot reloading iş akışı
- Modeli değiştirip kaydetmeniz yeterlidir; değişiklikler otomatik olarak uygulanır
- Eklenen alanlar API doğrulamasına, veritabanı şemasına ve stream’lere otomatik olarak yansır
-
Modülerlik
- Yalnızca ihtiyaç duyduğunuz bileşenleri seçerek yapılandırabilirsiniz
Moose ile gelen yerleşik stack
- ClickHouse
Varsayılan olarak etkin OLAP veritabanı
- Redpanda
Kafka uyumlu event streaming platformu (devre dışı bırakılabilir)
- Temporal
Workflow orkestrasyon aracı (devre dışı bırakılabilir)
-
Planlanan genişlemeler
- Snowflake, Databricks, BigQuery
Bulut veri ambarı desteği planlanıyor
- Kafka, Kinesis, Pulsar
Çeşitli Kafka uyumlu event streaming platformları için destek planlanıyor
Moose ile neler geliştirilebilir
- Kullanıcıya dönük gerçek zamanlı analiz
Liderlik tabloları, grafikler ve metriklerin web/mobil uygulamalara entegre edilmesi
- BI ve veri ambarı
Çeşitli veri kaynaklarını toplayarak analitik veritabanı kurma ve rapor üretme
- Veri migrasyonu
Verilerin legacy sistemlerden modern veri backend’lerine taşınması
- Event streaming
Kafka, Redpanda gibi streaming platformlarındaki event’lerin gerçek zamanlı işlenmesi
- ETL işleri
Çeşitli kaynaklardaki verilerin düzenli olarak toplanıp analiz ortamına yüklenmesi
Henüz yorum yok.