在連接數據源后,進行數據源反射的創建,dremio會在本地創建一個類似於副本的文件,具體目錄未知,當下次去執行sql時,則會啟動加速器進行查詢速度的優化。
反射策略:
full update:數據源全更新,每次更新所有源數據的反射
incremental update:增量數據更新,根據特定的字段進行數據更新,即使是null值,反射數據也會更新,一般依賴主鍵進行新數據的判斷
更新類別統計如下
1.刪除數據:反射不更新
2.點擊refresh now:立即執行更新,更新規則與定時更新一致
3.新增數據行(包含標識字段):反射會更新
4.新增數據行(未包含標識字段,null):反射會更新
5.更新數據行(不更新標識字段):反射不更新
備注:若新增的數據行的標識的值,在原先的記錄中已經存在,則並不會更新反射數據集
更新策略:
以小時、天、周為單位進行選擇,也可以選擇永不更新
過期策略:
同理
當執行sql時,確保單機的是run而不是preview
普通加速的反射:
聚合加速的反射:
可以在同一個物理源數據集上,進行多種數據反射,比如創建以下數據反射
1.全字段數據反射
2.只選擇部分字段進行反射,並排序、分區
3.進行聚合反射
以上反射數據源都是建立在一個數據集上,不同查詢條件,dremio會自動選擇最合適的反射數據集進行數據加速