Dashboard 功能是結合各種 Visualization,
也能根據不同角度/使用者組合各自想要的樣貌,這樣可以一次綜觀全貌,
也就是 所謂的 Business Intelligence (BI) 使用情境中最常用的一環。
Add Widget 代表新增一個 Visualization (不是一個 Query)
跟之前製作 Parameter 一樣,是要先選 Query ,
然後這裡要再選擇該 Query 底下的其中一個 Visualization。
也就是如果一個 Query 有多個 Visualization,就要重複這個步驟多次。
如果在 Query 中有使用 Parameter ,並有勾選 Global,
在 Dashboard 就能以所有用到的 Visualization
其原始 Query 使用到的每一個 Parameter,調整其數值,
並按下 Refresh (等同於 Query 中要按 Execute)來進行搜索。
而不同的 Query 有相同的 Parameter 名稱,則在 Dashboard 只會出現一個,
並可以使用此 Parameter 同時對所有的 Visualization 做搜索。
此外,除了增加 Visualization,也能增加 Textbox,
以 Markdown 語法來增加一些說明文字。
當同時有一個 Parameter 名稱在多個 Query 共用,
在 Dashboard 可以用此 Parameter 搜尋,
在原先各自的 Query 也是可以用同樣的 Parameter,
那這之間的交互關係就有些特殊現象:
Dashboard 預設的 Parameter
會以最左上(由左至下的順序)出現的 Visualization
在原先的 Query 使用到的 Parameter 為主。
而原先 Query 的 Parameter 會停留在上一次使用此 Query 的操作結果,
要直接使用 Query 才算,透過 Dashboard 的 Global 觸發的不算,
也就是 Dashboard 的 Parameter 操作並不會影響原 Query。
以前面的圖為例,Dashboard 有用到
「Parameter (transactions )」、「transactions group by」這兩個 Query ,
而這兩個 Query 的 Parameter 分別停留在 「2012-08-23」、「2012-08-25」,
Dashboard是以最左上的 「Parameter (transactions )」的 Parameter 為主,
所以會是他使用到的值「2012-08-23」
這個時候如果在 Dashboard 調整 Parameter,
eg. 「2012-08-26」,並按下 Refresh ,
會看到底下兩個來自不同 Query 的 Visualization
都有依照現在的 Parameter 而出現不同的搜尋結果。
但如果這時從 功能列的 Query 進到這兩個 Query,
會發現他們仍是停留在原先各自的 Parameter 值:「2012-08-23」、「2012-08-25」
雖然 Dashboard 可以針對每個 Visualization 使用 View Query 回到原本的 Query,
這時連結帶的會是 Dashboard 使用到的 Parameter (可看圖下方的超連結預覽網址),
但如果 View Query 後沒有按下 Execute ,
又再從 功能列的 Query 進到這個 Query,他還是會停留在 原先的 「2012-08-23」。
而如果 我們再從 功能列的 Dashboard 進到這個 Dashboard,
會發現 Parameter 還是繼續用原來左上角 Visualization,
也就是原來的 「2012-08-23」,而不會是上次 Dashboard 使用的 「2012-08-26」。
但實際上如果是以 Redash 當作 BI 的方案,
大部分的操作都是落在 Dashboard 層,而非基底的 Query,
常用的 Parameter 如果每次在進到 Dashboard 都要調整的話,
每次看 Dashboard 就多了一個步驟,
建議作法就是把常用的 Parameter 在原先的 Query 做調整,
避免使用者會多一層重複操作的時間。
在旅遊電商來說,我們至少會有幾個 Dashboard:
可以看到像是「供應商vs. 營收」的 Query 就會被重複使用到,
Dashboard 就可以依照不同檢視角度組合不同的 Visualization,
也能確保資料源 Query 的一致。
同時我們還會利用 Textbox 來對裡面使用到的名詞做說明,
有 Markdown 語法也能很方便的設置一些外部連結做參考或是標示重點。
我們很常會用到日期區間的 Parameter,
上面寫到的重要事項算是以 Redash 當成公司 BI 系統中體驗到的不便之處,
我們通常日期都是以一整個月為檢視,
但每次換月的時候如果忘了調整原先的 Query,
進到 Dashboard 就會是在上一個月的數值,
每次都得調整 Dashboard 的 Parameter 也是滿麻煩的!
另外,因為我們販賣的商品很常是靠爬蟲取得的,而這也是我的工作範疇,
我也會拉一個 Dashboard 一次看所有樹莓派機器的狀況:
溫度、記憶體、抓取資料正確數量的變化、工作排程安排是否可以正常消化完畢,
來監測爬蟲的穩定性。
ps. 文章同步發表於 Medium