對於軟體工程背景的人來說, Metabase 就像一層圖形化使用者介面 (graphical user interface) ,把資料倉儲 (data warehouse) 包裝了起來。簡單直覺地理解方式,就是把 Metabase 視為是一種圖形化界面的 SQL 產生器/翻譯器 。
上述看待 Metabase 的方式,是一種「原理優先」的視角:理解事物,從這些事物的底層怎麼運作來設法加以了解。相對於「原理優先」的視角,另一種理解事物的觀點,可以稱之為「應用優先」:理解事物,先從這些事物運作了之後可以達成什麼目的,又或是使用的情境來設法加以了解。
如果我們要從「應用優先」的角度來理解 Metabase ,那我們要先談談資料分析裡的一些重要概念與操作。
以上表 (product table) 為例:
這邊要特別注意兩點:
當我們面對大量的資料時,要對這些資料產生一些了解,第一步,通常是我們要先縮小有興趣的資料範圍。這時,很適合用篩選 (filter) 。
當有興趣的資料已經被篩選出來之後,我們很可能想要對資料做個快速地概括性了解。這時,適合的操作就是概括 (summarize),概括是「先用某個維度 (dimension) 對資料分群,再對這些群體的度量資訊 (measure) 做一個數學運算操作」。常用的數學運算有:加總、平均、最大值、最小值、計算筆數。這邊要注意一點,概括也可以是「不分群,直接對所有資料的度量資訊 (measure) 做一個數學運算操作」。
上圖, Metabase 顯示資料表 (table) 的主畫面所顯示的,篩選 (filter) 與概括 (summarize) 的按鈕就在畫紅圈的位置,非常地顯眼,因為這兩種操作就是最常用的資料操作了。
想象一段常見的管理階層對話。
某公司的經營者 A ,休假一週後,回到公司。一上班後,立馬先找業務主管:「我們的業績如何?」先掌握現況吧。
於是,業務主管回報了最新的數字。
接著,經營者 A 問了下一個問題:「你認為這樣子算好嗎?」
業務主管回答:「這就要看你要從哪一個角度來看了…」
如果該公司的產品/服務是賣給一般消費者的 (2C),業務主管可能會把每個地區的業績展開來看。如果是賣給企業的 (2B) ,業務主管可能會把每個不同行業別的業績展開來看。
上述的『展開』,就是把業績這個度量 (measure),透過地區或是行業別這兩種維度 (dimension) 來做概括 (summarize)。
如果某個地區的成績特別好、特別差、又或是某個行業別賣得特別好、特別差,經營者很可能又會想知道,「為什麼這件事會發生?」
為了回答這個進一步的問題,業務主管很可能必須篩選 (filter) 某地區、某行業相關的資料,而這些資料自然又包含了許許多多新的維度 (dimension),然後,再利用這些維度去對業績做分析,直到他想出各式各樣的可能原因為止。