这篇文章主要介绍了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 参数可支持读时查询,但是必须有索引且刷新速度会变慢(用时间换取查询锁)。目前还不支持增量查询。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。
如对本文有疑问, 点击进行留言回复!!
SSD原理及Pytorch代码解读——网络架构(二):特征提取网络及总体计算过程
集合类 ArrayList 和 LinkedList 直接用 Innodb(MySQL 5.0
网友评论