全部產品
Search
文件中心

AnalyticDB:計算層高可用

更新時間:Jul 06, 2024

計算層高可用的主要目標是保證查詢的穩定性。

日常查詢分析任務在分布式的環境下,機器異常宕機在所難免。計算層高可用需要考慮如何避免因為機器宕機等異常情況導致的查詢失敗。

  • Interactive模式

    • 對於Interactive模式,MPP計算模型下全記憶體的Pipeline計算無中間結果儲存。同時對於interactive模式下本身目標在於延遲敏感的分析情境,目前對於計算節點異常宕機的情境,計算引擎會通過查詢層級重算,保證查詢穩定性。
  • Batch模式

    • 對於類似ETL等資料清洗任務,這類任務計算時間長,計算資源消耗大,如果依然查詢層級重試,整體重試代價過大時使用者無法接受。

      對於Batch模式,Stage by Stage的計算模型下的計算failover可以做到任務粒度的failover,將失敗的代價最小化。

      對於執行節點,Batch模式下支援計算中間資料落盤。任意節點宕機導致當前節點上的計算任務失敗,可依賴計算任務間的血緣關係,找到上一次持久化的中間資料結果,對失敗任務進行重新調度計算,而且僅重新計算失敗的任務。對於Coordinator前端節點,通過持久化查詢的中繼資料,通過調度新的Coordinator節點,載入查詢中繼資料進行繼續調度,做到使用者無感知。

      計算failover