分享方式:


針對倉儲進行疑難解答

適用於: Microsoft Fabric 中的倉儲

本文提供針對 Microsoft Fabric 中倉儲常見問題進行疑難解答的指引。

暫時性連線錯誤

暫時性錯誤 (也稱為暫時性故障) 具有很快就會自行解決的根本原因。 如果與 Warehouse 的連線正常運作,但在用戶許可權、防火牆原則和網路設定變更的情況下開始失敗,請先嘗試這些步驟,再連絡支持人員:

  1. 檢查倉儲的狀態,並確定它未 暫停
  2. 請勿立即重試失敗的命令。 相反地,請等候 5 到 10 分鐘,建立新的連線,然後重試命令。 有時候,Azure 系統會快速轉移硬體資源,以更好地平衡各種工作負載的負載。 其中大部分重新設定事件會在不到 60 秒內完成。 在此重新設定時間範圍期間,您可能有連線到資料庫的問題。 當服務自動重新啟動以解決某些問題時,連線 ion 也可能失敗。
  3. 連線 使用不同的應用程式和/或從另一部計算機使用。

因 tempdb 空間問題而導致查詢失敗

tempdb是引擎在查詢執行期間用於各種暫存記憶體需求的系統資料庫。 用戶無法存取或設定它。 查詢可能會因為空間不足而 tempdb 失敗。 請採取下列步驟來減少 tempdb 空間使用量:

  1. 請參閱有關 統計數據 的文章,以確認已在所有數據表上建立適當的數據行統計數據。
  2. 確定所有數據表統計數據都會在大型 DML 交易之後更新。
  3. 具有複雜 JOIN、GROUP BY 和 ORDER BY 的查詢,並預期傳回大型結果集在執行時會使用更多 tempdb 空間。 更新查詢,以盡可能減少 GROUP BY 和 ORDER BY 資料行的數目。
  4. 當沒有其他作用中查詢執行時,請重新執行查詢,以避免在查詢執行期間的資源限制。

查詢效能似乎隨著時間而降低

許多因素可能會影響查詢的效能,例如數據表大小、數據扭曲、工作負載並行、可用資源、網路等變更。只是因為查詢執行速度較慢,不一定表示發生查詢效能問題。 請採取下列步驟來調查目標查詢:

  1. 找出效能良好和不良執行中所有效能影響因素的差異。
  2. 請參閱有關 統計數據 的文章,以確認已在所有數據表上建立適當的數據行統計數據。
  3. 確定所有數據表統計數據都會在大型 DML 交易之後更新。
  4. 檢查基表中的數據扭曲。
  5. 暫停並繼續服務。 然後,當沒有其他作用中的查詢執行時,請重新執行查詢。 您可以使用 DMV 監視倉儲工作負載。

長時間執行之後,查詢會失敗。 不會將數據傳回給用戶端。

SELECT 語句可能會在後端順利完成,而且嘗試將查詢結果集傳回客戶端時失敗。 請嘗試下列步驟來找出問題:

  1. 使用不同的用戶端工具來重新執行相同的查詢。
  2. 如果步驟 1 失敗,請執行具有失敗 SELECT 語句的 CTAS 命令,將 SELECT 查詢結果傳送至相同倉儲中的另一個數據表。 使用 CTAS 可避免將查詢結果集傳回用戶端電腦。 如果 CTAS 命令順利完成並填入目標數據表,則原始查詢失敗可能是由倉儲前端或客戶端問題所造成。

連絡 Microsoft 支援服務之前要收集哪些專案

  • 提供倉儲的工作區標識碼。
  • 提供語句標識碼和分散式要求標識碼。 查詢完成或失敗之後,會以訊息的形式傳回它們。
  • 提供確切錯誤訊息的文字。
  • 提供查詢完成或失敗的時間。