ADBPG&Greenplum成本优化问题之排查并清理冗余索引以优化空间使用如何解决

简介: ADBPG&Greenplum成本优化问题之排查并清理冗余索引以优化空间使用如何解决

问题一:为什么有时手动执行VACUUM后膨胀的空间并没有回收?


为什么有时手动执行VACUUM后膨胀的空间并没有回收?


参考回答:

有时手动执行VACUUM后膨胀的空间没有回收,可能是因为目标表上仍有一个或多个大事务(启动时间比VACUUM更早)尚未结束。内核会认为这些旧的数据还可能被使用,因此不会回收它们所占用的空间。


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/667967



问题二:如何排查并清理冗余索引以优化空间使用?


如何排查并清理冗余索引以优化空间使用?


参考回答:

排查并清理冗余索引可以通过以下步骤进行:首先,检查是否有包含“异常多”字段的复合索引,例如通过SQL查询索引包含字段大于等于4个列的表;其次,检查是否存在前缀字段相同的多个复合索引;最后,分析是否存在优化器从来不走的索引。根据排查结果,与业务方沟通确认后,可以删除冗余索引以释放空间。


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/667968



问题三:如何查询并识别出包含字段较多的复合索引?


如何查询并识别出包含字段较多的复合索引?


参考回答:

可以使用以下SQL查询包含字段大于等于4个列的复合索引

WITH t AS ( 
SELECT indrelid, indkey, COUNT(DISTINCT unnest_idx) AS unnest_idx_count 
FROM pg_catalog.pg_index, unnest(indkey) AS unnest_idx 
GROUP BY 1, 2 
HAVING COUNT(DISTINCT unnest_idx) >= 4 
ORDER BY 3 DESC 
) 
SELECT relname AS tablename, t.unnest_idx_count AS idx_cnt 
FROM pg_class c, t 
WHERE c.oid = t.indrelid;


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/667969



问题四:在清理冗余索引时,如何确定哪些索引是可以删除的?


在清理冗余索引时,如何确定哪些索引是可以删除的?


参考回答:

在清理冗余索引时,需要综合考虑索引的用途、查询性能、空间占用等因素。一般来说,如果索引包含过多的字段(如超过6个),或者存在前缀字段相同但多余的复合索引,或者优化器从未使用的索引,都可以视为冗余索引进行清理。但在删除前,需要与业务方充分沟通,确保这些索引不再被需要。


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/667970


问题五:清理冗余索引后,对空间优化有何显著效果?


清理冗余索引后,对空间优化有何显著效果?


参考回答:

清理冗余索引可以显著优化空间使用。在一个客户案例中,通过删除200多个冗余索引,释放了高达24T的空间,直接释放了7%的业务空间。这样的优化效果非常可观,尤其是在面对高峰期的数据写入时,能够有效避免因空间不足而导致的性能问题。


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/667971

相关文章
|
4月前
|
存储 SQL 关系型数据库
ADBPG&Greenplum成本优化问题之垃圾数据回收如何解决
ADBPG&Greenplum成本优化问题之垃圾数据回收如何解决
45 2
|
4月前
|
存储 运维 数据库
ADBPG&Greenplum成本优化问题之优化Greenplum的性能和磁盘使用如何解决
ADBPG&Greenplum成本优化问题之优化Greenplum的性能和磁盘使用如何解决
42 1
|
4月前
|
SQL 存储 关系型数据库
ADBPG&Greenplum成本优化问题之排查存在前缀字段相同的多个复合索引如何解决
ADBPG&Greenplum成本优化问题之排查存在前缀字段相同的多个复合索引如何解决
40 2
|
4月前
|
存储 SQL 分布式计算
ADBPG&Greenplum成本优化问题之冷热数据分层存储的定义如何解决
ADBPG&Greenplum成本优化问题之冷热数据分层存储的定义如何解决
46 1
|
4月前
|
SQL 存储 关系型数据库
ADBPG&Greenplum成本优化问题之查询大表的dead tuple占比和空间如何解决
ADBPG&Greenplum成本优化问题之查询大表的dead tuple占比和空间如何解决
39 1
|
4月前
|
SQL 存储 监控
ADBPG&Greenplum成本优化问题之通过SQL查询找到数据库中所有的复制表如何解决
ADBPG&Greenplum成本优化问题之通过SQL查询找到数据库中所有的复制表如何解决
42 1
|
7月前
|
缓存 关系型数据库 MySQL
MySQL 查询优化:提速查询效率的13大秘籍(索引设计、查询优化、缓存策略、子查询优化以及定期表分析和优化)(中)
MySQL 查询优化:提速查询效率的13大秘籍(索引设计、查询优化、缓存策略、子查询优化以及定期表分析和优化)(中)
1162 0
|
7月前
|
缓存 关系型数据库 MySQL
MySQL查询优化:提速查询效率的13大秘籍(合理使用索引合并、优化配置参数、使用分区优化性能、避免不必要的排序和group by操作)(下)
MySQL查询优化:提速查询效率的13大秘籍(合理使用索引合并、优化配置参数、使用分区优化性能、避免不必要的排序和group by操作)(下)
326 0
|
5月前
|
运维 关系型数据库 分布式数据库
PolarDB产品使用问题之将部分表设置为压缩表,是否会对节点的整体性能影响
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
SQL 存储 算法
ADBPG&Greenplum成本优化问题之ADB PG中平衡数据压缩与访问性能如何解决
ADBPG&Greenplum成本优化问题之ADB PG中平衡数据压缩与访问性能如何解决
43 0
下一篇
DataWorks