基础入门
标签下的所有文章
108 篇文章
返回所有标签PostgreSQL查不动?分区表+覆盖索引+物化视图的优化魔法了解下?
大数据量查询优化中,分区表和索引策略是关键。分区表通过将大表拆分为多个物理子表,减少IO,适用于时间序列、类别化和均匀分布数据。索引优化中,覆盖索引和部分索引能显著提升查询效率。报表查询优化可通过物化视图预计算结果和并行查询加速复杂聚合。混合负载优化需通过资源管理和pg_stat_statements定位慢查询,隔离OLTP与OLAP资源,确保系统性能平衡。
阅读更多
cmdragon
想让PostgreSQL快到飞起?先找健康密码还是先换引擎?
PostgreSQL性能调优的核心在于性能监控和配置参数调整。性能监控聚焦资源使用、查询性能和系统状态,利用pg_stat_activity、pg_stat_user_tables和pg_stat_statements等工具识别瓶颈。配置参数调优包括调整 …
阅读更多
cmdragon
广告位
想让PostgreSQL查询快到飞起?分区表、物化视图、并行查询这三招灵不灵?
分区表通过将大表拆分为小表,优化查询性能、数据维护和存储分层。PostgreSQL支持范围、列表和哈希分区。声明式分区步骤包括创建分区表、分区、索引及验证数据路由。分区维护涉及添加、删除和detach分区。分区剪枝自动跳过无关分区,提升查询效率。物化视图通过存储查询结果加速查询,需手动刷新。并行查询利用多CPU加速大表扫描、聚合和连接,但需函数并行安全。常见 …
阅读更多
cmdragon
PostgreSQL连接的那些弯弯绕:笛卡尔积、外连接和LATERAL你都理明白没?
PostgreSQL支持多种连接类型,包括交叉连接(CROSS JOIN)、内连接(INNER JOIN)和外连接(LEFT/RIGHT/FULL OUTER JOIN)。交叉连接生成笛卡尔积,内连接仅保留匹配行,外连接保留未匹配行并用NULL填充。USING和NATURAL JOIN可简化连接条件。连接顺序影响性能,建议优先连接小结果集的表。LATERAL …
阅读更多
cmdragon
子查询总拖慢查询?把它变成连接就能解决?
子查询是嵌套在其他SQL语句中的查询,分为标量、行、列和表子查询。相关子查询依赖外部查询变量,性能较差,而非相关子查询独立执行。PostgreSQL优化器通过子查询扁平化将子查询转换为更高效的连接操作。连接操作包括内连接、外连接和交叉连接,优化器基于成本模型选择连接顺序和方法,如嵌套循环、哈希和排序合并连接。通过改写子查询为连接或使用LATERAL连接,可以 …
阅读更多
cmdragon
广告位
