Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Sürüm açılan listesini kullanarak hizmetler arasında geçiş yapın. Gezinti hakkında daha fazla bilgi edinin.
Şunlar için geçerlidir: ✅ Microsoft Fabric ✅ Azure Veri Gezgini ✅ Azure İzleyici ✅ Microsoft Sentinel
Bulut hizmetleri ve IoT cihazları, hizmet durumunu, üretim süreçlerini ve kullanım eğilimlerini izlemek için kullandığınız telemetri verilerini oluşturur. Zaman serisi analizi, her ölçümün temel deseninden sapmaları belirlemenize yardımcı olur.
Kusto Sorgu Dili (KQL), birden çok zaman serisi oluşturmak, işlemek ve analiz etmek için yerel destek içerir. Gerçek zamanlıya yakın izleme için saniyeler içinde binlerce zaman serisi oluşturmak ve analiz etmek için KQL kullanın.
Bu makalede KQL zaman serisi anomali algılama ve tahmin özellikleri açıklanmaktadır. İşlevler, her bir zaman serisini mevsimsel, eğilim ve artık bileşenlere ayıran sağlam ve iyi bilinen bir ayrıştırma modeli kullanır. Kalan bileşendeki aykırı değerleri bularak anomalileri tespit et. Mevsimsel ve eğilim bileşenlerini tahmin ederek tahminde bulunabilirsiniz. KQL otomatik mevsimsellik algılama, güçlü aykırı değerler analizi ve binlerce zaman serisini saniyeler içinde işleyen vektörleştirilmiş bir uygulama ekler.
Önkoşullar
- Microsoft hesabı veya Microsoft Entra kullanıcı kimliği kullanın. Azure aboneliğine ihtiyacınız yoktur.
- Zaman serisi analizinde zaman serisi özellikleri hakkında bilgi edinin.
Zaman serisi ayrıştırma modeli
Zaman serisi tahmini ve anomali algılama için KQL yerel uygulaması iyi bilinen bir ayrıştırma modeli kullanır. Bu modeli hizmet trafiği, bileşen sinyalleri ve düzenli IoT ölçümleri gibi düzenli aralıklarla ve eğilim davranışıyla zaman serisi için kullanarak gelecekteki değerleri tahmin edin ve anomalileri algılayın. Regresyon, mevsimsel ve eğilim bileşenlerini kaldırdıktan sonra geri kalanın rastgele olduğunu varsayar. Mevsimsel ve trend bileşenlerinden gelecekteki değerleri tahmin edin (temel) ve artıkları göz ardı edin. Artık bileşen üzerinde aykırı değer analizi çalıştırarak anomalileri algıla.
series_decompose() Ayrıştırma modeli oluşturmak için işlevini kullanın. Her bir zaman serisini mevsimsel, eğilim, artık bileşen ve temel bileşenlere ayırır.
Örnek: İç web hizmeti trafiğini ayrıştırma:
let min_t = datetime(2017-01-05);
let max_t = datetime(2017-02-03 22:00);
let dt = 2h;
demo_make_series2
| make-series num=avg(num) on TimeStamp from min_t to max_t step dt by sid
| where sid == 'TS1' // Select a single time series for cleaner visualization
| extend (baseline, seasonal, trend, residual) = series_decompose(num, -1, 'linefit') // Decompose each time series into seasonal, trend, residual, and baseline (seasonal + trend)
| render timechart with(title='Web app traffic for one month, decomposition', ysplit=panels)
- Özgün zaman serisi sayı (kırmızı) olarak etiketlenmiştir.
- İşlem, işlevini kullanarak
series_periods_detect()mevsimselliği otomatik olarak algılar ve mevsimsel deseni (mor) ayıklar. - Mevsimsel deseni özgün zaman serisinden çıkarın, ardından
series_fit_line()bileşenini (açık mavi) bulmak için işleviyle doğrusal bir regresyon çalıştırın. - Bu işlev eğilimi çıkarır, ve kalan bileşen residüel bileşendir (yeşil).
- Son olarak, taban çizgisini (mavi) oluşturmak için mevsimsel ve eğilim bileşenlerini ekleyin.
Zaman serisi anomali algılama
İşlev series_decompose_anomalies() , bir zaman serisi kümesindeki anormal noktaları bulur. Bu işlev, ayrıştırma modelini oluşturmak için series_decompose() işlevini çağırır ve daha sonra artık bileşen üzerinde series_outliers() çalıştırır.
series_outliers() Tukey'in çit testini kullanarak artık bileşenin her noktası için anomali puanlarını hesaplar. Anomalinin 1,5'in üzerinde veya -1,5'in altında puanlar, sırasıyla hafif bir anomali artışı veya düşüşü olduğunu gösterir. 3,0'ın üzerindeki veya -3,0'ın altındaki anomali puanları, güçlü bir anomaliyi gösterir.
Aşağıdaki sorgu, iç web hizmeti trafiğindeki anomalileri algılamanıza olanak tanır:
let min_t = datetime(2017-01-05);
let max_t = datetime(2017-02-03 22:00);
let dt = 2h;
demo_make_series2
| make-series num=avg(num) on TimeStamp from min_t to max_t step dt by sid
| where sid == 'TS1' // select a single time series for a cleaner visualization
| extend (anomalies, score, baseline) = series_decompose_anomalies(num, 1.5, -1, 'linefit')
| render anomalychart with(anomalycolumns=anomalies, title='Web app. traffic of a month, anomalies') //use "| render anomalychart with anomalycolumns=anomalies" to render the anomalies as bold points on the series charts.
- Özgün zaman serisi (kırmızı).
- Temel (mevsimsel + eğilim) bileşeni (mavi).
- Özgün zaman serisinin üzerindeki mor renkteki anormal noktalar. Anormal noktalar beklenen temel değerlerden önemli ölçüde sapma gösterir.
Zaman serisi tahmini
işlevi series_decompose_forecast() , bir zaman serisi kümesinin gelecekteki değerlerini tahmin eder. Bu işlev, ayrıştırma modelini oluşturmak için series_decompose() çağırır ve her zaman serisi için temel bileşeni geleceğe doğru projekte eder.
Aşağıdaki sorgu, gelecek haftanın web hizmeti trafiğini tahmin etmenize olanak tanır:
let min_t = datetime(2017-01-05);
let max_t = datetime(2017-02-03 22:00);
let dt = 2h;
let horizon=7d;
demo_make_series2
| make-series num=avg(num) on TimeStamp from min_t to max_t+horizon step dt by sid
| where sid == 'TS1' // select a single time series for a cleaner visualization
| extend forecast = series_decompose_forecast(num, toint(horizon/dt))
| render timechart with(title='Web app. traffic of a month, forecasting the next week by Time Series Decomposition')
- Kırmızıyla belirtilmiş orijinal metrik. Gelecekteki değerler eksik ve varsayılan olarak 0 olarak ayarlanmıştır.
- Gelecek haftanın değerlerini tahmin etmek için mavi temel bileşeni ekstrapole edin.
Ölçeklenebilirlik
Kusto Sorgu Dili söz dizimi, birden çok zaman serisini işlemek için tek bir çağrıyı etkinleştirir. Benzersiz iyileştirilmiş uygulaması, neredeyse gerçek zamanlı senaryolarda binlerce sayacı izlerken etkili anomali algılama ve tahmin için kritik öneme sahip hızlı performans sağlar.
Aşağıdaki sorgu üç zaman serisinin aynı anda işlenmesini gösterir:
let min_t = datetime(2017-01-05);
let max_t = datetime(2017-02-03 22:00);
let dt = 2h;
let horizon=7d;
demo_make_series2
| make-series num=avg(num) on TimeStamp from min_t to max_t+horizon step dt by sid
| extend offset=case(sid=='TS3', 4000000, sid=='TS2', 2000000, 0) // add artificial offset for easy visualization of multiple time series
| extend num=series_add(num, offset)
| extend forecast = series_decompose_forecast(num, toint(horizon/dt))
| render timechart with(title='Web app. traffic of a month, forecasting the next week for 3 time series')
Özet
Bu belge, zaman serisi anomali algılama ve tahmin için yerel KQL işlevlerinin ayrıntılarını içerir. Her özgün zaman serisi, anomalileri ve/veya tahminleri algılamak için mevsimsel, eğilim ve artık bileşenlere ayrılır. Bu işlevler hata algılama, tahmine dayalı bakım, talep ve yük tahmini gibi neredeyse gerçek zamanlı izleme senaryoları için kullanılabilir.
İlgili içerik
- KQL ile anomali tanılama özellikleri hakkında bilgi edinin