物化視圖是一個數據庫對象,存儲作為一個物理表查詢的結果。與常規數據庫視圖,虛擬和他們的數據來自底層表、物化視圖包含預先計算的數據增量更新的時間表或需求。這種預先計算的數據能使你更快的查詢響應時間和在某些情況下的性能改善。
物化視圖的情況下尤其有用經常執行複雜的查詢或聚合,和底層數據很少變化。通過將預計算結果存儲,數據庫可以避免反複需要執行複雜的查詢,從而導致更快的響應時間。
物化視圖中磚的SQL通過管理統一目錄。它們存儲的預先計算結果基於最新數據從源表。與傳統的實現,磚物化視圖保留數據狀態的時候最後刷新,而不是每次更新查詢。您可以靈活地手動刷新物化視圖或設置將自動刷新。
磚SQL物化視圖是特別有用的ETL(提取、轉換、加載)處理。他們提供了一個簡單的和說明性的方法來處理合規、修正、聚合以及變化數據捕獲(CDC)。物化視圖顯著提高查詢延遲和減少成本的預計算慢查詢和常用的計算。此外,它們使無縫轉換的清潔、豐富,denormalizing基表。在某些情況下,物化視圖增量計算可以從基表的變化,導致降低成本和精簡的用戶體驗。
磚首次引入的物化視圖作為Lakehouse架構的一部分,推出三角洲生活表。創建物化視圖在數據庫SQL倉庫會自動創建一個增量表管道管理視圖刷新生活。您可以輕鬆地監視的狀態刷新操作使用三角洲住表UI, API或CLI。
下麵的示例創建物化視圖customer_orders從基表訂單和beplay体育app下载地址:
創建物化視圖customer_orders作為選擇beplay体育app下载地址customers.name,總和(orders.amount),orders.orderdate從訂單左加入beplay体育app下载地址在orders.custkey=beplay体育app下载地址customers.c_custkey集團通過的名字,向數據庫;
在磚SQL,您可以選擇設置自動刷新物化視圖基於預定義的時間表。這個時間表可以配置在創建物化視圖使用計劃條款或增加後使用改變視圖語句。一旦建立一個時間表,磚的工作是自動創建的處理更新。
審核計劃的細節在任何時候,您可以使用描述擴展語句,它提供了可見性物化視圖配置的時間表。這使您可以輕鬆地監視和管理的自動刷新物化視圖的日程表磚SQL。