Halaman ini menjelaskan teknik yang digunakan untuk memanipulasi data deret waktu. Konten ini dibuat berdasarkan konsep dan diskusi di Metrik, deret waktu, dan resource.
Data deret waktu mentah harus dimanipulasi sebelum dapat dianalisis, dan analisis sering kali melibatkan pemfilteran beberapa data dan agregasinya bersama-sama. Halaman ini menjelaskan dua teknik utama untuk menyaring data mentah:
- Pemfilteran, yang menghapus beberapa data dari pertimbangan.
- Agregasi, yang menggabungkan beberapa bagian data menjadi kumpulan yang lebih kecil bersama dimensi yang Anda tentukan.
Pemfilteran dan agregasi adalah alat yang efektif untuk membantu mengidentifikasi pola yang menarik dan menyoroti tren atau pencilan dalam data.
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. Misalnya, lihat Kebijakan contoh API dan contoh Bahasa Kueri Pemantauan.
Data deret waktu mentah
Jumlah data metrik mentah dalam satu deret waktu dapat sangat banyak, dan biasanya ada banyak deret waktu yang terkait dengan jenis metrik. Untuk menganalisis seluruh kumpulan data untuk kesamaan, tren, atau pencilan, Anda harus melakukan pemrosesan pada deret waktu dalam set. Jika tidak, terlalu banyak data untuk dipertimbangkan.
Untuk memperkenalkan pemfilteran dan agregasi, contoh di halaman ini menggunakan sejumlah kecil deret waktu. Misalnya, ilustrasi berikut menunjukkan data mentah selama beberapa jam dari tiga deret waktu:
Setiap deret waktu berwarna, merah, biru, atau hijau, untuk mencerminkan nilai label color
hipotetis. Ada satu deret waktu untuk setiap nilai label. Perhatikan bahwa nilai-nilai tidak sejajar, karena nilai-nilai tersebut 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 berwarna merah dari rangkaian deret waktu mentah asli (diilustrasikan dalam Gambar 1):
Deret waktu ini, yang dipilih dengan pemfilteran, digunakan di bagian berikutnya, untuk menunjukkan penyelarasan.
Agregasi
Cara lain untuk mengurangi jumlah data yang Anda miliki adalah dengan meringkas, atau menggabungkan data. Ada dua aspek agregasi:
- Perataan, atau perataan data dalam satu deret waktu.
- Pengurangan, atau menggabungkan beberapa deret waktu.
Anda harus menyelaraskan deret waktu sebelum dapat menguranginya. Beberapa bagian
berikutnya menjelaskan penyelarasan 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 kasus ini. Untuk informasi selengkapnya, lihat Tentang metrik nilai distribusi.
Penyelarasan: regularisasi dalam deret
Langkah pertama dalam menggabungkan data deret waktu adalah alignment. Penyelarasan membuat deret waktu baru yang berisi data mentah yang telah diregularisasi secara tepat waktu sehingga dapat digabungkan dengan deret waktu lainnya yang diselaraskan. Alignment menghasilkan seri waktu dengan data yang berjarak teratur.
Penyelarasan melibatkan dua langkah:
Membagi deret waktu menjadi interval waktu reguler, juga disebut pengelompokan data. Interval disebut periode, periode penyelarasan, atau jendela penyelarasan.
Menghitung satu nilai untuk titik-titik dalam periode perataan. Anda yang memilih cara penghitungan titik tunggal tersebut; Anda dapat menjumlahkan semua nilai, menghitung rata-ratanya, atau menggunakan nilai maksimum.
Karena deret waktu baru yang dibuat oleh penyelarasan mewakili semua nilai dari deret waktu mentah yang berada dalam periode penyelarasan dengan satu nilai, deret ini juga disebut pengurangan dalam deret atau agregasi dalam deret.
Mengatur interval waktu
Untuk menganalisis data deret waktu, titik data harus tersedia pada batas waktu yang berjarak sama. Penyelarasan adalah proses untuk mewujudkan hal ini.
Alignment membuat deret waktu baru dengan interval konstan, periode penyelarasan, di antara titik data. Penyelarasan biasanya diterapkan pada beberapa deret waktu sebagai persiapan untuk manipulasi lebih lanjut.
Bagian ini menggambarkan 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. Memecah titik data menjadi periode satu jam akan menghasilkan poin-poin berikut di setiap periodenya:
Periode | Nilai |
---|---|
13.01–2.00 | 400, 350, 300, 200 |
2.01–3.00 | 200.100 |
3.01–4.00 | 300, 250, 200 |
Memilih periode penyelarasan
Durasi periode penyelarasan bergantung pada dua faktor:
- Tingkat perincian dari apa yang Anda coba temukan dalam data.
- Periode pengambilan sampel data; yaitu, seberapa sering data dilaporkan.
Bagian berikut membahas faktor-faktor tersebut secara lebih mendetail.
Selain itu, Cloud Monitoring menyimpan data metrik selama jangka waktu terbatas. Periode ini bervariasi sesuai jenis metrik; baca Retensi data untuk mengetahui detailnya. Periode retensi adalah periode penyelarasan terpanjang yang bermakna.
Perincian
Jika Anda tahu sesuatu terjadi dalam rentang beberapa jam, dan ingin menggali lebih dalam, Anda mungkin perlu menggunakan periode satu jam atau beberapa menit untuk penyelarasan.
Jika Anda tertarik untuk menjelajahi tren dalam jangka waktu yang lebih lama, periode perataan yang lebih besar mungkin lebih tepat. Periode perataan besar biasanya tidak berguna untuk melihat kondisi anomali jangka pendek. Jika Anda menggunakan, misalnya, periode penyelarasan beberapa minggu, keberadaan anomali dalam periode tersebut mungkin masih dapat terdeteksi, tetapi data yang diselaraskan mungkin terlalu halus sehingga tidak dapat digunakan.
Frekuensi pengambilan sampel
Frekuensi penulisan data, atau frekuensi sampling, juga dapat memengaruhi pilihan periode penyelarasan. Lihat Daftar metrik untuk mengetahui frekuensi sampling metrik bawaan. Perhatikan gambar berikut, yang menggambarkan deret waktu dengan frekuensi sampling satu titik per menit:
Jika periode penyelarasan sama dengan periode pengambilan sampel, akan ada satu titik data di setiap periode penyelarasan. Artinya,
menerapkan salah satu pelurus max
, mean
, atau min
akan menghasilkan deret waktu yang selaras. Ilustrasi berikut menunjukkan
hasil ini, beserta deret waktu aslinya sebagai garis yang memudar:
Untuk mengetahui informasi selengkapnya tentang cara kerja fungsi aligner, lihat Perata.
Jika periode penyelarasan ditetapkan ke dua menit, atau menggandakan periode
sampling, akan ada dua titik data di setiap periode. Jika pelurus max
, mean
,
atau min
diterapkan ke titik-titik dalam periode perataan
dua menit, deret waktu yang dihasilkan akan berbeda. Ilustrasi berikut menunjukkan
hasil ini, beserta deret waktu aslinya sebagai garis yang memudar:
Saat memilih periode penyelarasan, buat periode tersebut lebih panjang dari periode pengambilan sampel, 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 poin per hari, periode penyelarasan satu jam terlalu singkat untuk dianggap berguna: untuk sebagian besar jam, tidak akan ada data.
Perata
Setelah data dibagi menjadi periode penyelarasan, Anda dapat memilih sebuah fungsi, yaitu penyelaras, yang akan diterapkan ke titik data dalam periode tersebut. Perata menghasilkan satu nilai yang ditempatkan di akhir setiap periode penyelarasan.
Opsi perataan mencakup penjumlahan nilai, atau menemukan nilai maks, min, atau rata-rata dari nilai, menemukan nilai persentil yang dipilih, menghitung nilai, dan lainnya. Cloud Monitoring API mendukung serangkaian fungsi penyelarasan dalam jumlah besar, lebih banyak daripada kumpulan fungsi sederhana yang diilustrasikan di sini; lihat Aligner
untuk mengetahui daftar lengkapnya. Untuk deskripsi tentang tarif dan delta aligner,
yang mengubah data deret waktu, lihat
[Jenis, jenis, dan konversi][jenis-jenis-konversi].
Misalnya, dengan mengambil data bucket dari deret waktu mentah (diilustrasikan dalam Gambar 1), pilih aligner dan terapkan ke data di setiap bucket. Tabel berikut menunjukkan nilai mentah dan hasil dari tiga pelurus yang berbeda, maks, rata-rata, dan min:
Periode | Nilai | Perata: maks | Perata: rata-rata | Perata: min |
---|---|---|---|---|
13.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 perataan max, mean, atau min menggunakan periode penyelarasan 1 jam dengan deret waktu merah yang asli (ditunjukkan dengan garis memudar dalam ilustrasi):
Beberapa pelurus lainnya
Tabel berikut menunjukkan nilai mentah yang sama dan hasil dari tiga penyelaras lainnya:
- Jumlah menghitung jumlah nilai dalam periode penyelarasan.
- Sum menjumlahkan semua nilai dalam periode penyelarasan.
- Next lebih lama menggunakan nilai terbaru dalam periode sebagai nilai perataan.
Periode | Nilai | Perata: hitungan | Perata: jumlah | Penyelaras: yang lebih lama |
---|---|---|---|---|
13.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 disejajarkan ke dalam deret waktu baru. Langkah ini mengganti semua nilai pada batas periode penyelarasan dengan satu nilai. Karena berfungsi pada deret waktu terpisah, pengurangan juga disebut agregasi lintas deret.
Pengurang
Pereduksi adalah fungsi yang diterapkan pada nilai di seluruh rangkaian waktu untuk menghasilkan satu nilai.
Opsi pengurang mencakup penjumlahan nilai yang disejajarkan, atau menemukan nilai maksimum, minimum,
atau rata-rata dari nilai tersebut. Cloud Monitoring API mendukung serangkaian besar fungsi pengurangan; lihat Reducer
untuk mengetahui daftar lengkapnya.
Daftar pengurangan sejajar dengan daftar pelurus.
Deret waktu harus disejajarkan sebelum dapat dikurangi. Ilustrasi berikut menunjukkan hasil yang menyelaraskan ketiga deret waktu mentah (dari Gambar 1) ke dalam periode 1 jam dengan penyelaras rata-rata:
Nilai dari tiga deret waktu yang selaras rata-rata (diilustrasikan dalam Gambar 4) ditunjukkan 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 disejajarkan dalam tabel sebelumnya, pilih pengurang dan terapkan ke nilai tersebut. Tabel berikut menunjukkan hasil penerapan pengurangan yang berbeda pada data yang diselaraskan dengan rata-rata:
Batas perataan | Peredam: maks | Peredam: rata-rata | Peredam: min | Peredam: 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, sehingga menghasilkan satu deret waktu. Ilustrasi berikut menunjukkan hasil penggabungan tiga deret waktu yang selaras rata-rata dengan peredam max, yang menghasilkan nilai rata-rata tertinggi di seluruh deret waktu:
Pengurangan juga dapat digabungkan dengan pengelompokan, yang mengelompokkan deret waktu ke dalam kategori, dan pengurangan diterapkan di seluruh deret waktu dalam setiap grup.
Pengelompokan
Pengelompokan memungkinkan Anda menerapkan pengurang di seluruh subsets deret waktu, bukan di seluruh kumpulan deret waktu. Untuk mengelompokkan deret waktu, pilih satu atau beberapa label. Deret waktu tersebut kemudian dikelompokkan berdasarkan nilainya untuk label yang dipilih.
- Hal ini menghasilkan satu deret waktu untuk setiap grup.
- Kemudian, Anda dapat menerapkan pengurangan yang berbeda di seluruh deret waktu menurut grupnya; hal ini disebut pengurangan sekunder, dan pengurangan semua deret waktu yang dikelompokkan menjadi satu hasil.
Jika jenis metrik mencatat nilai untuk label zone
dan color
, Anda dapat mengelompokkan deret waktu menurut salah satu atau kedua label. Saat Anda menerapkan
pereduksi, 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 berdasarkan zona, Anda akan mendapatkan deret waktu untuk setiap zona yang muncul dalam data. Jika mengelompokkan berdasarkan 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
menyelaraskan semua deret waktu, keduanya dapat dikelompokkan menurut nilai color
, lalu
dikurangi menurut kelompok. Hal ini menghasilkan tiga deret waktu khusus warna:
Contoh ini tidak menentukan pelurus atau pengurang yang digunakan; intinya di sini adalah
pengelompokan memungkinkan Anda mengurangi kumpulan deret waktu yang besar menjadi set yang lebih kecil,
dengan setiap deret waktu mewakili grup yang berbagi atribut yang sama: dalam contoh
ini, nilai label color
.
Agregasi sekunder
Saat Anda menggunakan pengelompokan, lebih dari satu deret waktu dapat dihasilkan dari pengurangan. Agregasi sekunder memungkinkan Anda memilih pengurangan kedua untuk diterapkan setelah pengurangan yang dikelompokkan.
Tabel berikut menunjukkan nilai deret waktu yang dikelompokkan (diilustrasikan dalam Gambar 6):
Batas perataan | Kelompok merah | Grup biru | Grup hijau |
---|---|---|---|
2:00 | 400 | 150 | 450 |
3:00 | 200 | 350 | 450 |
4:00 | 300 | 300 | 400 |
Ketiga deret waktu yang sudah dikurangi ini dapat dikurangi lebih lanjut dengan menerapkan agregasi sekunder. Tabel berikut menampilkan hasil penerapan pengurangan yang dipilih:
Batas perataan | Peredam: maks | Peredam: rata-rata | Peredam: min | Peredam: jumlah |
---|---|---|---|---|
2:00 | 450 | 333,3 | 150 | 1.000 |
3:00 | 450 | 333,3 | 200 | 1.000 |
4:00 | 400 | 333,3 | 300 | 1.000 |
Ilustrasi berikut menunjukkan hasil penggabungan tiga rangkaian yang dikelompokkan dengan peredam rata-rata:
Jenis, jenis, dan konversi
Ingat bahwa titik data dalam deret waktu dicirikan oleh jenis metrik dan jenis nilai. Baca Jenis nilai dan jenis metrik untuk mengetahui ulasannya. Perata dan pengurangan yang tepat untuk satu set data mungkin tidak sesuai untuk set data lainnya. Misalnya, aligner atau pengurang yang menghitung jumlah nilai salah sesuai untuk data boolean, tetapi tidak untuk data numerik. Demikian pula, aligner atau pengurangan yang menghitung rata-rata berlaku untuk data numerik, tetapi tidak untuk data boolean.
Beberapa penyelaras dan pengurangan juga dapat digunakan untuk mengubah jenis metrik atau
jenis nilai data dalam deret waktu secara eksplisit. Beberapa atribut, seperti
ALIGN_COUNT
, melakukannya sebagai efek samping.
Jenis metrik: Metrik kumulatif adalah metrik yang setiap nilai mewakili total sejak pengumpulan nilai dimulai. Anda tidak dapat menggunakan metrik kumulatif langsung dalam diagram, tetapi dapat menggunakan metrik delta, dengan setiap nilai mewakili perubahan sejak pengukuran sebelumnya.
Anda juga dapat mengonversi metrik kumulatif dan delta untuk mengukur metrik. 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 bahwa Anda memilih pelurus
ALIGN_DELTA
dan periode perataan selama tiga menit. Karena periode penyelarasan tidak sesuai dengan (waktu mulai, waktu berakhir] untuk setiap sampel, deret waktu akan dibuat dengan nilai terinterpolasi. Untuk contoh ini, deret waktu interpolasi adalah:(waktu mulai, waktu berakhir] (menit) nilai terinterpolasi (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 penyelarasan selama tiga menit dijumlahkan untuk menghasilkan nilai yang disejajarkan:
(waktu mulai, waktu berakhir] (menit) nilai yang disejajarkan (MiB) (0, 3] 10 (3, 6] 4 (6, 9] 9 Jika
ALIGN_RATE
dipilih, prosesnya sama, hanya saja nilai yang disejajarkan dibagi dengan periode penyelarasan. Untuk contoh ini, periode penyelarasan adalah tiga menit sehingga deret waktu yang diselaraskan memiliki nilai berikut:(waktu mulai, waktu berakhir] (menit) nilai yang disejajarkan (MiB / detik) (0, 3] 0,056 (3, 6] 0,022 (6, 9] 0,050 Untuk membuat diagram metrik kumulatif, metrik tersebut harus dikonversi menjadi metrik delta atau metrik tarif. 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 perataan dan pengurangan tidak mengubah jenis nilai data input; misalnya, data bilangan bulat masih berupa data bilangan bulat setelah penyelarasan. Penyelaras dan pengurangan lain mengonversi data dari satu jenis ke jenis lainnya, yang berarti informasi dapat dianalisis dengan cara yang tidak sesuai dengan jenis nilai asli.
Misalnya, pengurang
REDUCE_COUNT
dapat diterapkan pada data numerik, boolean, string, dan distribusi, tetapi hasil yang dihasilkannya adalah bilangan bulat 64-bit yang menghitung jumlah nilai dalam periode tersebut.REDUCE_COUNT
hanya dapat diterapkan untuk mengukur dan delta metrik, tanpa mengubah jenis metrik.
Tabel referensi untuk Aligner
dan
Reducer
menunjukkan jenis data yang sesuai untuk masing-masing data dan konversi apa pun yang
menghasilkan. Misalnya, kode berikut menunjukkan entri untuk ALIGN_DELTA
: