Ders 14 / 14
Yedekleme ve Geri Yükleme
Anlık görüntü ile sürekli günlüğün karşılaştırılması: sıklık tarandığında kaybedilen pencerenin saklama ücretiyle birlikte sayılması, yirmi dört saatlik anlık görüntü artı yedi günlük günlüğün saatlik anlık görüntüden hem ucuz hem altmış kat dar çıkması, geri yükleme süresinin dört bileşene ayrılıp elli sekiz dakikalık tabanının bulunması, ve yedeklerin hizmetin kendi biçiminde olması nedeniyle taşınabilir kopyanın ayda üç yüz bir birimden başlayan ek maliyeti.
İçindekiler
Bir önceki ders verinin nerede durduğunu ve taşınmasının ne tuttuğunu kalem kalem çıkardı. Yedek akışı orada sıradan bir satırdı: ayda altı yüz GB, hedefine göre altı yüz ya da bin iki yüz birim.
Yedek taşındığı için değil geri alınabildiği için vardır: bir gün yanlış bir toplu güncelleme bulunduğunda hangi ana dönülebileceğidir. Yönetilen bir veri katmanında bu soru artık elde tutulan bir dosyaya değil, sağlayıcının anlık görüntü takvimine ve tuttuğu günlüklere bağlıdır.
Yedekleme kapsamı ve geri yükleme tatbikatı daha önce ölçüldü; bu ders onu tekrarlamaz, girdi alır. Burada sayılan üç şey vardır: kaybedilen pencerenin saklama ücretiyle takası, geri yükleme süresinin bileşenleri, ve yedeğin kimin biçiminde durduğu.
- YV37. Kurgu bölgesel ölçüm ağının iş emri veri katmanı 220 GB’dir; yirmi dört saatte verinin yüzde dördü değişir ve daha kısa aralıklarda değişen pay üstel olarak azalır, çünkü aynı bloklar tekrar tekrar yazılır.
- YV38. Sürekli günlük günde 46 GB üretir ve altmış saniyede bir arşivlenir. Anlık görüntüler otuz gün saklanır. İkisi de kurgudur.
- YV39. Fiyat kurgudur, para biriminin adı birimdir: yedek saklaması GB başına ayda 0,9 birim; aktarım GB başına aynı alanda 0, komşu alanda 1, komşu bölgede 2, internete 9 birimdir.
- YV40. Geri yükleme hızları kurgudur: yeni örnek açma 210 saniye sabit, yükleme 95 MB/sn, günlüğü ileri sarma 12 MB/sn, doğrulama 260 MB/sn. İleri sarma en yavaş adımdır, çünkü kayıtlar tek tek uygulanır.
- YV41. Mantıksal dışa aktarım 40 MB/sn okur, sıkışma oranı 0,38’dir; dışa aktarılmış kopyadan geri yükleme 26 MB/sn’dir, çünkü indeksler yeniden kurulur. Taşınabilir kopya haftada bir alınır, ayda dördü saklanır. Hepsi kurgudur.
// yedek/donus.mjs — model: yonetilen veri katmaninda yedekleme ve zaman noktasina donus. // Yedekleme kapsami ve geri yukleme tatbikati M22/K07'de olculdu, burada tekrarlanmaz. // Boyutlar, hizlar ve fiyatlar kurgudur; para biriminin adi "birim"dir. Rastgelelik yok. const VERI_GB = 220, GUN_DEGISIM = 0.04, USTEL = 0.7; // 24 saatte degisen pay; kisalma usteli const GUNLUK_GB = 46, FIYAT = 0.9; // surekli gunluk uretimi GB/gun; birim/GB-ay const ANLIK_GUN = 30, ARSIV_SN = 60; // anlik goruntu saklamasi; gunluk arsivleme araligi const degisenPay = (saat) => GUN_DEGISIM * Math.pow(saat / 24, USTEL); const anlikGB = (saat) => VERI_GB + (ANLIK_GUN * 24 / saat) * degisenPay(saat) * VERI_GB; const sutun = (E, sol = 1) => (h) => h.map((d, i) => String(d)[i < sol ? "padEnd" : "padStart"](E[i])).join(""); const y1 = sutun([28, 16, 16, 14, 13, 16]); console.log(y1(["duzen", "kayip penceresi", "surekli donus", "en eski nokta", "saklanan GB", "ucret(birim/ay)"])); const satir = (ad, saat, gunlukGun) => { const gb = anlikGB(saat) + gunlukGun * GUNLUK_GB; console.log(y1([ad, gunlukGun ? ARSIV_SN + " sn" : saat + " sa", gunlukGun ? gunlukGun + " gun" : "yok", ANLIK_GUN + " gun", gb.toFixed(0), (gb * FIYAT).toFixed(0)])); }; for (const saat of [24, 12, 6, 3, 1]) satir(`anlik goruntu ${saat} sa`, saat, 0); for (const gun of [1, 7, 35]) satir(`24 sa + gunluk ${gun} gun`, 24, gun); // --- Geri yukleme suresi bilesenlerine ayrilir ----------------------------------- const ORNEK_SN = 210, YUKLE_MBS = 95, ILERI_MBS = 12, DOGRU_MBS = 260; const gunlukSaat = (gb) => GUNLUK_GB / 24 * (gb / VERI_GB); // saatte uretilen gunluk GB const geriYukle = (gb, mesafe) => { const yukle = gb * 1024 / YUKLE_MBS, ileri = gunlukSaat(gb) * mesafe * 1024 / ILERI_MBS; const dogru = gb * 1024 / DOGRU_MBS; return { yukle, ileri, dogru, toplam: ORNEK_SN + yukle + ileri + dogru }; }; const y2 = sutun([14, 12, 15, 19, 17, 14, 10]); console.log("\n" + y2(["veri (GB)", "ornek (sn)", "yukleme (sn)", "ileri sarma (sn)", "dogrulama (sn)", "toplam (sn)", "saat"])); for (const gb of [55, 110, 220, 440, 880]) { const r = geriYukle(gb, 18); console.log(y2([gb, ORNEK_SN, r.yukle.toFixed(0), r.ileri.toFixed(0), r.dogru.toFixed(0), r.toplam.toFixed(0), (r.toplam / 3600).toFixed(2)])); } const TABAN = ORNEK_SN + VERI_GB * 1024 / YUKLE_MBS + VERI_GB * 1024 / DOGRU_MBS; const y3 = sutun([22, 17, 19, 15, 17]); console.log("\n" + y3(["anlik goruntu araligi", "en kotu mesafe", "ileri sarma (sn)", "toplam (saat)", "ucret(birim/ay)"])); for (const saat of [24, 12, 6, 3, 1]) { const r = geriYukle(VERI_GB, saat); console.log(y3([saat + " sa", saat + " sa", r.ileri.toFixed(0), (r.toplam / 3600).toFixed(2), (anlikGB(saat) * FIYAT).toFixed(0)])); } console.log(`taban (ornek + yukleme + dogrulama, ileri sarma sifir): ${(TABAN / 3600).toFixed(2)} saat`); // --- Disa aktarilabilir yedek --------------------------------------------------- // Hizmetin kendi yedegi kendi bicimindedir. Tasinabilir kopya mantiksal disa aktarimdir. const SIKISMA = 0.38, HAFTALIK = 4, OKUMA_MBS = 40, YUKLEME_MBS = 26; const CIKIS = { "ayni alan": 0, "komsu alan": 1, "komsu bolge": 2, "internete": 9 }; const KOPYA_GB = VERI_GB * SIKISMA, HIZMET = (anlikGB(24) + 7 * GUNLUK_GB) * FIYAT; const y4 = sutun([14, 12, 16, 18, 16, 16]); console.log("\n" + y4(["hedef", "birim/GB", "aktarim(ay)", "saklama(ay)", "ek toplam", "hizmet + ek"])); for (const [ad, birim] of Object.entries(CIKIS)) { const aktarim = KOPYA_GB * HAFTALIK * birim, saklama = KOPYA_GB * HAFTALIK * FIYAT; console.log(y4([ad, birim, aktarim.toFixed(0), saklama.toFixed(0), (aktarim + saklama).toFixed(0), (HIZMET + aktarim + saklama).toFixed(0)])); } console.log(`hizmetin kendi yedegi ${HIZMET.toFixed(0)} birim/ay; tasinabilir kopya ` + `${KOPYA_GB.toFixed(1)} GB x ${HAFTALIK}/ay (sikisma ${SIKISMA}).`); console.log(`disa aktarim ${(VERI_GB * 1024 / OKUMA_MBS / 3600).toFixed(2)} sa (${OKUMA_MBS} MB/sn); ` + `ondan geri yukleme ${(VERI_GB * 1024 / YUKLEME_MBS / 3600).toFixed(2)} sa (${YUKLEME_MBS} MB/sn, ` + `indeksler yeniden kurulur) — hizmetin kendi donusunun ` + `${(VERI_GB * 1024 / YUKLEME_MBS / geriYukle(VERI_GB, 1).toplam).toFixed(1)} kati.`);
duzen kayip penceresi surekli donus en eski nokta saklanan GB ucret(birim/ay) anlik goruntu 24 sa 24 sa yok 30 gun 484 436 anlik goruntu 12 sa 12 sa yok 30 gun 545 491 anlik goruntu 6 sa 6 sa yok 30 gun 620 558 anlik goruntu 3 sa 3 sa yok 30 gun 713 641 anlik goruntu 1 sa 1 sa yok 30 gun 905 814 24 sa + gunluk 1 gun 60 sn 1 gun 30 gun 530 477 24 sa + gunluk 7 gun 60 sn 7 gun 30 gun 806 725 24 sa + gunluk 35 gun 60 sn 35 gun 30 gun 2094 1885 veri (GB) ornek (sn) yukleme (sn) ileri sarma (sn) dogrulama (sn) toplam (sn) saat 55 210 593 736 217 1755 0.49 110 210 1186 1472 433 3301 0.92 220 210 2371 2944 866 6392 1.78 440 210 4743 5888 1733 12574 3.49 880 210 9485 11776 3466 24937 6.93 anlik goruntu araligi en kotu mesafe ileri sarma (sn) toplam (saat) ucret(birim/ay) 24 sa 24 sa 3925 2.05 436 12 sa 12 sa 1963 1.50 491 6 sa 6 sa 981 1.23 558 3 sa 3 sa 491 1.09 641 1 sa 1 sa 164 1.00 814 taban (ornek + yukleme + dogrulama, ileri sarma sifir): 0.96 saat hedef birim/GB aktarim(ay) saklama(ay) ek toplam hizmet + ek ayni alan 0 0 301 301 1026 komsu alan 1 334 301 635 1361 komsu bolge 2 669 301 970 1695 internete 9 3010 301 3311 4036 hizmetin kendi yedegi 725 birim/ay; tasinabilir kopya 83.6 GB x 4/ay (sikisma 0.38). disa aktarim 1.56 sa (40 MB/sn); ondan geri yukleme 2.41 sa (26 MB/sn, indeksler yeniden kurulur) — hizmetin kendi donusunun 2.4 kati.
Pencere mi, Fatura mı
Birinci tablonun ilk beş satırı yalnız anlık görüntüyle çalışıyor. Sıklığı yirmi dört saatten bir saate çekmek kaybedilen pencereyi yirmi dört kat daraltıyor ve saklamayı 484 GB’den 905 GB’ye çıkarıyor — fatura 436 birimden 814 birime, yüzde seksen yedi artış.
Saklanan baytın büyümesi ters görünür: daha sık anlık görüntü her seferinde daha az değişen bayt taşır. Sayı yine de büyüyor, çünkü aynı bloklar aralık kısaldıkça birden çok anlık görüntüde yer alır. Sıklığı artırmanın bedeli istek sayısı değil, tekrardır.
Son üç satır sürekli günlüğü açıyor ve tabloyu yeniden yazıyor. Yirmi dört saatlik anlık görüntüye yedi günlük günlük eklendiğinde kaybedilen pencere altmış saniyeye iniyor ve fatura 725 birim oluyor; saatlik anlık görüntü ise 814 birime bir saatlik pencere veriyor. Daha ucuz olan seçenek, pencereyi altmış kat daha çok daraltıyor. Anlık görüntü sıklığını artırmak, sürekli günlüğün yerini tutmaz.
Üçüncü ve dördüncü sütun sınırı gösteriyor. Sürekli dönüş penceresi günlüğün saklama süresidir: yedi günlük düzende son yedi günün herhangi bir saniyesine dönülebilir. En eski ayrık nokta ise otuz gündür — yirmi gün önceki anlık görüntüye dönülür, o günün öğleden sonrasına dönülemez. Fatura birinciyle ölçeklenir: otuz beş günlük günlük 2.094 GB ve 1.885 birim, yedi günlüğün iki buçuk katı.
Geri Yüklemenin Tabanı
İkinci tablo süreyi dört bileşene ayırıyor. Yeni örnek açma 210 saniyede sabittir ve payı veri büyüdükçe düşer: 55 GB’de toplamın yüzde on ikisi, 880 GB’de yüzde biri. Yükleme ve doğrulama boyutla doğrusal büyür. İleri sarma iki kere büyür — veri büyüdükçe günlük üretimi de artar — ve 220 GB’de 2.944 saniyeyle en büyük bileşendir.
Buradan bir tasarım kararı çıkıyor: geri yükleme süresini belirleyen şey veri boyutu kadar, hedef noktanın son anlık görüntüden ne kadar uzakta olduğudur. Yirmi dört saatlik aralıkta en kötü hâl 3.925 saniyelik ileri sarmadır ve toplam 2,05 saat; bir saatlik aralıkta ileri sarma 164 saniyeye iner, toplam 1,00 saat olur.
Süreyi yarıya indirmenin bedeli birinci tablodadır: 436 birimden 814 birime. Ve iniş burada durur: örnek açma, yükleme ve doğrulama toplamı 0,96 saattir ve anlık görüntü aralığı sıfıra yaklaştırılsa bile bu tabanın altına inilmez. Sürekli günlük kaybedilen pencereyi indirir, geri yükleme süresini indirmez. İki sayı iki ayrı kalemden satın alınır.
Devredilen Karar
“Yönetilen hizmette yedekleme otomatiktir” cümlesi dört kalemi gizler: yedeğin nasıl alındığı, hangi biçimde tutulduğu, nerede saklandığı ve nasıl doğrulandığı sağlayıcıdadır. Yukarıdaki 95, 12 ve 260 MB/sn de yapılandırma satırı değil, hizmetin verdiği sayıdır.
Elde kalan üç kalem bu dersin tablolarını doğrudan belirliyor: saklama süresi (birinci tablonun üçüncü ve dördüncü sütunu), şifreleme anahtarının kimde durduğu, ve bölge dışına kopyalanıp kopyalanmayacağı (son tablonun hedef sütunu). Yedi kalemin dördü devredilmiş, üçü eldedir; elde kalan üçün ikisi doğrudan bir aktarım kalemi yazar.
Şifreleme anahtarı en sessizidir: sağlayıcının deposundaysa yedek okunabilir ama taşınabilir değildir, sende ise kaybedilen anahtar yedeği de siler. Bu kalem faturaya hiç yazılmaz.
Yedek Kimin Biçiminde
Son tablo bu dersin geri alınamayan kalemini ölçüyor. Hizmetin aldığı yedek kendi biçimindedir: başka bir yere yüklenemez, başka bir motora verilemez. Taşınabilir kopya ayrıca üretilir — mantıksal dışa aktarım, 220 GB için 1,56 saat okuma.
Ek maliyet iki kalemdir. Sıkışmış 83,6 GB’lik dört kopya ayda 301 birim saklama tutar; aktarım kalemi hedefe bağlıdır: aynı alanda sıfır, komşu alanda 334, komşu bölgede 669, internete 3.010 birim. Hizmetin kendi yedeği 725 birimdir; taşınabilirlik eklemek toplamı aynı alanda 1.026 birime (yüzde 41), komşu bölgede 1.695’e (yüzde 134) çıkarır.
Üçüncü bedel süredir: dışa aktarılmış kopyadan geri yükleme 2,41 saat, hizmetin kendi dönüşünün 2,4 katı. Taşınabilir yedek yalnız pahalı değil, yavaş bir yedektir.
Bu kalem M23/K01’in çıkış sütununa bir cümleyle bağlanır: taşınabilir yedek, çıkış maliyetinin taksitle ödenmesidir. Ödenmediğinde tasarruf gerçektir ve bedeli, ayrılma günü tek seferde çıkar.
Özet
- Anlık görüntü sıklığını yirmi dört saatten bir saate çekmek pencereyi yirmi dört kat daraltıp faturayı 436’dan 814 birime çıkarıyor: sıcak bloklar birden çok anlık görüntüde tekrarlanıyor.
- Yirmi dört saatlik anlık görüntü artı yedi günlük sürekli günlük pencereyi altmış saniyeye indiriyor ve 725 birim tutuyor: saatlik anlık görüntüden hem ucuz hem altmış kat dar.
- Sürekli dönüş penceresi günlüğün saklama süresidir, en eski ayrık nokta anlık görüntününki: yedi güne kadar herhangi bir saniyeye, otuz güne kadar yalnız belirli anlara dönülebilir.
- Geri yükleme dört bileşendir ve tabanı 0,96 saattir; ileri sarma 220 GB’de 2.944 saniyeyle en büyük bileşendir ve yalnız anlık görüntü aralığıyla kısalır.
- Yedi karar kaleminin dördü devredilmiştir; elde kalan üçün ikisi doğrudan aktarım ücreti yazar. Yedek biçimi taşınamaz: taşınabilir kopya ayda 301 ile 3.311 birim ekler, ondan dönüş 2,4 kat yavaştır.
Kurs Kapanışı
| Ders | Devredilen karar | Geri alınamayan kalem | Çıkış ya da aktarım bedeli |
|---|---|---|---|
| Nesne Depolama | yerleşim, çoğaltma, onarım | anahtar düzeni: 2.481.240 istek | 2,77 GiB → 0,055 / 0,236 birim |
| Depolama Sınıfları | dayanıklılık, dört sınıfta aynı | en az saklama borcu: dönüş 0,338 birim | 276,3 GiB getirme → 23,48 birim |
| Sürümleme ve Yaşam Döngüsü | kuralın işletilmesi | sürümleme: kapatınca 93,6 GiB kalır | 8.931.900 geçiş → 239,75 birim |
| Blok Depolama | diskler, çoğaltma, onarım | boyut küçülmez: yılda 1.056 birim | 110 GiB anlık görüntü → 2,20 / 9,35 |
| Dosya Depolama | üst veri sunucusu, büyüme | erişim protokolü: 54 noktanın 30’u | 640 GiB → 12,80 / 54,40 birim |
| Arşiv Depolama | saklama ortamı, okunabilirlik | 180 günlük borç: 4,5 ay boş ödeme | 297,9 GiB → 25,32 birim |
| Erişim Denetimi | yalnız doğrulama | üretilmiş bağlantı: iptali 3.360.000 kırar | sızan kova: 184,8 GiB → 15,71 birim |
| Yönetilen İlişkisel Veritabanı | 28 kalemin 8’i; 9’u erişilemez | 11 kalemin 4’ü tek yönlü | 220 GB → 3,97 saat, 1.980 birim |
| Okuma Kopyaları | çoğaltma mekaniği | yükseltilen kopya: 220 GB tam kopya | 1.370 GB/ay/kopya → 2.741 birim |
| Yönetilen Anahtar–Değer | bölümleme ve dengeleme | bölüm anahtarı: 8 saat, 518,4 bin birim | 62,2 GB dışa aktarım → 560 birim |
| İkincil Dizinler ve Akışlar | dizin kurulumu ve güncellemesi | kaçırılan pencere: 30 saatte 960K olay | 41,5 GB/ay olay → 83 / 373 birim |
| Yönetilen Önbellek | 17 kalemin 7’si | bekleyen 500 kayıt; parça sayısı sabit | başka alan → 722 birim/ay |
| Veri Aktarımı ve Çıkış | 9 kalemin 4’ü: fiyat listesi | biriken veri: 33.600 GB → 67.200 birim | 6.180 GB: 1.440 → 7.320 birim |
| Yedekleme ve Geri Yükleme | yedeğin alınması ve doğrulaması | yedek biçimi: dışa aktarım +301 birim | 83,6 GB x 4 → 0 / 334 / 669 / 3.010 |
Üçüncü sütun on dört satırda üç aileye ayrılıyor. Altı satır şema ve biçimdir: anahtar düzeni, erişim protokolü, harmanlama seçimi, bölüm anahtarı, parça sayısı ve yedek biçimi — hiçbiri veriyi yeniden yazmadan değişmez. Beş satır peşin ödenmiş ya da birikmiş bayttır: en az saklama borcu, sürümleme birikimi, arşivin yüz seksen günü, küçültülemeyen birim ve biriken verinin kendisi; bunlarda karar geri alınır, ücret alınmaz. Üç satır kapanmış zaman penceresidir: üretilmiş imzalı bağlantı, kopanan çoğaltma bağı ve kaçırılan olay penceresi.
Dördüncü sütun on dört satırda aynı yönü gösteriyor: veri girerken hiçbir satırda ücret yazılmadı, çıkması her satırda ücretlendi ve ücreti nereye gittiğiyle ölçüldü. Kursun kuralı budur: veri girerken ucuz, çıkarken pahalıdır — ve kiralanan veri katmanında asıl bağlayıcı kalem fiyat değil, geri alınamayan şemadır. Faturayı ödemeyi seçebilirsin; altı satırlık şema ailesini ödeyerek geri alamazsın.
Üç kurs boyunca makine kiralandı, ağ kiralandı, veri kiralandı. Hepsinin altında hâlâ aynı şey duruyor: sürekli çalışan bir sunucu. Uygulama örnekleri gece üçte de ayakta, ölçüm ağının panosu hiç istek gelmese de bekliyor ve ikisi de saat başına faturalanıyor. Sonraki kurs — M23/K04 Sunucusuz ve Kenar Bilişim — bunu soruyor: sürekli çalışan sunucunun kendisi de kiralanabilir mi, yoksa yalnız çalıştığı saniyeler mi?
İlerlemeni kaydetmek ve not almak için Giriş yap
Notlarım
Not almak için giriş yapmalısın.