Veri Ambarı Maliyet Kontrolü: Çeyreklik Temizlik Ritüeli

Veri Platformu veri-ambari, snowflake

Snowflake, BigQuery ve Redshift faturaları CFO sorana kadar sessizce büyür. Acil maliyet kesintilerine gerek bırakmayan beş adımlı çeyreklik ritüel.

  • Yazar: Orzed Team
  • 1 dk okuma
Önemli çıkarımlar
  • En pahalı sorgu nadiren tek bir devasa sorgudur; genellikle günde 100.000 kez çalışan küçük bir zamanlanmış sorgudur.
  • Tipik bir veri ambarındaki tablolaştırılmış (materialised) tabloların yarısı son 30 günde hiç sorgulanmamıştır.
  • Kimsenin açmadığı BI panelleri arka planda takvimle veri çekmeye devam eder; zamanlayıcıyı durdurun.
  • Ekip veya ürün bazlı maliyet ilişkilendirmesi (attribution), önceliklendirme konuşmalarının tek dürüst temelidir.

Bir finans ekibi mühendisliğe şu e-postayı iletti: “Veri ambarı faturamız bu çeyrekte %47 arttı, lütfen açıklayın.” İki haftalık inceleme sonucunda egzotik bir teknik sorun değil, altı ay önce pazarlama ekibinin kurduğu bir BI paneli bulduk. Panel her 15 dakikada bir 800 milyon satırı tarıyordu, son üç aydır tek bir kişi bile paneli açmamıştı ve tek başına çeyrekte 18.000 dolar yakıyordu.

Ekiple birlikte çeyreklik maliyet ritüelini kurduk; kullanım artmaya devam etmesine rağmen bir sonraki çeyrek faturası %31 daha düşük geldi.

Beş Adımlı Çeyreklik Ritüel

  1. Toplam harcamaya göre en pahalı 10 sorguyu çekin: Sorgu geçmişini query_hash bazında gruplayıp toplam kredi kullanımına göre sıralayın. Zirvedekiler nadiren analist sorgularıdır; hemen her zaman binlerce kez çalışan zamanlanmış işlerdir.
  2. En pahalı 10 tabloyu ve son sorgulanma tarihlerini çıkarın: Yüksek depolama ve dbt yenileme maliyeti yazan ancak son 30 günde hiç okunmamış tabloları arşivleyin veya silin.
  3. BI panellerini erişim sıklığına göre denetleyin: Looker, Tableau veya Metabase erişim loglarını yenileme takvimleriyle eşleştirin. 60-90 gündür açılmayan panellerin otomatik yenilenmesini durdurun.
  4. Harcamayı ekip veya ürün bazında etiketleyin: Rol ve kullanıcı eşleştirmesiyle hangi ekibin ne kadar harcadığını görünür kılın.
  5. Aksiyonları görev kuyruğunda takip edin: Sorguyu optimize edin, yenileme sıklığını düşürün, tabloyu silin veya işi daha küçük bir ambar katmanına taşıyın.

Regresyonu Önleyen Mühendislik Hijyeni

Ritüelin tek seferlik bir kampanya olarak kalmaması için tek bir sorumlu atanmalı ve her çeyrekte iki gün bu işe ayrılmalıdır. Ayrıca yeni zamanlanmış sorgular için kısa bir maliyet incelemesi yapmak, 90 gün açılmayan panelleri otomatik duraklatmak ve dbt PR’larında tahmini maliyet etkisini göstermek faturanın sessizce geri şişmesini kalıcı olarak önler.

Sıkça sorulanlar

Sıkça sorulan sorular

Tasarruf için Snowflake'ten BigQuery'ye (veya tersine) geçmeli miyiz?

Neredeyse hiçbir zaman doğru hamle değildir. 3 ila 12 ay süren taşıma maliyeti, iki platform arasındaki fiyat farkını fazlasıyla aşar. Önce mevcut platformunuz içindeki israfı temizleyin.

Rezerve kapasite sözleşmeleri imzalamaya değer mi?

Kullanımınız öngörülebilir ve sabitse %20-40 indirim sağlar. Ancak kullanımınız dalgalıysa veya henüz yukarıdaki çeyreklik temizliği yapmadıysanız israfı sözleşmeyle kilitlemiş olursunuz.

Analistlerin anlık (ad-hoc) sorgularını nasıl yönetmeliyiz?

Analistler için canlı üretim ambarından ayrı, küçük boyutlu ve kullanıcı başı harcama tavanı (resource monitor) olan özel bir sanal ambar tanımlayın.