Untuk mendeteksi anomali, Anda dapat menggunakan fungsi prediksi dan deteksi anomali untuk memprediksi kurva deret waktu serta mengidentifikasi Ksigma dan kuantil dari kesalahan antara kurva yang diprediksi dan kurva aktual.
Daftar Fungsi
Fungsi | Deskripsi |
Menggunakan parameter default untuk memodelkan data deret waktu dan melakukan prediksi deret waktu sederhana serta deteksi anomali. | |
Menggunakan model autoregresif (AR) untuk memodelkan data deret waktu dan melakukan prediksi deret waktu sederhana serta deteksi anomali. | |
Menggunakan model autoregresif moving average (ARMA) untuk memodelkan data deret waktu dan melakukan prediksi deret waktu sederhana serta deteksi anomali. | |
Menggunakan model autoregresif integrated moving average (ARIMA) untuk memodelkan data deret waktu dan melakukan prediksi deret waktu sederhana serta deteksi anomali. | |
Memperkirakan tren kurva deret waktu periodik dengan akurat. Skenario: Fungsi ini dapat digunakan untuk memprediksi data metering, lalu lintas jaringan, data keuangan, dan data bisnis lainnya yang mengikuti aturan tertentu. | |
Menyaring anomali yang terdeteksi selama deteksi anomali pada beberapa kurva deret waktu berdasarkan mode anomali kustom. Fungsi ini membantu Anda menemukan kurva abnormal dengan cepat. |
ts_predicate_simple
Format fungsi:
select ts_predicate_simple(x, y, nPred, isSmooth) Tabel berikut mencantumkan parameter dari format fungsi.
Parameter | Deskripsi | Nilai |
x | Urutan waktu. Titik-titik waktu diurutkan secara menaik sepanjang sumbu horizontal. | Setiap titik waktu adalah timestamp Unix. Satuan: detik. |
y | Urutan data numerik yang sesuai dengan setiap titik waktu yang ditentukan. | Tidak tersedia. |
nPred | Jumlah titik untuk prediksi. | Nilainya bertipe data long dan harus sama dengan atau lebih besar dari 1. |
isSmooth | Menentukan apakah akan menyaring data mentah. | Nilainya bertipe data Boolean. Nilai defaultnya adalah true, yang menunjukkan bahwa data mentah disaring. |
Contoh:
Pernyataan query adalah sebagai berikut:
* | select ts_predicate_simple(stamp, value, 6) from (select ("__time__" - ("__time__" % 60)) as stamp, avg(v) as value from log GROUP BY stamp order by stamp)Hasil keluaran

Tabel berikut mencantumkan item tampilan.
Item Tampilan | Deskripsi | |
Sumbu horizontal | unixtime | Timestamp Unix dari data. Satuan: detik. |
Sumbu vertikal | src | Data mentah. |
predict | Data yang dihasilkan setelah operasi penyaringan dilakukan. | |
upper | Batas atas interval kepercayaan. Tingkat kepercayaan adalah 0,85, yang tidak dapat diubah. | |
lower | Batas bawah interval kepercayaan. Tingkat kepercayaan adalah 0,85, yang tidak dapat diubah. | |
anomaly_prob | Probabilitas bahwa titik tersebut merupakan anomali. Nilai valid: [0, 1]. | |
ts_predicate_ar
Format fungsi:
select ts_predicate_ar(x, y, p, nPred, isSmooth) Tabel berikut mencantumkan parameter dari format fungsi.
Parameter | Deskripsi | Nilai |
x | Urutan waktu. Titik-titik waktu diurutkan secara menaik sepanjang sumbu horizontal. | Setiap titik waktu adalah timestamp Unix. Satuan: detik. |
y | Urutan data numerik yang sesuai dengan setiap titik waktu yang ditentukan. | Tidak tersedia. |
p | Orde model AR. | Nilainya bertipe data long. Nilai valid: 2, 3, 4, 5, 6, 7, dan 8. |
nPred | Jumlah titik untuk prediksi. | Nilainya bertipe data long. Nilai valid: [1, 5 × p]. |
isSmooth | Menentukan apakah akan menyaring data mentah. | Nilainya bertipe data Boolean. Nilai defaultnya adalah true, yang menunjukkan bahwa data mentah disaring. |
Contoh pernyataan query adalah sebagai berikut:
* | select ts_predicate_ar(stamp, value, 3, 4) from (select ("__time__" - ("__time__" % 60)) as stamp, avg(v) as value from log GROUP BY stamp order by stamp)Hasil keluaran serupa dengan fungsi ts_predicate_simple. Untuk informasi lebih lanjut, lihat hasil keluaran fungsi ts_predicate_simple.
ts_predicate_arma
Format fungsi:
select ts_predicate_arma(x, y, p, q, nPred, isSmooth) Tabel berikut mencantumkan parameter dari format fungsi.
Parameter | Deskripsi | Nilai |
x | Urutan waktu. Titik-titik waktu diurutkan secara menaik sepanjang sumbu horizontal. | Setiap titik waktu adalah timestamp Unix. Satuan: detik. |
y | Urutan data numerik yang sesuai dengan setiap titik waktu yang ditentukan. | Tidak tersedia. |
p | Orde model AR. | Nilainya bertipe data long. Nilai valid: [2, 100]. |
q | Orde model ARMA. | Nilainya bertipe data long. Nilai valid: 2, 3, 4, 5, 6, 7, dan 8. |
nPred | Jumlah titik untuk prediksi. | Nilainya bertipe data long. Nilai valid: [1, 5 × p]. |
isSmooth | Menentukan apakah akan menyaring data mentah. | Nilainya bertipe data Boolean. Nilai defaultnya adalah true, yang menunjukkan bahwa data mentah disaring. |
Contoh pernyataan query adalah sebagai berikut:
* | select ts_predicate_arma(stamp, value, 3, 2, 4) from (select ("__time__" - ("__time__" % 60)) as stamp, avg(v) as value from log GROUP BY stamp order by stamp) Hasil keluaran serupa dengan fungsi ts_predicate_simple. Untuk informasi lebih lanjut, lihat hasil keluaran fungsi ts_predicate_simple.
ts_predicate_arima
Format fungsi:
select ts_predicate_arima(x, y, p, d, q, nPred, isSmooth) Tabel berikut mencantumkan parameter dari format fungsi.
Parameter | Deskripsi | Nilai |
x | Urutan waktu. Titik-titik waktu diurutkan secara menaik sepanjang sumbu horizontal. | Setiap titik waktu adalah timestamp Unix. Satuan: detik. |
y | Urutan data numerik yang sesuai dengan setiap titik waktu yang ditentukan. | Tidak tersedia. |
p | Orde model AR. | Nilainya bertipe data long. Nilai valid: 2, 3, 4, 5, 6, 7, dan 8. |
d | Orde model ARIMA. | Nilainya bertipe data long. Nilai valid: [1, 3]. |
q | Orde model ARMA. | Nilainya bertipe data long. Nilai valid: 2, 3, 4, 5, 6, 7, dan 8. |
nPred | Jumlah titik untuk prediksi. | Nilainya bertipe data long. Nilai valid: [1, 5 × p]. |
isSmooth | Menentukan apakah akan menyaring data mentah. | Nilainya bertipe data Boolean. Nilai defaultnya adalah true, yang menunjukkan bahwa data mentah disaring. |
Contoh pernyataan query adalah sebagai berikut:
* | select ts_predicate_arima(stamp, value, 3, 1, 2, 4) from (select ("__time__" - ("__time__" % 60)) as stamp, avg(v) as value from log GROUP BY stamp order by stamp)Hasilkeluaran serupa dengan fungsi ts_predicate_simple. Untuk informasi lebih lanjut, lihat hasil keluaran fungsi ts_predicate_simple.
ts_regression_predict
Format fungsi:
select ts_regression_predict(x, y, nPred, algotype,processType)Tabel berikut mencantumkan parameter dari format fungsi.
Parameter | Deskripsi | Nilai |
x | Urutan waktu. Titik-titik waktu diurutkan secara menaik sepanjang sumbu horizontal. | Setiap titik waktu adalah timestamp Unix. Satuan: detik. |
y | Urutan data numerik yang sesuai dengan setiap titik waktu yang ditentukan. | Tidak tersedia. |
nPred | Jumlah titik untuk prediksi. | Nilainya bertipe data long. Nilai valid: [1, 500]. |
algotype | Tipe algoritma untuk prediksi. | Nilai valid:
|
processType | Menentukan apakah akan memproses data sebelumnya. | Nilai valid:
|
Contoh:
Pernyataan query adalah sebagai berikut:
* and h : nu2h05202.nu8 and m: NET | select ts_regression_predict(stamp, value, 200, 'origin') from (select ("__time__" - ("__time__" % 60)) as stamp, avg(v) as value from log group by stamp order by stamp)Hasil keluaran

Tabel berikut mencantumkan item tampilan.
Item Tampilan | Deskripsi | |
Sumbu horizontal | unixtime | Timestamp Unix dari data. Satuan: detik. |
Sumbu vertikal | src | Data mentah. |
predict | Data yang dihasilkan setelah operasi penyaringan dilakukan. | |
ts_anomaly_filter
Format fungsi:
select ts_anomaly_filter(lineName, ts, ds, preds, probs, nWatch, anomalyType)Tabel berikut mencantumkan parameter dari format fungsi.
Parameter | Deskripsi | Nilai |
lineName | Nama setiap kurva. Nilainya bertipe varchar. | Tidak tersedia |
ts | Urutan waktu dari kurva, yang menunjukkan waktu pada kurva saat ini. Nilai parameter adalah array poin waktu bertipe data double yang diurutkan secara menaik. | Tidak tersedia |
ds | Urutan nilai aktual dari kurva. Nilai parameter adalah array poin data bertipe data double. Nilai parameter ini memiliki panjang yang sama dengan nilai parameter ts. | Tidak tersedia |
preds | Urutan nilai prediksi dari kurva. Nilai parameter adalah array poin data bertipe data double. Nilai parameter ini memiliki panjang yang sama dengan nilai parameter ts. | Tidak tersedia |
probs | Urutan hasil deteksi anomali dari kurva. Nilai parameter adalah array poin data bertipe data double. Nilai parameter ini memiliki panjang yang sama dengan nilai parameter ts. | Tidak tersedia |
nWatch | Jumlah nilai aktual yang baru-baru ini diamati pada kurva. Nilainya bertipe data long. Nilainya harus lebih kecil dari jumlah poin waktu pada kurva. | Tidak tersedia |
anomalyType | Tipe anomali yang akan disaring. Nilainya bertipe data long. | Nilai valid:
|
Contoh:
Pernyataan query adalah sebagai berikut:
* | select res.name, res.ts, res.ds, res.preds, res.probs from ( select ts_anomaly_filter(name, ts, ds, preds, probs, cast(5 as bigint), cast(1 as bigint)) as res from ( select name, res[1] as ts, res[2] as ds, res[3] as preds, res[4] as uppers, res[5] as lowers, res[6] as probs from ( select name, array_transpose(ts_predicate_ar(stamp, value, 10)) as res from ( select name, stamp, value from log where name like '%asg-%') group by name)) );Hasil keluaran
| name | ts | ds | preds | probs | | ------------------------ | ---------------------------------------------------- | ----------- | --------- | ----------- | | asg-bp1hylzdi2wx7civ0ivk | [1.5513696E9, 1.5513732E9, 1.5513768E9, 1.5513804E9] | [1,2,3,NaN] | [1,2,3,4] | [0,0,1,NaN] |