3.2.4 效率分析 12
3.2.5 调优方案 15
3.2.6 调优原则 15
3.3 索引、主健约束 16
3.3.1 调优前效率 16
3.3.2 调优后效率 16
3.3.3 调优SQL 16
3.3.4 效率分析 16
3.3.5 调优方案 16
3.3.6 调优原则 17
3.4 分区表规划 17
3.4.1 调优前效率 17
3.4.2 调优后效率 17
3.4.3 调优SQL 17
3.4.4 效率分析 19
3.4.5 调优方案 19
3.4.6 调优原则 20
3.5 关联查询效率优化 20
3.5.1 调优SQL 20
3.5.2 效率分析 21
3.5.3 调优方案 22
3.5.4 调优原则 23
第四章 后续优化建议 24
4.1 硬件问题 24
4.2 磁盘空间回收 24
4.3 分布健调整 25
4.4 分区表建立 25
第一章 调优需求
中国太保EDW平台部分新应用上线后,出现系统性能下降和部分function执行缓慢,需要对系统进行检查和调优。
vlk环境现状如下:2+12的GP集群环境,已保存28TB的生产数据,基本上没有使用压缩表和分区表。
生产情况:在有2-3个任务并行的情况下,数据库相应非常缓慢,部分function在晚上有并发的时候执行,会很慢,但在白天单任务执行的时候会快很多。
第二章 调优时间安排
本次调优从2月18号进场开始,分成三个阶段,每阶段现场服务、调优一周。
第一阶段:2月18号----2月22号,调优过程中发现GP环境中129节点磁盘读写性能很差,同一RAID卡上一个数据目录读写性能只有100+MB/S,另一磁盘目录有300+MB/S。经查是磁盘柜头硬件故障,21号晚更换硬件后,129节点的磁盘读写性能都能达到900MB/S左右。
第二阶段:3月4号----3月8号,针对MIS应用进行调优,发现几类共性的问题。
第三阶段:3月18号----3月22号,临时性的问题解决处理,调优问题总结和培训。
第三章 调优过程
本次现场服务,除了解决129节点的硬件问题外,还解决了寿险、产险等MIS模块的一些典型的SQL效率问题,具体如下:
三.1 Greenplum执行计划分析
explain
lect
'200905',
wound coalesce(A.book_t_id,' '),
coalesce(b.book_type,' '),-- 12月份数据book_type有三种状态:“1”,调整2 “2” 用一月份的期初数当12月份的期末数(因为期初数与期末数不平) “3”调整前
coalesce(B.branch_company_code,' '),
coalesce(B.cur_code,' '),
coalesce(b.main_product_code,' '),
coalesce(A.index_id,' '),
coalesce(a.INDEX_NAME,' '),
coalesce(a.F_INDEX_ID,' '),
coalesce(a.INDEX_LEVEL,' '),
sum( B.PERIOD_NET_CR+B.BEGIN_BALANCE_CR-B.PERIOD_NET_DR-B.BEGIN_BALANCE_DR) --本期借款 +期初借款-本期贷款-期初贷款
from T_FACT_FIN_AL_CONFIG A
skirtup LEFT JOIN f_bb_fin_account_balances_mid B
ON b.index_id between A.BEGIN_SUBJECT and A.END_SUBJECT
WHERE a.index_level = 4 and b.date_stamp = '200905'
AND A.BOOK_SET_ID=B.book_t_id
GROUP BY A.D_OR_C,
coalesce(A.book_t_id,' '),
coalesce(b.book_type,' '),
coalesce(B.branch_company_code,' '),
coalesce(B.cur_code,' '),