針對擷取進行優化
如果擷取排程對應於高資源使用量,或者擷取花費很長時間才完成,請嘗試針對擷取進行優化。
附註: 本主題使用監視部分中的範例效能工作簿。有關詳情,請參閱使用範例效能工作簿分析資料。
何時針對擷取進行優化
擷取排程產生高 CPU 使用率
使用範例效能工作簿的 [Background Jobs] (背景作業)儀表板來檢視 Tableau Server 執行的背景作業數,包括擷取重新整理作業。該儀表板還顯示長時間背景作業的延遲時間,即對背景作業進行排程和實際執行背景作業所間隔的時間量。如果在一天中的特定時間看到長時間延遲,或者有很多作業同時執行,請嘗試將作業排程分佈在一天中的不同時間來減少伺服器上的負載。
同時,將出現很多背景作業或長期延遲的時間與伺服器的 CPU 使用率進行比較。使用 [CPU Usage] (CPU 使用率)儀表板來顯示總 CPU 使用率百分比,以及每個處理序的 CPU 使用率百分比。由於背景程式處理序執行背景作業,因此,如果有很多擷取重新整理作業或者擷取重新整理作業執行緩慢,則第一個處理序會顯示負荷很大。請注意,背景程式處理序的 CPU 使用率會定期但短暫地達到 100%。這表明重新整理作業重複地集中出現。
附註:單獨處理序的 CPU 使用率百分比加起來的和可能會超過 100%,因為單獨處理序的處理器利用率是針對給定處理內核度量的。與之相比,總 CPU 使用率則針對所有處理器內核進行度量。
擷取失敗或執行緩慢
使用擷取背景工作管理檢視來確定失敗的擷取的數量以及完成擷取所花費的時間。頻繁失敗可能表明特定資料來源存在問題。
針對擷取進行優化的方式
如果像前面所示的範例中一樣,擷取重新整理排程帶來了很高的 CPU 使用率,則應針對擷取進行優化。
調整擷取重新整理排程
使用範例效能工作簿的 [Background Jobs] (背景作業)儀表板來確定執行擷取的最佳時間。除了在非高峰時段執行擷取外,您還可以分開執行擷取重新整理,以儘量減少併發伺服器負載。如果擷取重新整理繼續產生問題,請透過以下方式儘量減小擷取重新整理的頻率:
將擷取排程在伺服器不忙的時候執行。
減少重新整理的頻率。
加快特定擷取的速度
使用擷取背景工作管理檢視來確定失敗的擷取和長時間執行的擷取。
減少擷取的大小。您可以使擷取的資料集保持較短,利用篩選或彙總,以及隱藏未使用的欄位來縮小範圍,所有這些方法有助於提高伺服器效能。若要進行這些變更,請使用 Tableau Desktop 選項 [隱藏所有未使用的欄位] 和 [彙總可視維度的資料] 。有關詳情,請參閱 Tableau 說明中的建立擷取。
有關構建效能良好的工作簿的一般提示,請在 Tableau 說明中搜尋 [效能] 。若要檢視工作簿發佈到 Tableau Server 後的執行情況,您可以建立效能記錄。有關詳情,請參閱建立效能記錄。
使用累加式重新整理作業。累加式重新整理作業會將新列附加到現有擷取,而不是從頭開始建立擷取。這種類型的擷取重新整理執行很快,因為它只處理自上次擷取重新整理作業執行以來新增的資料。但是,它不會考慮更新(而不是附加到資料來源)的資料。因此,如果執行累加式重新整理作業,您仍然應該偶爾執行完全重新整理作業。例如,您可以為資料來源一周執行一次或兩次完全重新整理作業,而不是每天執行。
為擷取重新整理設定執行模式
建立擷取重新整理排程時,請確保排程以並存執行模式執行。並行執行排程時,排程將在所有可用背景程式處理序上執行,即使排程只包含一個重新整理工作。以串列方式執行排程時,排程僅在一個背景程式處理序上執行。預設情況下,執行模式設定為並行,以便重新整理工作能儘快完成。
但是,在某些情況下,將執行模式設定為串列也可能有意義。舉例來說,如果一個非常大的作業由於會佔用所有可用背景程式處理序而使其他排程無法執行,則您可以將執行模式設定為串列。
增加背景程式處理序數
對於某些工作,單個背景處理程序可能會佔用 100% 的單個 CPU 內核。因此,您應執行的實例總數取決於電腦的可用內核數。如果在叢集中安裝了 Tableau Server,並且在單獨的節點上執行背景程式處理序,一條好的經驗法則是:將背景程式處理序數設定為介於執行背景程式處理序的電腦的一半內核數和全部內核數之間。
有關設定處理序的詳情,請參閱設定節點。
隔離處理序
如果在叢集中安裝 Tableau Server,則您可以透過將背景程式處理序轉移到單獨的節點來避免資源爭用,從而獲得最大的好處。這是因為背景程式處理序會佔用非常大量的 CPU,如果在其他大量佔用 CPU 的處理序所在的同一節點上執行該處理序,將可能會拖慢伺服器。例如,VizQL Server 處理序和資料引擎處理序都可能會大量佔用 CPU。有關詳情,請參閱推薦的基準設定主題中的雙節點設定。