PostgreSQL物化檢視(materialized view)過程解析
阿新 • • 發佈:2020-02-17
這篇文章主要介紹了PostgreSQL物化檢視(materialized view)過程解析,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
1、建立檢視
CREATE MATERIALIZED VIEW [ IF NOT EXISTS ] table_name [ (column_name [,...] ) ] [ WITH ( storage_parameter [= value] [,... ] ) ] [ TABLESPACE tablespace_name ] AS query [ WITH [ NO ] DATA ]
2、刪除檢視
DROP MATERIALIZED VIEW table_name
3、建立索引
CREATE INDEX idx_index_name ON table_name USING index(column);
4、手動重新整理檢視
REFRESH MATERIALIZED VIEW [ CONCURRENTLY ] name [ WITH [ NO ] DATA ]
物化檢視的建立機制和mysql的view表是一樣的,直接從對應表查詢相關資訊,但是物化檢視的查詢和普通表是一樣的,相當於一個快取機制,將複雜的查詢結果存放在物化檢視中,但每次需要refresh操作更新新的資料進去,適用於對資料實時性不是特別高的需求,版本是PostgreSQL 9.3之後才有的,在9.3版本重新整理檢視的時候不可進行查詢工作,在9.4版本之後,加上CONCURRENTLY 引數可支援讀時查詢,但是必須有索引且重新整理速度會變慢(用時間換取查詢鎖)。目前還不支援增量查詢。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。