Halaman ini menjelaskan teknik yang digunakan untuk memanipulasi data deret waktu. Konten ini dibuat berdasarkan konsep dan diskusi dalam Metrik, deret waktu, dan resource.
Data deret waktu mentah harus dimanipulasi sebelum dapat dianalisis, dan analisis sering kali melibatkan pemfilteran beberapa data dan menggabungkan beberapa data secara bersamaan. Halaman ini menjelaskan dua teknik utama untuk menyaring data mentah:
- Memfilter, yang menghapus beberapa data dari pertimbangan.
- Agregasi, yang menggabungkan beberapa bagian data ke dalam kumpulan yang lebih kecil berdasarkan dimensi yang Anda tentukan.
Pemfilteran dan agregasi adalah alat yang efektif untuk membantu mengidentifikasi pola yang menarik dan menyoroti tren atau outlier dalam data, di antara hal lainnya.
Halaman ini menjelaskan konsep di balik pemfilteran dan agregasi. Artikel ini tidak membahas cara menerapkannya secara langsung. Untuk menerapkan pemfilteran atau agregasi ke data deret waktu, gunakan Cloud Monitoring API atau alat pembuatan diagram dan pemberitahuan di konsol Google Cloud. Untuk contohnya, lihat kebijakan contoh API dan contoh Monitoring Query Language.Data deret waktu mentah
Jumlah data metrik mentah dalam satu deret waktu dapat sangat besar, dan biasanya ada banyak deret waktu yang terkait dengan jenis metrik. Untuk menganalisis seluruh kumpulan data guna menemukan kesamaan, tren, atau outlier, Anda harus melakukan beberapa pemrosesan pada deret waktu dalam set. Jika tidak, ada terlalu banyak data yang perlu dipertimbangkan.
Untuk memperkenalkan pemfilteran dan agregasi, contoh di halaman ini menggunakan sejumlah kecil deret waktu hipotetis. Misalnya, ilustrasi berikut menampilkan data mentah selama beberapa jam dari tiga deret waktu:
Setiap deret waktu diberi warna, merah, biru, atau hijau, untuk mencerminkan nilai
label color
hipotetis. Ada satu deret waktu untuk setiap nilai label. Perhatikan bahwa nilai tidak sejajar dengan rapi, karena
direkam pada waktu yang berbeda.
Pemfilteran
Salah satu alat paling canggih untuk analisis adalah pemfilteran, yang memungkinkan Anda menyembunyikan data yang tidak langsung menarik bagi Anda.
Anda dapat memfilter data deret waktu berdasarkan hal berikut:
- Waktu.
- Nilai satu atau beberapa label.
Ilustrasi berikut menunjukkan hasil pemfilteran untuk hanya menampilkan deret waktu merah dari kumpulan deret waktu mentah asli (diilustrasikan dalam Gambar 1):
Deret waktu ini, yang dipilih dengan pemfilteran, digunakan di bagian berikutnya, untuk menunjukkan perataan.
Agregasi
Cara lain untuk mengurangi jumlah data yang Anda miliki adalah dengan meringkas, atau menggabungkan, data tersebut. Ada dua aspek dalam agregasi:
- Perataan, atau menormalisasi data dalam satu deret waktu.
- Pengurangan, atau menggabungkan beberapa deret waktu.
Anda harus menyelaraskan deret waktu sebelum dapat menguranginya. Beberapa bagian
berikut menjelaskan perataan dan pengurangan menggunakan deret waktu yang menyimpan
nilai bilangan bulat. Konsep umum ini juga berlaku jika deret waktu memiliki
jenis nilai Distribution
; namun, ada beberapa
batasan tambahan dalam hal ini. Untuk informasi selengkapnya, lihat
Tentang metrik nilai distribusi.
Perataan: regularisasi dalam seri
Langkah pertama dalam menggabungkan data deret waktu adalah penyesuaian. Penyesuaian membuat deret waktu baru dengan data mentah yang telah diregulasi secara berkala sehingga dapat digabungkan dengan deret waktu yang diselaraskan lainnya. Perataan menghasilkan deret waktu dengan data yang berjarak teratur.
Penyelarasan melibatkan dua langkah:
Membagi deret waktu menjadi interval waktu reguler, yang juga disebut bucketing data. Interval ini disebut periode, periode penyelarasan, atau periode penyelarasan.
Menghitung satu nilai untuk titik dalam periode penyelarasan. Anda memilih cara penghitungan satu titik tersebut; Anda dapat menjumlahkan semua nilai, atau menghitung rata-ratanya, atau menggunakan nilai maksimum.
Karena deret waktu baru yang dibuat oleh perataan mewakili semua nilai dari deret waktu mentah yang berada dalam periode perataan dengan satu nilai, deret waktu ini juga disebut pengurangan dalam deret atau agregasi dalam deret.
Menormalisasi interval waktu
Untuk menganalisis data deret waktu, titik data harus tersedia pada batas waktu yang berjarak sama. Penyesuaian adalah proses untuk melakukannya.
Penyelarasan membuat deret waktu baru dengan interval konstan, periode penyejajaran, di antara titik data. Penyelarasan biasanya diterapkan ke beberapa deret waktu sebagai persiapan untuk manipulasi lebih lanjut.
Bagian ini mengilustrasikan langkah-langkah penyelarasan dengan menerapkannya ke satu deret waktu. Dalam contoh ini, periode penyelarasan satu jam diterapkan ke contoh deret waktu yang diilustrasikan dalam Gambar 2. Deret waktu menunjukkan data yang diambil selama tiga jam. Membagi titik data menjadi periode satu jam akan menghasilkan titik berikut dalam setiap periode:
Periode | Nilai |
---|---|
1:01–2:00 | 400, 350, 300, 200 |
2:01–3:00 | 200, 100 |
3:01–4:00 | 300, 250, 200 |
Memilih periode perataan
Durasi periode penyelarasan bergantung pada dua faktor:
- Tingkat perincian dari hal yang Anda coba temukan dalam data.
- Periode pengambilan sampel data; yaitu, seberapa sering data dilaporkan.
Bagian berikut membahas faktor-faktor ini secara lebih mendetail.
Selain itu, Cloud Monitoring menyimpan data metrik selama jangka waktu tertentu. Periodenya bervariasi sesuai dengan jenis metrik; lihat Retensi data untuk mengetahui detailnya. Periode retensi adalah periode penyelarasan yang paling bermakna dan terpanjang.
Perincian
Jika Anda mengetahui bahwa sesuatu terjadi dalam rentang waktu beberapa jam, dan ingin menggali lebih dalam, sebaiknya gunakan periode satu jam atau beberapa menit untuk penyelarasan.
Jika Anda tertarik untuk mempelajari tren dalam jangka waktu yang lebih lama, periode penyesuaian yang lebih besar mungkin lebih sesuai. Periode penyelarasan yang besar biasanya tidak berguna untuk melihat kondisi anomali jangka pendek. Jika Anda menggunakan, misalnya, periode perataan selama beberapa minggu, keberadaan anomali dalam periode tersebut mungkin masih dapat terdeteksi, tetapi data yang dicocokkan mungkin terlalu kasar untuk membantu.
Frekuensi pengambilan sampel
Frekuensi penulisan data, frekuensi sampling, juga dapat memengaruhi pilihan periode perataan. Lihat Daftar metrik untuk mengetahui frekuensi sampling metrik bawaan. Pertimbangkan gambar berikut, yang menggambarkan deret waktu dengan frekuensi sampling satu titik per menit:
Jika periode perataan sama dengan periode sampling, maka
ada satu titik data dalam setiap periode perataan. Artinya, misalnya, menerapkan salah satu penyelaras max
, mean
, atau min
akan menghasilkan deret waktu yang sama. Ilustrasi berikut menunjukkan
hasil ini, beserta deret waktu asli sebagai garis pudar:
Untuk mengetahui informasi selengkapnya tentang cara kerja fungsi penyelaras, lihat Penyelaras.
Jika periode perataan ditetapkan ke dua menit, atau dua kali periode sampling, maka akan ada dua titik data dalam setiap periode. Jika penyelaras max
, mean
,
atau min
diterapkan ke titik dalam periode penyelarasan
dua menit, deret waktu yang dihasilkan akan berbeda. Ilustrasi berikut menunjukkan
hasil ini, beserta deret waktu asli sebagai garis pudar:
Saat memilih periode penyelarasan, buat periode tersebut lebih lama dari periode sampling, tetapi cukup singkat untuk menampilkan tren yang relevan. Anda mungkin harus bereksperimen untuk menentukan periode penyelarasan yang berguna. Misalnya, jika data dikumpulkan dengan kecepatan satu titik per hari, periode penyelarasan satu jam terlalu singkat untuk berguna: untuk sebagian besar jam, tidak akan ada data.
Perata
Setelah data dibagi menjadi periode penyelarasan, Anda memilih fungsi, penyesuai, untuk diterapkan ke titik data dalam periode tersebut. Penyelaras menghasilkan satu nilai yang ditempatkan di akhir setiap periode penyelarasan.
Opsi perataan mencakup penjumlahan nilai, atau menemukan nilai maksimum, minimum, atau
rata-rata, menemukan nilai persentil yang dipilih, menghitung nilai, dan
lainnya. Cloud Monitoring API mendukung serangkaian besar fungsi perataan, jauh lebih banyak daripada kumpulan yang diilustrasikan di sini; lihat Aligner
untuk daftar lengkapnya. Untuk deskripsi penyelaras kecepatan dan delta,
yang mengubah data deret waktu, lihat
Jenis, jenis, dan konversi.
Misalnya, mengambil data yang di-bucket dari deret waktu mentah (diilustrasikan dalam Gambar 1), pilih penyelaras dan terapkan ke data di setiap bucket. Tabel berikut menunjukkan nilai mentah dan hasil tiga penyelaras yang berbeda, maks, rata-rata, dan min:
Periode | Nilai | Perata: maks | Perata: mean | Perata: mnt |
---|---|---|---|---|
1:01–2:00 | 400, 350, 300, 200 | 400 | 312,5 | 200 |
2:01–3:00 | 200, 100 | 200 | 150 | 100 |
3:01–4:00 | 300, 250, 200 | 300 | 250 | 200 |
Ilustrasi berikut menunjukkan hasil penerapan penyelaras maksimum, rata-rata, atau minimum menggunakan periode perataan 1 jam ke deret waktu merah asli (diwakili oleh garis pudar dalam ilustrasi):
Beberapa aligner lainnya
Tabel berikut menunjukkan nilai mentah yang sama dan hasil dari tiga pengurut lainnya:
- Count menghitung jumlah nilai dalam periode penyelarasan.
- Sum menjumlahkan semua nilai dalam periode perataan.
- Next older menggunakan nilai terbaru dalam periode sebagai nilai perataan.
Periode | Nilai | Perata: jumlah | Perata: jumlah | Perata: data yang lebih lama berikutnya |
---|---|---|---|---|
1:01–2:00 | 400, 350, 300, 200 | 4 | 1250 | 200 |
2:01–3:00 | 200, 100 | 2 | 300 | 100 |
3:01–4:00 | 300, 250, 200 | 3 | 750 | 200 |
Hasil ini tidak ditampilkan pada diagram.
Pengurangan: menggabungkan deret waktu
Langkah berikutnya dalam proses ini, pengurangan, adalah proses menggabungkan beberapa deret waktu yang diselaraskan menjadi deret waktu baru. Langkah ini mengganti semua nilai pada batas periode perataan dengan satu nilai. Karena berfungsi di seluruh deret waktu terpisah, pengurangan juga disebut agregasi lintas deret.
Pengurang
Reducer adalah fungsi yang diterapkan ke nilai di seluruh kumpulan deret waktu untuk menghasilkan satu nilai.
Opsi pengurangan mencakup penjumlahan nilai yang diselaraskan, atau menemukan nilai maksimum, minimum, atau rata-rata. Cloud Monitoring API mendukung kumpulan besar fungsi pengurangan; lihat Reducer
untuk mengetahui daftar lengkapnya.
Daftar pengurangan sejajar dengan daftar penyelaras.
Deret waktu harus diselaraskan sebelum dapat dikurangi. Ilustrasi berikut menunjukkan hasil yang menyelaraskan ketiga deret waktu mentah (dari Gambar 1) ke dalam periode 1 jam dengan pengatur rata-rata:
Nilai dari tiga deret waktu yang diselaraskan dengan rata-rata (diilustrasikan dalam Gambar 4) ditampilkan dalam tabel berikut:
Batas perataan | Merah | Biru | Hijau |
---|---|---|---|
2:00 | 312,5 | 133,3 | 400 |
3:00 | 150 | 283,3 | 433,3 |
4:00 | 250 | 300 | 350 |
Dengan menggunakan data yang diselaraskan dalam tabel sebelumnya, pilih pengurangan dan terapkan ke nilai. Tabel berikut menunjukkan hasil penerapan berbagai pengurangan ke data yang diselaraskan dengan rata-rata:
Batas perataan | Pengurang: maks | Pengurang: rata-rata | Pengurang: min | Pengurang: jumlah |
---|---|---|---|---|
2:00 | 400 | 281,9 | 133,3 | 845,8 |
3:00 | 433,3 | 288,9 | 150 | 866,7 |
4:00 | 350 | 300 | 250 | 900 |
Secara default, pengurangan berlaku di semua deret waktu Anda, sehingga menghasilkan satu deret waktu. Ilustrasi berikut menunjukkan hasil agregasi tiga deret waktu yang diselaraskan dengan rata-rata dengan pengurangan maks, yang menghasilkan nilai rata-rata tertinggi di seluruh deret waktu:
Pengurangan juga dapat digabungkan dengan pengelompokan, dengan deret waktu diorganisasikan ke dalam kategori, dan pengurangan diterapkan di seluruh deret waktu di setiap grup.
Pengelompokan
Pengelompokan memungkinkan Anda menerapkan pengurangan di seluruh subset deret waktu, bukan di seluruh kumpulan deret waktu. Untuk mengelompokkan deret waktu, Anda memilih satu atau beberapa label. Deret waktu kemudian dikelompokkan berdasarkan nilainya untuk label yang dipilih. Pengelompokan menghasilkan satu deret waktu untuk setiap grup.
Jika jenis metrik mencatat nilai untuk label zone
dan color
, Anda dapat mengelompokkan deret waktu menurut salah satu atau kedua label tersebut. Saat Anda menerapkan pengurangan, setiap grup akan dikurangi menjadi satu deret waktu. Jika mengelompokkan
berdasarkan warna, Anda akan mendapatkan satu deret waktu untuk setiap warna yang direpresentasikan dalam data.
Jika mengelompokkan menurut zona, Anda akan mendapatkan deret waktu untuk setiap zona yang muncul dalam data. Jika mengelompokkan menurut keduanya, Anda akan mendapatkan deret waktu untuk setiap kombinasi warna dan zona.
Misalnya, Anda telah mengambil banyak deret waktu dengan nilai “merah”,
“biru”, dan “hijau” untuk label color
. Setelah
menyejajarkan semua deret waktu, deret waktu tersebut dapat dikelompokkan menurut nilai color
, lalu
dikurangi menurut grup. Tindakan ini akan menghasilkan tiga deret waktu khusus warna:
Contoh ini tidak menentukan penyelaras atau pengurangan yang digunakan; intinya di sini adalah
pengelompokan memungkinkan Anda mengurangi kumpulan deret waktu yang besar menjadi kumpulan yang lebih kecil,
dengan setiap deret waktu mewakili grup yang memiliki atribut yang sama: dalam contoh
ini, nilai label color
.
Agregasi sekunder
Cloud Monitoring melakukan dua langkah agregasi.
Agregasi Utama menormalisasi data yang diukur, lalu menggabungkan deret waktu yang dinormalisasi menggunakan pengurangan. Saat Anda menggunakan pengelompokan, lebih dari satu deret waktu mungkin dihasilkan dari pengurangan yang dilakukan sebagai bagian dari langkah ini.
Agregasi sekunder, yang berlaku untuk hasil langkah agregasi utama, memungkinkan Anda menggabungkan deret waktu yang dikelompokkan menjadi satu hasil menggunakan pengurangan kedua.
Tabel berikut menunjukkan nilai deret waktu yang dikelompokkan (diilustrasikan dalam Gambar 6):
Batas perataan | Grup merah | Grup biru | Grup hijau |
---|---|---|---|
2:00 | 400 | 150 | 450 |
3:00 | 200 | 350 | 450 |
4:00 | 300 | 300 | 400 |
Ketiga deret waktu yang telah dikurangi ini kemudian dapat dikurangi lebih lanjut dengan menerapkan agregasi sekunder. Tabel berikut menunjukkan hasil penerapan reducer yang dipilih:
Batas perataan | Pengurang: maks | Pengurang: rata-rata | Pengurang: min | Pengurang: jumlah |
---|---|---|---|---|
2:00 | 450 | 333,3 | 150 | 1000 |
3:00 | 450 | 333,3 | 200 | 1000 |
4:00 | 400 | 333,3 | 300 | 1000 |
Ilustrasi berikut menunjukkan hasil agregasi tiga deret grup dengan pengurangan rata-rata:
Jenis, jenis, dan konversi
Ingat bahwa titik data dalam deret waktu dicirikan oleh jenis metrik dan jenis nilai; lihat Jenis nilai dan jenis metrik untuk peninjauan. Penyelaras dan pengurangan yang sesuai untuk satu set data mungkin tidak sesuai untuk set data lainnya. Misalnya, penyelaras atau pengurangan yang menghitung jumlah nilai salah sesuai untuk data boolean, tetapi tidak untuk data numerik. Demikian pula, penyelaras atau pengurangan yang menghitung rata-rata berlaku untuk data numerik, tetapi tidak untuk data boolean.
Beberapa penyelaras dan pengurangan juga dapat digunakan untuk mengubah secara eksplisit
jenis metrik atau jenis nilai data dalam deret waktu. Beberapa, seperti
ALIGN_COUNT
, melakukannya sebagai efek samping.
Jenis metrik: Metrik kumulatif adalah metrik yang setiap nilainya mewakili total sejak pengumpulan nilai dimulai. Anda tidak dapat menggunakan metrik kumulatif secara langsung dalam diagram, tetapi Anda dapat menggunakan metrik delta, dengan setiap nilai mewakili perubahan sejak pengukuran sebelumnya.
Anda juga dapat mengonversi metrik kumulatif dan delta menjadi metrik pengukur. Misalnya, pertimbangkan metrik delta yang deret waktunya adalah sebagai berikut:
[waktu mulai, waktu berakhir] (menit) nilai (MiB) (0, 2] 8 (2, 5] 6 (6, 9] 9 Asumsikan Anda memilih penyelaras
ALIGN_DELTA
dan periode penyelarasan tiga menit. Karena periode perataan tidak cocok dengan (waktu mulai, waktu akhir] untuk setiap sampel, deret waktu dibuat dengan nilai yang diinterpolasi. Untuk contoh ini, deret waktu yang diinterpolasi adalah:[waktu mulai, waktu berakhir] (menit) nilai interpolasi (MiB) (0, 1] 4 (1, 2] 4 (2, 3] 2 (3, 4] 2 (4, 5] 2 (5, 6] 0 (6, 7] 3 (7, 8] 3 (8, 9] 3 Selanjutnya, semua titik dalam periode perataan tiga menit dijumlahkan untuk menghasilkan nilai yang diselaraskan:
[waktu mulai, waktu berakhir] (menit) nilai yang diselaraskan (MiB) (0, 3] 10 (3, 6] 4 (6, 9] 9 Jika
ALIGN_RATE
dipilih, prosesnya sama, kecuali bahwa nilai yang diselaraskan dibagi dengan periode perataan. Untuk contoh ini, periode perataan adalah tiga menit sehingga deret waktu yang diselaraskan memiliki nilai berikut:[waktu mulai, waktu berakhir] (menit) nilai yang diselaraskan (MiB / detik) (0, 3] 0,056 (3, 6] 0,022 (6, 9] 0,050 Untuk memetakan metrik kumulatif, metrik tersebut harus dikonversi menjadi metrik delta atau metrik rasio. Proses untuk metrik kumulatif mirip dengan diskusi sebelumnya. Anda dapat menghitung deret waktu delta dari deret waktu kumulatif dengan menghitung perbedaan istilah yang berdekatan.
Jenis nilai: Beberapa penyelaras dan pengurangan tidak mengubah jenis nilai data input; misalnya, data bilangan bulat masih berupa data bilangan bulat setelah penyejajaran. Perata dan pengurangan lainnya mengonversi data dari satu jenis ke jenis lainnya, yang berarti informasi dapat dianalisis dengan cara yang tidak sesuai dengan jenis nilai asli.
Misalnya, pengurangan
REDUCE_COUNT
dapat diterapkan ke data numerik, boolean, string, dan distribusi, tetapi hasilnya adalah bilangan bulat 64-bit yang menghitung jumlah nilai dalam periode.REDUCE_COUNT
hanya dapat diterapkan ke metrik pengukur dan delta, dan jenis metrik tidak akan berubah.
Tabel referensi untuk Aligner
dan
Reducer
menunjukkan jenis data yang sesuai untuk masing-masing dan konversi yang
dihasilkan. Misalnya, berikut adalah entri untuk ALIGN_DELTA
: