小编Bry*_*yce的帖子

PostgreSQL 中的 CLUSTER USING 表是如何非集群的

我有一些表可以从Postgres SQL 中的CLUSTER ON/CLUSTER USING中受益匪浅:

# CLUSTER table USING index_name;
# ANALYZE VERBOSE table;
# CLUSTER VERBOSE;
Run Code Online (Sandbox Code Playgroud)

维护任务会定期运行 CLUSTER VERBOSE 以保持最新状态。但是,在运行 CLUSTER VERBOSE 之前,是否可以运行测试来查看表的碎片化程度?也许是这样的:

# CLUSTER ANALYZE
table 40000 records. 4000 observed clusters, 5000 potential clusters (20% fragmentation)
Run Code Online (Sandbox Code Playgroud)

请注意,我使用 CLUSTER,因此同时访问的数据被“整理”为少量磁盘块。例如,每个页面都有数千个属性。aCLUSTER page_attribute USING page_id;将所有属性放在一起,大大减少了磁盘负载。

postgresql performance optimization storage disk-structures

3
推荐指数
1
解决办法
1074
查看次数