FINAL關鍵字
ClickHouse會在返回結果之前完全合並數據,從而執行給定表引擎合並期間發生的所有數據轉換。
注意:
1.select語句+final的話,會對表的order字段進行排序去重。注意主鍵要加上分區字段(雖然跨分區不會去重,但select會合並結果)(試驗過)。
2.在大多數情況下,避免使用 FINAL. 常見的方法是使用假設后台進程的不同查詢 MergeTree 引擎還沒有發生,並通過應用聚合(例如,丟棄重復項)來處理它。
3. join 去重表 final 這樣不會去重,join (select * from 去重表 final)這樣才能去重。
分布式表可以加final,可以實現去重。 要確定好分布式表的sharding_key(一定是主鍵的第一個),確保相同的數據去到同一個節點。