我發現從統計學、電子、電腦繪圖的角度來看取樣,在說法上有點不同,但我認為大致上的概念是相同的。
資料實在是「太多了」,沒辦法拿這麼多的資料處理,但我們可以降低資料的數量,但和原本的資料大致上差不多,我們就可以做分析,得到我們想要的結果。
取樣是什麼?
在電子的領域中,取樣用在聲音上,將人的聲音轉換成數位訊號(mp3 等等的數位聲音檔案),之後可以透過數位訊號再轉換成類比訊號,接著讓喇叭發出聲音來。在這段主要談的是將類比的人聲透過取樣轉換成數位訊號的過程。
藍線就是類比訊號(連續、不間斷的訊號),電腦沒辦法直接儲存類比訊號(留聲機可以),電腦只能紀錄 0、1 的數值,所以取樣就是「固定時間取一個值」。
註 - 在電子的領域要注意取樣的頻率,若是取樣率過低,聲音還原時會失真(和原本的聲音差很多)。
Reference:
取樣和監控的關係
做監控的時候也需要做取樣,是對 Application 做取樣。比如每 10 秒鐘對 Application 發出請求,得到一組資料,然後儲存在資料庫上。之後就可以對此資料庫做查詢,得知系統的情況,比如一週的哪幾天流量較高?一天當中的哪個時段流量較高?
當知道這基本概念後,就比較容易理解 Prometheus 的 instance vector 是什麼東西。