Vad är metrisk kardinalitet, och varför kan AI-observabilitet bli dyrt?

Eva Wong är Teknisk skribent och den boende fixaren på ZimaSpace. En livslång nörd med en passion för hemma-labb och öppen källkod, hon specialiserar sig på att översätta komplexa tekniska koncept till tillgängliga, praktiska guider. Eva tror att självhosting ska vara roligt, inte skrämmande. Genom sina handledningar ger hon gemenskapen verktyg att avmystifiera hårdvaruinstallationer, från att bygga sin första NAS till att bemästra Docker-containrar.

Metrisk kardinalitet är antalet unika kombinationer av etiketter som lagras som tidsserier, och obegränsade AI-etiketter kan oväntat mångdubbla resursanvändningen.

Ett latensmått verkar ofarligt tills det etiketteras med modell, rutt, användare, verktyg, status, kvantisering och rått begärande-ID. Varje observerad kombination blir en separat serie med kostnader för indexering, minne, frågor och lagringstid. AI-stackar genererar många naturligt unika identifierare, så kostnaden för observerbarhet kan växa snabbare än antalet begäranden, även på en självhostad server utan någon molnfaktura.

Varje unik etikettuppsättning skapar ytterligare en tidsserie

Ett metriknamn plus en komplett uppsättning etikettvärden identifierar en serie. Tio modeller, fem rutter, fyra statusar och tjugo verktyg kan skapa tusentals möjliga kombinationer innan någon användar- eller begärandeidentifierare läggs till. Det faktiska antalet beror på vilka kombinationer som faktiskt observeras, inte bara på vilka etiketter som deklareras.

Prometheus riktlinjer för etikettkardinalitet påpekar att varje etikettuppsättning ökar kostnaderna för RAM, CPU, disk och nätverk och rekommenderar att man undersöker mätvärden vars kardinalitet blir stor. De varnar särskilt för etiketter med obegränsade värden, till exempel användar-ID:n eller e-postadresser.

Kardinalitet skiljer sig från samplingsfrekvens. En serie som samplas varje sekund kan innehålla många sampel, medan en miljon sällan uppdaterade serier ändå medför stora kostnader för index och metadata, eftersom backend-systemet måste hålla reda på varje identitet.

AI-arbetsflöden innehåller attraktiva men farliga etiketter

Modellnamn, slutpunkt, verktygsklass, svarsstatus och en avgränsad maskinvarunivå kan ge användbar aggregering. Prompttext, dokumentsökväg, spårnings-ID, sessions-ID, genererade verktygsargument och fullständiga felmeddelanden är i praktiken obegränsade och förvandlar mätvärden till ett oavsiktligt händelselager.

Grafanas kardinalitetsinstrumentpanel förklarar att instrumentpaneler för hög kardinalitet granskar aktiva serier och etikettfördelning, så att operatörer kan koppla oanvända mätvärden till kostnaden för inläsning. Samma metod kan visa om en ny agentetikett orsakade en plötslig explosion av antalet serier.

Unik diagnostisk kontext hör hemma i samplade spår eller strukturerade loggar, länkade via exemplars där det stöds. Mätvärden bör besvara aggregerade frågor med avsiktligt avgränsade dimensioner i stället för att bevara varje begäran som ett etikettvärde. Denna skillnad förblir synlig under senare tester i hemmet.

Kombinationer multipliceras innan frågor märkbart blir långsamma

Flera individuellt måttliga etiketter kan bilda en stor kartesisk produkt. Serieomsättning förvärrar problemet när containrar, modellversioner eller normaliserade sökvägar hela tiden skapar nya identiteter som finns kvar under lagringstiden efter att den aktiva arbetsbelastningen har förändrats.

Ett exempel från Grafanas kardinalitetstoppar definierar kardinalitet genom unika etikettvärden och visar hur toppar ökar antalet lagrade serier. Detta förklarar varför en liten ändring i instrumenteringen kan öka arbetet med inläsning och frågor utan att inferenstrafiken förändras.

Gränsen för fel uppstår när observerbarheten använder så mycket minne, I/O eller CPU att den stör AI-tjänsten som den mäter. Att ta bort en etikett efter inläsning kan minska framtida tillväxt, men raderar inte omedelbart historiska serier och reparerar inte instrumentpaneler som var beroende av den.

-15% OFF
Single board computer zimaboard2

Skapa en kardinalitetsbudget innan du lägger till etiketter

Inventera varje mätvärde och uppskatta den övre gränsen för varje etikett och vanlig kombination. Spela upp en representativ dag, mät aktiva serier, serieomsättning, inlästa byte, frågetid och minne, och rangordna sedan etiketterna efter diagnostiskt värde och inkrementellt antal serier.

Jämför resultaten med de bredare signalerna för observerbarhet som beskrivs i lokal AI-observerbarhet. Flytta unik begärandekontext till loggar eller spår, normalisera dynamiska sökvägar och exponera modell- eller verktygskategorier endast när en instrumentpanel eller avisering har ett definierat användningsområde.

Sätt budgetar och aviseringar för aktiva serier och skapandetakt före driftsättning. Instrumenteringen är godkänd först när den besvarar de avsedda operativa frågorna utan att märkbart förändra inferenslatensen eller tömma lagringsutrymmet under maximal användning i hemmet.

Teknik- och AI-hubb

Mer att läsa

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.