分析師只需記住的結論
- 持久分頁跑完 → 產生快取表,可在後續 SQL 裡直接
FROM "分頁名"引用。 - Agent 在 Execute 時也可能產生快取(多見於後台步驟);兩種快取在側邊欄 Cached 都能 查看 SQL。
- Source Run 用在你引用了上游分頁、想按依賴順序重跑整條鏈——是加速與重跑手段,不是「分析合不合格」的門檻。
- 一次性 JOIN 若口徑清楚,可以直接跑——不必為了「看起來很專業」硬拆很多步。
兩種快取:persist vs agent
| persist 快取 | agent 快取 | |
|---|---|---|
| 來源 | 你(或 Agent)儲存並執行的持久 SQL 分頁 | Agent Execute 過程中物化的中間結果 |
| 查看 SQL | 分頁內 SQL | 系統記錄的查詢 SQL |
| Source Run | 支援 | 不參與 |
| 右鍵 | Run、Source Run、Open Tab、Lineage 等 | mainly 查看 / 刪除 / SELECT 100 |
分析師日常:
- 懷疑口徑 → Cached → 查看 SQL
- 改了上游分頁 → 對下游分頁 Source Run 或手動重跑上游
- 快取過期或重啟後消失 → 重新執行對應分頁即可(見 USER_GUIDE §7.4 注意事項)
什麼時候值得拆 persist 分頁
值得拆:
- 同一「清洗邏輯」會被 3 次以上 引用
- 中間表很大,重跑成本高,且口徑已 在 Plan 寫死
- 你要給同事看 「這步到底濾了什麼」 作為審查點
不必硬拆:
- 兩表 join 條件已在 Plan 說清,且 SQL 一屏能讀完
- 只是 Quick 裡試一下 filter
原則: 分析正確性與可審性優先;拆步是為了重跑、除錯、共用,不是儀式。
Source Run 是什麼(白話版)
當你的 SQL 寫了 FROM "clean_orders",而 clean_orders 來自另一個持久分頁時,Source Run 會:
- 找出所有上游依賴
- 按順序執行上游分頁
- 最後執行你這一頁
適合:上游改過、下游要更新,或你不確定上游是否還是最新。
Lineage(血緣圖) 可視覺化誰依賴誰——週會解釋「這個數從哪幾步來」時有用。
與 Execute / Report 的關係
- Execute 中 Agent 可能建立多個 SQL 分頁與快取;Progress → Steps 可對照查詢步驟。
- Report 寫的是結論;SQL + 快取是證據。追問時兩邊都要能對上。
- 刪除快取會更新對話內的 Query Step Ledger 狀態;Agent 之後應重新查詢,而不是假設舊表還在。