預覽中

Azure Analysis Services 中改進的查詢複本同步已進入預覽階段

發佈日期: 一月 18, 2020

新的 Azure Analysis Services 設定 (預覽階段) 可改進相應放大環境中查詢複本同步的效能與一致性。查詢相應放大可將用戶端查詢散發到一或多個查詢複本,縮短高並行工作負載的回應時間。查詢複本同步可將資料複寫至查詢複本資料庫。

根據預設會分階段完整地 (而非累加式) 將查詢複本重新序列化。假設至少有三個複本,系統會一次中斷連結和附加兩個複本,以確保在任何指定時間,至少會保留一個複本在線上供查詢使用。當此流程進行時,用戶端可能需要重新連線到其中一個線上複本。

新的 ReplicaSyncMode 設定讓您現在可以指定平行的查詢複本同步。最佳化的查詢複本同步也具有下列優勢:

  • 所有複本會平行同步,可大幅縮短同步時間。
  • 因為會平行同步所有複本,所以各個複本的資料在同步期間更可能達成一致。
  • 所有複本的資料庫在整個同步期間都會保持上線,因此用戶端無需重新連線。
  • 記憶體內部快取只會使用變更的資料累加式更新,比將模型完全重新序列化更加快速。

最佳化同步處理優勢的範例為,產品小組在具有 3 個複本的 S8v2 上,在大約 84 GB 大小的資料庫上進行測試。同步處理約需 2 分鐘的時間進行增量同步,而非增量同步則為 5 分鐘。對於具有 7 個複本之 S8v2 上相同的資料庫,雖然增量同步的時間維持不變,但非增量同步的時間跳升為 11 分鐘。

ReplicaSyncMode 可能的值為:

  • 1 (預設):分階段完整複本資料庫重新序列化。
  • 2:平行的最佳化同步。

FastReplicaSync (002)

如果您設定 ReplicaSyncMode=2,根據需要更新的快取數量而定,查詢複本可能會取用額外的記憶體。為了讓資料庫保持上線且可供查詢使用,視已變更的資料量而定,作業最多可能需要兩倍的複本記憶體。這是因為記憶體中會同時保存新舊區段。複本節點與主要節點的記憶體配置均相同。由於主要節點上通常會有額外的記憶體用於執行重新整理作業,所以複本不太可能會將記憶體用盡。此外,常見情況是在主要節點上累加式更新資料庫,因此不需要兩倍的記憶體。如果同步作業發生「記憶體不足」錯誤訊息,則會使用預設技術 (一次附加/中斷連結兩個複本) 來重試。

深入了解 Azure Analysis Services 的查詢相應放大

  • Azure Analysis Services
  • Features
  • Management
  • Services