數據分割 - 主動式快取
適用於: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
主動式快取提供 OLAP 物件的自動 MOLAP 快取建立和管理。 Cube 會根據從資料庫收到的通知,立即納入資料庫中數據所做的變更。 主動式快取的目標是要提供傳統 MOLAP 的效能,同時保留 ROLAP 所提供的即時性和輕鬆的管理。
簡單的 ProactiveCaching 物件是由:計時規格和數據表通知所組成。 計時規格會定義在收到變更通知之後更新快取的時間範圍。 數據表通知會定義數據表與 ProactiveCaching 物件之間的通知架構。
多維度 OLAP (MOLAP) 記憶體提供最佳的查詢回應,但會降低某些數據延遲。 實時關係型 OLAP (ROLAP) 記憶體可讓使用者立即瀏覽數據源中最近的變更,但因為沒有預先計算的數據摘要,因此效能明顯低於多維度 OLAP (MOLAP) 記憶體,而且因為關係型記憶體未針對 OLAP 樣式查詢進行優化。 如果您有使用者需要查看最近數據的應用程式,而且也想要 MOLAP 記憶體的效能優勢,SQL Server Analysis Services 會提供主動式快取選項來解決此案例,特別是搭配使用分割區。 主動式快取是以每個數據分割和每個維度為基礎來設定。 主動式快取選項可以在 MOLAP 記憶體的增強效能與 ROLAP 記憶體的立即性之間提供平衡,並在基礎數據變更或設定排程時提供自動分割區處理。
主動式快取組態選項
SQL Server Analysis Services 提供數個主動式快取組態選項,可讓您將效能最大化、將延遲降到最低,以及排程處理。 主動式快取功能可簡化管理數據過時的程式。 主動式快取設定會決定重新建置 MOLAP 快取的多維度 OLAP 結構的頻率、在重建快取或基礎 ROLAP 數據源時查詢過期的 MOLAP 記憶體,以及快取是根據排程重建或資料庫變更。
將延遲降到最低
將主動式快取設定為將延遲降到最低時,會針對 ROLAP 記憶體或 MOLAP 記憶體對 OLAP 物件進行使用者查詢,視數據最近發生的變更以及主動式快取的設定方式而定。 查詢引擎會針對 MOLAP 記憶體中的源數據導向查詢,直到數據源發生變更為止。 若要將延遲降到最低,在數據源中發生變更之後,可以卸除快取的 MOLAP 物件,並在快取中重建 MOLAP 物件時查詢切換至 ROLAP 記憶體。 重建和處理 MOLAP 物件之後,查詢會自動切換至 MOLAP 記憶體。 小型分割區可能會非常快速地進行快取重新整理,例如目前的分割區,這可以和目前一樣小。
最大化效能
為了將效能最大化同時降低延遲,您也可以使用快取,而不需要卸除目前的 MOLAP 物件。 然後,當數據在新的快取中讀取和處理時,查詢會繼續處理 MOLAP 物件。 這個方法提供較佳的效能,但可能會導致在建置新快取時傳回舊數據的查詢。