折腾了一天,简单记下,等周一再补齐
1、干掉一个5900万笔记录上一个Distinct_key值只有36的索引,加快每天对这个表一次性插入约60万笔记录SQL的速度
2、在那个向5900万笔记录的表每日一次性插入60万笔记录的SQL上,加入/*+append*/ Hint,使Insert变成直接路径插入
3、这个5900万笔记录的人员消费明细表最后还要按部门Group BY一下当月数据,insert进部门月报表。但5900万的表上月份代码字段的索引(Distinct Key 36)被干掉,现在Select group By 这个Table时执行计划出现了全表扫,物理读有101万。改写这个Insert SQL,改以当前月份Code限制为当前月份的时间段限制,Insert时就能选中相应的时间索引,物理读是原来的1/6。
原:code='2011-12' --->新: sdate >=to_date('2011/12/01','yyyy/mm/dd') and sdate <=to_date('2011/12/31','yyyy/mm/dd')
这BT的开发,每天都要重复生成前7天的人员消费表明细和部门月报表明细