Jednotka 4 / 11

Monitorovanie kapacity a výkonu: Čítanie metrík a plánovanie do budúcnosti

zisky:

  • Schopnosť správne interpretovať metriky s podporou umelej inteligencie pomocou percentilu (p95/p99) a základnej línie namiesto priemeru
  • Schopnosť oddeliť sezónnosť od trendu a vytvoriť projekciu kapacity ako optimisticko-pesimistický rozsah a nie ako jediné číslo
  • Pochopenie toho, že rozhodnutia o investíciách do zdrojov a prahových hodnotách alarmov sú ľudské, spolu s časom prípravy zdrojov a obchodným kontextom.

Monitorovanie kapacity a výkonu: čítanie metrík pomocou AI a plánovanie budúcnosti

Nemôžete vidieť zdravie systému na vlastné oči; Pochopíte to prostredníctvom metrík. Metrika je časovo závislá číselná hodnota merateľnej charakteristiky systému: využitie procesora, obsadenosť pamäte, voľné miesto na disku, latencia siete, požiadavky za sekundu. Monitorovanie výkonu priebežne zhromažďuje tieto metriky a odpovedá na otázku „je systém teraz v poriadku?“ Kapacitné plánovanie ide ešte o krok ďalej: Odpovedá na otázku „kedy budem pri tomto tempe nedostatočný, kedy by som mal kúpiť nové zdroje?“ Umelá inteligencia je tu vysoko kvalifikovaným pomocníkom pri interpretácii hromady metrík, označovaní anomálií, čítaní trendov a vytváraní budúcich projekcií. Jedno varovanie však prevláda predovšetkým: AI extrahuje vzory z historických údajov; Vy ste ten, kto robí rozhodnutia o investíciách do zdrojov, škálovaní a varovaní prahových hodnôt s kontextom.

V tejto jednotke sa monitorujú pojmy ako základná línia (normálna línia správania), anomália (odchýlka od normálu), percentil (percentil); Metrická interpretácia s AI; prognóza trendu a rastu; a naučíte sa nastaviť správny prah alarmu.

Priemerná lož: prečo percentil?

Najčastejšou chybou pri sledovaní je meranie všetkého priemerom. Povedzme, že váš čas odozvy je v priemere 200 ms. Znie to dobre. Ale 5 % používateľov môže čakať 8 sekúnd; Priemer toto skrýva. Preto odborníci používajú percentil: p95 = "95 % žiadostí je pod týmto časovým obdobím." Ak je doba odozvy p95 8 sekúnd, jeden z dvadsiatich používateľov má hroznú skúsenosť – priemer to nikdy neukáže. Keď AI poskytujete metriky, ujasnite si, ktorú štatistiku chcete: „interpretujte mi p50, p95 a p99, nie priemer.“ Tento jeden zvyk odhaľuje skryté problémy.

Tip: Pozrite sa na percentil pre každú metriku, ktorá sa týka používateľskej skúsenosti (čas odozvy, latencia); p95/p99 namiesto priemeru vás dostane k skutočnej trpiacej menšine. V metrikách zdrojov (CPU, pamäť) sa pozrite na maximálne aj trvalé hodnoty.

Neexistuje žiadna anomália bez základnej línie

Skôr ako zistíte, či je metrika „nenormálna“, musíte vedieť, že je „normálna“. Základná línia je typický rozsah správania systému počas zdravých dní: „CPU v tento pracovný deň na poludnie je zvyčajne 40–60 %“. Bez základnej línie nemôžete vedieť, či je hodnota 70 % strašidelná alebo normálna. Základnú líniu môžete nastaviť tak, že AI poskytnete historické zdravé údaje a poviete „extrahujte normálny rozsah a denný/týždenný vzor tejto metriky“. Potom interpretujete nové údaje podľa tejto základnej línie: "kde je táto hodnota v normále?" Anomália je významná a trvalá odchýlka od základnej línie – jeden náhly skok je často hluk.

Krok za krokom: projekcia kapacity

  1. Zhromaždite čistú a primeranú históriu. Trend vyžaduje aspoň niekoľko týždňov údajov, najlepšie mesačne. Projekcia vytvorená s malým množstvom údajov je odhad, nie predpoveď.
  2. Samostatná sezónnosť. Návštevnosť klesá cez víkend, zvyšuje sa na konci mesiaca a exploduje počas kampane. Povedzte AI tieto cykly, aby si nezamieňala rast so sezónnymi výkyvmi.
  3. Uvoľnite trend. "O koľko GB v priemere narástol tento disk za týždeň za posledných 8 týždňov?" AI počíta rýchlosť rastu.
  4. Požiadajte o projekciu, rozmiestnite ju. "Kedy bude pri tomto tempe disk plný na 90%?" — ale žiadajte optimistický/pesimistický rozsah, nie jeden dátum. Budúcnosť je neistá; nepárne číslo je nesprávna presnosť.
  5. Stanovte si hranicu rozhodovania s ľuďmi. Ak projekcia hovorí „Dokončí sa o 6 týždňov“, zvážite čas získavania (nákup, schválenie) a rozhodnete sa, či podniknete kroky ešte dnes.
  6. Nastavte budík správne. Veľmi citlivý alarm spôsobuje hluk a únavu z alarmu; príliš voľný budík zmešká udalosť. Získajte odporúčanie prahu od AI, ale konečný prah určte s vlastnou toleranciou rizika.

tri mini prípady

Prípad 1 – Priemer skrytý, p99 zobrazený. Jeden tím si myslel, že ich API je "180 ms v priemere, v pohode." Keď som dodal metriku AI a požiadal o interpretáciu percentilu, ukázalo sa, že p99 bol 6 400 ms – jedna zo sto požiadaviek bola pomalšia ako 6 sekúnd. Hlavnou príčinou bol pomalý dopyt do databázy. Zatiaľ čo priemer sa javil zdravý, menšina mala hrozný zážitok.

Prípad 2 – Projekcia varovaná 3 týždne vopred. Správca poskytol údaje o obsadenosti disku denníka AI. AI odvodila týždenný trend rastu ~7 GB a predpokladala, že pri súčasnom tempe by sa 90 % dosiahlo do 19 dní, s optimisticko-pesimistickým rozsahom 16–23 dní. Keďže dodávka nových diskov trvala 10 dní, tím okamžite objednal a zabránil výpadku skôr, ako k nemu došlo.

Prípad 3 – Návrat z falošnej anomálie. Monitorovací alarm sa spustil každú nedeľu večer a oznámil, že CPU stúpa na 95%. Pred panikou nechal inžinier AI zvýšiť základnú líniu: tento skok bol plánovanou záložnou úlohou, ktorá prebiehala každý týždeň v rovnakom čase, takže to bolo súčasťou normy. Nebola to anomália; základná línia chýbala. Prahová hodnota alarmu bola pre toto časové obdobie opravená a zbytočné nočné budenie je preč.

Štyri kopírovateľné šablóny

1) Metrická interpretácia (percentil):

Nižšie sú uvedené metriky času odozvy [služby] (skryté). Komentujte mi p50, p95 a p99, nie priemer. Aký je rozdiel medzi p99 a p50, aký problém s používateľskou skúsenosťou to naznačuje? Nepridávajte vymyslené hodnoty, len interpretujte údaje, ktoré vám dávam. Údaje: [metriky]

2) Odčítanie základnej línie:

Nižšie sú uvedené zdravé [metrické] údaje za posledné 4 týždne. Extrahujte (1) normálny rozsah (2) denného a týždenného vzoru (napr. nočná minimálna, najvyššia na poludnie) tejto metriky. Potom dám jedinú novú hodnotu; klasifikovať ako „normálne/pozor/nenormálne“ na základe tejto základnej línie.Údaje: [historická metrika]

3) Projekcia kapacity (s rozsahom):

Nižšie sú uvedené údaje o obsadenosti [zdroj] za posledných 8 týždňov. (1) Vypočítajte týždennú priemernú mieru rastu, (2) uveďte sezónne vplyvy, (3) odhadnite čas na dosiahnutie 90 % prahu pri súčasnej miere s OPTIMISTICKÝM a PEZIMISTICKÝM rozsahom. Uveďte jeden dátum, uveďte rozsah a zapíšte si svoje predpoklady. Údaje: [časový rad]

4) Odporúčanie prahovej hodnoty alarmu:

Moja základná hodnota pre [metric] je [rozsah]. Mojím cieľom je minimalizovať falošné poplachy bez toho, aby som vynechal skutočné problémy. Dajte mi odporúčanie pre (1) varovanie a (2) kritický prah, pričom každý z nich odôvodníte a posúdite riziko únavy z poplachu. Konečnú hranicu určím ja.

Slabá výzva / Silná výzva

Slabá výzva:

Je môj server pomalý?

Neexistuje žiadny kontext, žiadne metriky ani základná línia. Umelá inteligencia nepozná ani definíciu „pomalého“, ani nemá normálnu hodnotu na porovnanie. Odpoveď je zbytočný odhad.

Výkonná výzva:

Vaša úloha: špecialista na plánovanie kapacít. Nižšie je uvedených posledných 14 dní času odozvy p95 a údajov o požiadavkách/sekunde rozhrania API (maskované). Moja základná hodnota je 250-400 ms pre p95. Povedzte mi (1) označte dni, ktoré za posledných 14 dní prekročili východiskovú hodnotu, (2) povedzte mi, či existuje viditeľný vzťah medzi časom odozvy a zaťažením požiadavky (ako hypotéza), (3) predpovedajte, kam sa p95 posunie o 30 dní, ak bude tento trend pokračovať. Údaje: [časový rad]

Metrický typ

nesprávne meranie

presné meranie

čas odozvy

Len priemerné

p50, p95, p99

CPU/pamäť

okamžitá hodnota

Vrchol + trvalá + základná línia

rast disku

Dnešná obsadenosť

Týždenný trend + projekcia

Anomália

jediný odraz

Nepretržitá odchýlka od základnej línie

alarm

Ľubovoľný jeden prah

Odôvodnené varovanie + kritický prah

Časté chyby

  • Meranie všetkého priemerom. Priemer skrýva zlé skúsenosti niekoľkých; Pozri percentil.
  • Hľadanie anomálií bez základnej línie. Nemôžete povedať, že hodnota je abnormálna bez toho, aby ste vedeli, čo je normálne; Vyvoláte falošný poplach.
  • Zamieňanie sezónnosti za trend. Považovať vrchol kampane za trvalý rast a brať zbytočné zdroje stojí peniaze.
  • Spoliehanie sa na projekciu nepárneho čísla. „Presne 19 dní“ je nesprávna presnosť; Použite optimisticko-pesimistický rozsah.
  • Zabudnite na čas získavania. Tím, ktorý nezohľadní prah projekcie a čas nákupu spoločne, bude pristihnutý pri prerušení.
Pozor: Projekcia trendu AI predpokladá, že minulosť bude pokračovať do budúcnosti. Uvedenie nového produktu, migrácia zákazníkov alebo zmena architektúry narúšajú tento predpoklad. Vašou úlohou je korigovať projekciu s vaším kontextom.

V súhrne

Monitorovanie výkonu odpovedá na otázku "je to teraz dobré?" a kapacitné plánovanie odpovedá na otázku "kedy to nestačí?" Umelá inteligencia je silným partnerom pri interpretácii metrík, stanovovaní základných línií, označovaní anomálií a projektovaní trendov. Ale priemerné lži - použite percentil; Bez základnej línie neexistuje žiadna anomália – najprv stanovte normálne; oddeliť sezónnosť od trendu; a berte projekciu ako rozsah, nie ako jediné číslo. Rozhodnutia o investíciách do zdrojov a varovných prahových hodnotách sú ľudské, spolu s časom prípravy zdrojov a obchodným kontextom.

Aplikačná úloha

Vezmite posledných pár týždňov údajov pre zdroj (disk, pamäť, čas odozvy) z vašich vlastných systémov a zamaskujte citlivé oblasti. Odčítajte normálny rozsah a vzor pomocou vyššie uvedenej šablóny „Odčítanie základnej línie“. Potom nechajte šablónu „Projekcia kapacity“ predpovedať, kedy dosiahnete prahovú hodnotu s optimisticko-pesimistickým rozsahom. Nechajte si tiež interpretovať metriku času odozvy pomocou šablóny „percentil“ a zistite, či priemer niečo skrýva. Zapíšte si svoje zistenia a akciu, ktorú vykonáte, do 5 položiek.

kontrolný zoznam

  • [ ] Pozrel som sa na p95/p99 namiesto priemeru v metrikách doby odozvy?
  • [ ] Vytvoril som základnú líniu zo zdravých údajov predtým, ako som začal hľadať anomálie?
  • [ ] Rozlíšil som sezónne kolísanie od trvalého trendu?
  • [ ] Bral som projekciu skôr ako optimisticko-pesimistický rozsah než ako jediný dátum?
  • [ ] Vyhodnotil som čas získavania spolu s prahom projekcie?
  • [ ] Nastavil som prah alarmu na základe vlastnej tolerancie rizika a nie na základe odporúčania AI?