Jednotka 4 / 11

Sledování kapacity a výkonu: čtení metrik a plánování do budoucna

zisky:

  • Schopnost správně interpretovat metriky s podporou umělé inteligence pomocí percentilu (p95/p99) a základní linie namísto průměru
  • Schopnost oddělit sezónnost od trendu a vytvořit projekci kapacity jako optimisticko-pesimistický rozsah spíše než jako jediné číslo
  • Pochopení toho, že rozhodnutí o investicích do zdrojů a prahových hodnotách alarmů jsou lidské, spolu s dobou realizace zdrojů a obchodním kontextem.

Sledování kapacity a výkonu: čtení metrik pomocí umělé inteligence a plánování budoucnosti

Nemůžete vidět zdraví systému na vlastní oči; Pochopíte to pomocí metrik. Metrika je časově závislá číselná hodnota měřitelné charakteristiky systému: využití CPU, obsazenost paměti, volné místo na disku, latence sítě, požadavky za sekundu. Monitorování výkonu průběžně shromažďuje tyto metriky a odpovídá na otázku „je systém nyní v pořádku?“ Kapacitní plánování jde ještě o krok dále: Odpovídá na otázku „kdy při tomto tempu budu nedostatečný, kdy mám nakoupit nové zdroje?“ Zde je umělá inteligence vysoce kvalifikovaným pomocníkem při interpretaci hromad metrik, označování anomálií, čtení trendu a vytváření budoucích projekcí. Jedna námitka však převládá především: AI extrahuje vzory z historických dat; Vy jste ten, kdo rozhoduje o investicích do zdrojů, škálování a upozornění na prahové hodnoty s kontextem.

V této jednotce se monitorují pojmy jako základní linie (normální linie chování), anomálie (odchylka od normálu), percentil (percentil); Metrická interpretace s AI; prognóza trendu a růstu; a naučíte se nastavit správný práh alarmu.

Průměr lže: proč percentil?

Nejčastější chybou při sledování je měřit vše průměrem. Řekněme, že vaše doba odezvy je v průměru 200 ms. To zní dobře. Ale 5 % uživatelů může čekat 8 sekund; Průměr to skrývá. Proto profesionálové používají percentil: p95 = "95 % požadavků je pod tímto časovým obdobím." Pokud je doba odezvy p95 8 sekund, jeden z dvaceti uživatelů má hroznou zkušenost – průměr to nikdy neukáže. Když AI poskytujete metriky, ujasněte si, jakou statistiku chcete: „interpretujte mi p50, p95 a p99, ne průměr.“ Tento jeden zvyk odhaluje skryté problémy.

Tip: Podívejte se na percentil pro každou metriku, která se týká uživatelské zkušenosti (doba odezvy, latence); p95/p99 místo průměru vás dostane ke skutečné trpící menšině. V metrikách zdrojů (CPU, paměť) se podívejte na maximální i trvalé hodnoty.

Neexistuje žádná anomálie bez základní linie

Než zjistíte, zda je metrika „abnormální“, musíte vědět, že je „normální“. Základní čára je typický rozsah chování systému ve zdravých dnech: „CPU v tento pracovní den v poledne je obvykle 40–60 %“. Bez základní linie nemůžete vědět, zda je hodnota 70 % děsivá nebo normální. Základní linii můžete nastavit tak, že AI poskytnete historická zdravá data a řeknete „extrahujte normální rozsah a denní/týdenní vzorec této metriky“. Potom interpretujete nová data podle této základní linie: "kde je tato hodnota v normálu?" Anomálie je významná a trvalá odchylka od základní linie – jediný náhlý skok je často hluk.

Krok za krokem: projekce kapacity

  1. Sbírejte čistou a adekvátní historii. Trend vyžaduje alespoň několik týdnů dat, nejlépe měsíčně. Projekce vytvořená s malým množstvím dat je odhad, nikoli předpověď.
  2. Samostatná sezónnost. Návštěvnost o víkendu klesá, na konci měsíce se zvyšuje a během kampaně exploduje. Řekněte AI tyto cykly, aby si nepletla růst se sezónními výkyvy.
  3. Uvolněte trend. "O kolik GB průměrně narostl tento disk za týden za posledních 8 týdnů?" AI počítá tempo růstu.
  4. Požádejte o projekci, rozmístěte ji. "Při tomto tempu, kdy bude disk z 90 % plný?" — ale požádejte o optimistický/pesimistický rozsah, nikoli o jediné datum. Budoucnost je nejistá; liché číslo je falešná přesnost.
  5. Určete práh rozhodování s lidmi. Pokud projekce říká „Bude dokončena za 6 týdnů“, zvážíte dobu získávání zdrojů (nákup, schválení) a rozhodnete se, zda podniknete opatření ještě dnes.
  6. Nastavte budík správně. Velmi citlivý alarm vytváří hluk a únavu z alarmu; příliš volný alarm událost zmešká. Získejte doporučení prahu od AI, ale konečný práh určete s vlastní tolerancí rizika.

tři mini pouzdra

Případ 1 – Průměr skrytý, p99 zobrazen. Jeden tým si myslel, že jejich API je „průměrně 180 ms, v pohodě“. Když jsem předal metriku AI a požádal o interpretaci percentilu, ukázalo se, že p99 byl 6 400 ms – jeden ze sta požadavků byl pomalejší než 6 sekund. Hlavní příčinou byl pomalý databázový dotaz. Zatímco průměr se zdál zdravý, menšina měla hroznou zkušenost.

Případ 2 – Projekce varována 3 týdny předem. Administrátor předal údaje o obsazenosti disku protokolu AI. AI odvodila týdenní růstový trend ~7 GB a předpokládala, že při současném tempu by bylo 90 % dosaženo do 19 dnů, s optimisticko-pesimistickým rozmezím 16–23 dnů. Protože dodávka nových disků trvala 10 dní, tým okamžitě objednal a zabránil výpadku dříve, než k němu došlo.

Případ 3 – Návrat z falešné anomálie. Každou neděli večer se spustil monitorovací alarm a oznámil, že CPU stoupá na 95 %. Než zpanikařil, inženýr nechal AI zvýšit základní linii: tento skok byl plánovanou zálohovací úlohou, která probíhala každý týden ve stejnou dobu, takže to bylo součástí normy. Nebyla to anomálie; základní linie chyběla. Práh alarmu byl pro toto časové období opraven a zbytečná noční buzení jsou pryč.

Čtyři kopírovatelné šablony

1) Metrická interpretace (percentil):

Níže jsou uvedeny metriky doby odezvy [služby] (maskované). Komentujte mi p50, p95 a p99, ne průměr. Co znamená rozdíl mezi p99 a p50, jaký problém s uživatelskou zkušeností to znamená? Nepřidávejte vymyšlené hodnoty, pouze interpretujte data, která vám poskytnu. Údaje: [metriky]

2) Odečítání základní linie:

Níže jsou uvedena zdravá [metrická] data za poslední 4 týdny. Extrahujte (1) běžný rozsah (2) denní a týdenní vzorec (např. noční minimum, nejvyšší poledne) této metriky. Pak dám jedinou novou hodnotu; klasifikujte jej jako „normální/pozor/nenormální“ na základě této základní linie.Údaje: [historická metrika]

3) Projekce kapacity (s rozsahem):

Níže jsou údaje o obsazenosti [zdroj] za posledních 8 týdnů. (1) Vypočítejte týdenní průměrnou míru růstu, (2) uveďte sezónní vlivy, (3) odhadněte dobu dosažení 90% prahu při současném tempu, s OPTIMISTICKÝM a PESIMISTICKÝM rozsahem. Uveďte jedno datum, uveďte rozsah a zapište si své předpoklady. Údaje: [časová řada]

4) Doporučení prahové hodnoty alarmu:

Moje výchozí hodnota pro [metriku] je [rozsah]. Mým cílem je minimalizovat falešné poplachy, aniž bych vynechal skutečné problémy. Dejte mi doporučení pro (1) varování a (2) kritický práh, zdůvodněte každý z nich a zhodnoťte riziko únavy z poplachu. Konečnou hranici určím já.

Slabá výzva / Silná výzva

Slabá výzva:

Je můj server pomalý?

Neexistuje žádný kontext, žádné metriky ani základní linie. Umělá inteligence nezná definici „pomalého“ ani nemá normální hodnotu, se kterou by ji bylo možné porovnat. Odpověď je planý odhad.

Výkonná výzva:

Vaše role: specialista na plánování kapacit. Níže je uveden čas odezvy p95 za posledních 14 dní a data požadavků/sekundy API (maskovaná). Moje výchozí hodnota je 250-400 ms pro p95. Řekněte mi (1) označte dny, které se za posledních 14 dní vymkly ze základní linie, (2) řekněte mi, zda existuje viditelný vztah mezi dobou odezvy a zatížením požadavků (jako hypotéza), (3) předpovězte, kam se p95 posune za 30 dní, pokud bude tento trend pokračovat. Údaje: [časová řada]

Metrický typ

špatné měření

přesné měření

doba odezvy

Prostě průměr

p50, p95, p99

CPU/paměť

okamžitá hodnota

Vrchol + trvalé + základní linie

růst disku

Dnešní obsazenost

Týdenní trend + projekce

Anomálie

jediný odraz

Neustálá odchylka od základní linie

alarm

Libovolný jednoduchý práh

Odůvodněné varování + kritický práh

Časté chyby

  • Měření všeho průměrem. Průměr skrývá špatnou zkušenost mála; Viz percentil.
  • Hledání anomálií bez základní linie. Nemůžete říci, že hodnota je abnormální, aniž byste věděli, co je normální; Vyvoláte falešný poplach.
  • Záměna sezónnosti za trend. Považovat vrchol kampaně za trvalý růst a brát zbytečné zdroje stojí peníze.
  • Spoléhání se na projekci lichých čísel. „Přesně 19 dní“ je falešná přesnost; Použijte optimisticko-pesimistický rozsah.
  • Zapomínání na čas získávání zdrojů. Tým, který nezohlední práh projekce a dobu nákupu společně, bude chycen v přerušení.
Pozor: Projekce trendu AI předpokládá, že minulost bude pokračovat do budoucnosti. Uvedení nového produktu, migrace zákazníků nebo změna architektury narušují tento předpoklad. Vaším úkolem je korigovat projekci s vaším kontextem.

V souhrnu

Monitorování výkonu odpovídá na otázku „je to nyní dobré?“ a kapacitní plánování odpovídá na otázku "kdy to nestačí?" Umělá inteligence je mocným partnerem při interpretaci metrik, stanovování základních linií, označování anomálií a projekci trendů. Ale průměr lže – použijte percentil; Bez základní linie neexistuje žádná anomálie – nejprve stanovte normál; oddělit sezónnost od trendu; a berte projekci jako rozsah, ne jako jediné číslo. Rozhodnutí o investicích do zdrojů a prahových hodnotách výstrah jsou lidské, spolu s dobou realizace zdrojů a obchodním kontextem.

Aplikační úkol

Vezměte posledních několik týdnů dat pro zdroj (disk, paměť, doba odezvy) ze svých vlastních systémů a zamaskujte citlivé oblasti. Odečtěte normální rozsah a vzor pomocí výše uvedené šablony "Odčítání základní linie". Poté nechte šablonu „Projekce kapacity“ předpovědět, kdy dosáhnete prahové hodnoty s optimisticko-pesimistickým rozsahem. Nechte si také interpretovat metriku doby odezvy pomocí šablony „percentil“ a zjistěte, zda je něco, co průměr skrývá. Zapište si svá zjištění a akci, kterou provedete, do 5 položek.

kontrolní seznam

  • [ ] Díval jsem se v metrikách doby odezvy na p95/p99 místo na průměr?
  • [ ] Vytvořil jsem před hledáním anomálií základní linii ze zdravých dat?
  • [ ] Rozlišil jsem sezónní výkyvy od trvalého trendu?
  • [ ] Bral jsem projekci spíše jako optimisticko-pesimistické rozmezí než jako jediné datum?
  • [ ] Vyhodnotil jsem dobu získávání zdrojů společně s prahem projekce?
  • [ ] Nastavil jsem práh alarmu na základě své vlastní tolerance rizika a ne na základě doporučení AI?